2018-06-30shell
1.進程:對正在運行的程序的一個抽象緩存
2.一個進程就是一個正在執行的程序的實例性能
3.快速的切換稱爲:多道程序設計操作系統
4.一個進程是某種類型的一個活動,它有程序,輸入,輸出,以及狀態命令行
5..四種主要的事件會致使進程的建立線程
系統初始化設計
正在運行的程序執行了建立進程的系統調用進程
用戶請求建立一個新進程事件
一個批處理做業的初試化內存
6.停留在後臺進程的稱爲守護進程
7.shell中鍵入sort就能夠建立進程了
8.內存通常使用寫時複製的方法進行內存共享
9.進程的終止
正常退出
出錯退出
嚴重錯誤
10.調用exit來結束進程
11.進程掛起的緣由
程序自身固有的緣由,在鍵入用戶命令行以前,沒法執行命令
由系統技術上的緣由引發的,沒有足夠的CPU
12.進程的三種狀態:
運行態
阻塞態 :pause
就緒態
13.操做系統的最低層是調度程序,上面有不少的進程
14.進程表->進程表項->包括了進程狀態的重要信息->進程管理,文件管理,存儲管理
15.與每個I/O類關聯的是一個稱做中斷向量的位置
16.全部的中斷都是從保存寄存器開始
17.CPU的利用率:1-p^n (n稱爲多道程序設計的道數)
18.建立線程的緣由:
有了這樣的抽象,將不用再考慮中斷,定時器和上下文切換(進程切換)
線程比進程更輕量,更容易建立,也更容易撤銷
涉及性能方面的討論
19.線程:並行實體共享同一個地址空間和全部可用數據的能力
20.高速緩存
21.有限狀態機:每一個計算機都有一個被保存的狀態,存在一個會發生且使得相關狀態發生改變的事件集合
22.只有當系統調用只阻塞調用線程而不是阻礙這個進程時
23臨界區域:把對共享內存進行訪問的程序片斷稱做臨界區域
24.忙等待的互斥:
屏蔽中斷
鎖變量
嚴格輪換法
Peterson解法
25.生產者-消費者問題(有界緩衝區問題)
有可能會出現競爭問題:
緣由:未對count的訪問未加限制
其實看不太懂,首先,爲何wakeup信號丟失就會致使這麼嚴重的問題
修改規則:加上一個喚醒等待位
26.