1. 程式人生 > 實用技巧 >計算機硬體組成及作業系統

計算機硬體組成及作業系統

上節課內容回顧:

1、什麼是buffer與cache,它們各自的作用是什麼
  linux系統會把記憶體分為兩種區域:
    buffer:緩衝區,攢一大波資料,再刷入硬碟
    cache:快取,把硬碟的資料在記憶體中快取好,cpu取的時候可以直接從記憶體取

2、什麼是核心態與使用者態
  核心態——>作業系統正在控制硬體
  使用者態-->應用程式正在執行

3、機械磁碟的IO延遲時間=平均尋道時間4ms+平均延遲時間5ms
4、一個7200轉的硬碟帶來的IO延遲大概是9ms
5、作業系統的啟動流程是什麼?
  1、計算機加電
  2、啟動BIOS(計算機啟動一定會先啟動bios系統),掃描啟動裝置,從某一個啟動裝置中找到作業系統
  3、讀取啟動裝置的第一個扇區的大小(稱之為主引導記錄mbr)
    446 bootloader=》grub程式
    64分割槽資訊
    2結束標誌位

  4、grub程式負責將作業系統核心裝載入記憶體,啟動作業系統
  5、作業系統會讓BIOS去檢測驅動程式


6、如何防止伺服器斷電?
   1.選雙電源機房。雙電源接通到ups裝置上。
   2.機房應該配備ups。

   3.配備小型柴油發電機

  詳見:https://zhidao.baidu.com/question/580332078.html

  ups解釋詞:https://zhidao.baidu.com/question/24791206.html

7,、虛擬記憶體:

使計算機可以執行大於實體記憶體的程式,暫時不需要執行的程式放到磁碟的某塊地方,這塊地方成為虛擬記憶體,一般在特殊緊急情況下使用,保命為主,在linux中稱為swap。

今日內容

一、硬碟介面   IDE並口   SATA串列埠===》現在常用   SCSI ======》現在常用   SAS(SATA+SCSI)   光纖通道   SSD+SAS=================》土豪   SSD+SATA=================》常規,對速度有特殊要求   機械硬碟+SAS==============》常規,比較核心業務使用,對速度要求常規   機械硬碟+SATA==============》內部服務 # raid=》"硬碟的叢集"   多塊硬碟要連線到RAID卡(陣列卡)上:   然後製作raid      raid0     至少1塊盤           容量:n塊盤何在一起的總容量     效能:理論上是N塊盤合在在一起的讀寫速度,實際上是要略低一些     冗餘性:不允許壞任何一塊盤     場合:追求讀寫效能,但是對資料安全性沒有啥要求,列如叢集伺服器     特點:追求速度,不考慮資料安全        raid1     至少2塊盤     容量:1快盤的容量     效能:幾乎就是一塊盤的讀寫速度     冗餘性:可以壞一塊盤,另外一塊盤有完整的資料     場合:對資料安全有要求,對速度讀寫速度沒有特殊要求,列如伺服器的系統盤     特點:追求資料安全,不考慮速度   raid5(介於raid0和raid1之間,是一種折中的方案)     至少3塊盤,兩兩之間做校驗===》異或運算,相同結果為0,不同結果為1     容量:廢掉一塊盤的容量,等量盤的情況下,容量低於raid0     效能:讀寫速度低於raid0,高於raid1     冗餘性:可以壞一塊盤,其餘兩塊盤可以通過奇偶校驗推匯出壞盤的資料     場合:一般的場合都可以用   raid10     至少4塊盤     raid1和raid0之間整合的產物,兼顧了raid1和raid0的效能,但是成本大幅度提升     通常用於資料庫伺服器
硬碟的容量單位:
    1B
=8Bit //位元組(B、Byte) 1kB=1024B //千位元組(KB、kilobyte) 1MB=1024KB //兆位元組(MB,MegaByte) 1GB=1024MB //吉位元組(GB,Gigabyte) 1TB=1024GB //太位元組(TB,TeraByte) 1PB=1024TB //拍位元組(PB,PetaByte) 1EB=1024PB //艾位元組(EB,Exabyte) 1ZB=1024EB //澤位元組(ZB,ZettaByte) 1YB=1024 ZB //堯位元組(YB、YottaByte) 1BB=1024YB //BB(BrontoByte) 1NB
=1024BB //NB (NonaByte) 1DB=1024NB //DB (doggaByte)

  優化的基本原則

    1.針對讀操作,資料能從記憶體取就不要從硬碟

    2.針對寫操作,在記憶體中攢一波在寫入硬碟

二、作業系統(瞭解)

  前言:

    作業系統最核心的概念就是程序

    程序指的就是一個程式的執行過程,具體來說指的是作業系統控制硬體來執行的過程

  第二代計算機

    批處理系統

      一次把一個或者一道程式讀入記憶體,執行完畢後,在執行下一個程式沒有並行,稱之為序列

    優點:

      1.充分利用了計算機資源

    缺點:

      1.讓程式設計師明顯感覺到等待

      2.程式的執行是序列

      3.整個過程都是人蔘與的

  第三代計算機(***)

    併發:多個任務看起來是同時執行

    序列:多個任務是一個執行完畢後在執行下一個

    多道技術==》併發

      1.空間上的複用:多道程式在執行前先必須載入到記憶體中

      2.時間上的複用:多個任務複用湊的時間片,通俗的講就是CPU在多個程式之間來回切換  

      什麼時候切換呢?
        I:當一個任務遇到IO,肯定要切換-》提升效率
        II:一個任務沒有遇到IO但是佔用CPU時間過長,也要切換=》降低效率



      ps:多個程序的記憶體空間是互相隔離的,而且是物理隔離

      分時作業系統CTTS:多使用者多工
        應用多道技術來實現多個任務的併發的執行