操作系統基礎:進程知識筆記(一)

? ? ? ? ? ? ?

進程介紹

進程管理也稱為處理機管理。進程主要是為了解決多道程序批處理系統和分時系統中針對多個并發執行的程序,用來描述系統中執行時動態變化過程。進程屬于自愿分配和獨立運行的基本單位。

1、進程的概念知識

1.1 程序順序執行的特征

程序順序執行的特征:順序性、封閉性和可再現性

1.2 程序并發執行的特征

程序并發執行的特征:失去了程序的封閉性、程序和機器的執行程序活動不再一一對應、并發程序間相互制約性。

2、進程的組成

進程是程序的一次執行,該程序可以和其他程序并發執行。進程由程序、數據、進程控制塊(PCB)組成。

2.1 程序

程序部分描述了進程所需要完成的功能。

2.2 數據

數據部分包括程序執行所需要的數據和工作區域。

2.3 PCB

PCB是進程存在唯一的標識。主要包括進程標識符、狀態、位置信息、控制信息、隊列指針、優先級、現場保護區、其他。

3、進程的狀態及其狀態間的切換

3.1 三態模型

進程分為三種基本狀態:

運行:在處理機上運行。

就緒:獲得了除處理機外的一切所需資源,一旦得到處理機就能運行。

阻塞:等待或睡眠狀態,屬于暫時停止執行狀態。

? ? ? ? ? ? ?

3.2 五態模型

五態模型是在三態模型的基礎上增加了新建狀態、終止狀態。

? ? ? ? ? ? ?

4、進程控制

進程控制就是對系統中所有進程整個生命周期的有效控制。

操作系統控制機構功能主要包括:創建一個進程、撤銷一個已完成的進程、改變進程的狀態、實現進程間的通信。

5、進程間的通信

在多道程序環境的系統中存在多個可以并發執行的進程,進程間必然存在資源共享、互相合作的問題。需要通過進程通信實現進程間的信息交換。

5.1 進程的同步與互斥

1、進程的同步:系統中一些需要相互合作,協調工作的進程,這樣的相互聯系稱為進程的同步。

2、進程的互斥:指系統中多個進程因爭用臨界資源而相互執行。

臨界資源:多道程序系統環境中,各進程可以共享各類資源,但有些資源一次只能提供一個進程使用。比如打印機等。

3、臨界區管理的原則

臨界區:是進程中對臨界資源實施操作的那段程序。有以下4條原則:有空即進、無空則等、有限等待、讓權等待。

5.2 信號量機制

信號量機制是一種有效的進程同步與互斥工具。主要有整型信號量、記錄型信號量、信號量集機制。

5.3 高級通信原語

根據交換信息量的多少和效率高度,進程的通信方式分為低級方式和高級方式。PV操作屬于低級通信方式。

采用PV操作實現進程間的通信存在以下問題:編程難度大、通信對用戶不透明、使用不當容易引起死鎖;效率低生產者每次只能向緩沖區放一個消息、消費者只能從緩沖區取一個消息。

高級通信方式:共享存儲模式、消息傳遞模式、管道通信。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/271483.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/271483.shtml
英文地址,請注明出處:http://en.pswp.cn/news/271483.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

ngod規范_NGOD的架構說明與比較

下一代視頻點播服務(NGOD)的架構說明與比較目錄1ISA和NGOD的誕生背景......................................................................................21.1為什么要運營商制定標準?...................................................................2…

計算機電子琴彈奏怎么打開,怎么打開電腦鍵盤電子琴軟件

五、使用對話框中的快捷鍵   目的快捷鍵   取消當前任務 ESC   如果當前控件是個按鈕,要   單擊該按鈕或者如果當前控   件是個復選框,要選擇或清   除該復選框或者如果當前控   件是個選項按鈕,要單擊該   選項空格鍵   單…

JVM——三個ClassLoader詳解

類裝載工作由ClassLoader及其子類負責,ClassLoader是一個重要的Java執行時系統組件,它負責在運行時查找和裝入Class字節碼文件。JVM在運行時會產生三個ClassLoader:根裝載器、ExtClassLoader(擴展類裝載器)和AppClassL…

c++頭文件_51單片機C語言編程知多少:幾人不知頭文件,你要的干貨在這里了

近期寫了一些比較大的單片機程序,找了很多參考資料,看了大量別人的程序。我從中發現了自己對于C語言編程還只是知道如何實現功能,但對編程規范掌握的不好,編程習慣也沒有很好的養成。學了這么久的單片機,還真是挺難為情…

最常問的MySQL面試題集合

除了基礎題部分,本文還收集整理的MySQL面試題還包括如下知識點或題型:MySQL高性能索引SQL語句MySQL查詢優化MySQL高擴展高可用MySQL安全性問題1:char、varchar的區別是什么?varchar是變長而char的長度是固定的。如果你的內容是固定…

計算機打印機共享失敗,局域網共享打印機連接失敗怎么辦

在局域網中由于辦公需要,經常要連接網絡打印機,但是有時候就無法連接,提示各種連接失敗,下面是學習啦小編給大家整理的一些有關局域網共享打印機連接失敗的解決方法,希望對大家有幫助!局域網共享打印機連接失敗的解決方…

高斯模糊java代碼_OpenCV3 Java圖形圖像上的高斯模糊(Imgproc.GaussianBlur)

代碼案例:package com.what21.opencv.demo;import org.opencv.core.Core;import org.opencv.core.Mat;import org.opencv.core.Size;import org.opencv.imgcodecs.Imgcodecs;import org.opencv.imgproc.Imgproc;public class GaussianBlur {public static void main…

實時數據集成

企業應用集成 面向服務的體系結構 (SOA) 目前應該是一個很受歡迎的名詞,中間件技術人員幾乎到了言必稱SOA的程度,數據集成當然也不例外,在Oracle openworld2008大會上,就推出了一堆數據集成的專場演講,其中和SOA結合最…

idea 中代碼大小寫切換快捷鍵

idea用使用 CTRL SHIFT U 使用前: 使用后:

nginx做服務器入口_Nginx實現http反向代理

什么是反向代理?反向代理(Reverse Proxy)方式是指以代理服務器來接受internet上的連接請求,然后將請求轉發給內部網絡上的服務器,并將從服務器上得到的結果返回給internet上請求連接的客戶端,此時代理服務器…

操作系統基礎:進程知識筆記(二)

一、管程 1、管道概念概念 管道是用于連接一個讀進程和一個寫進程。用來實現它們之間通信的共享文件。 2、管程的概念 管程是由一些共享數據、一組能為并發進程所執行的作用在共享數據上的操作集合、初始代碼、以及存取權組成。管程提供了一種可以允許多線程安全、有效地共享抽…

怎樣保護計算機連接線,一根網線把電腦燒了:雷雨天如何保護家電?

記得在小時候,每逢遇到雷雨天氣,爸媽總會讓我們關掉電視機、電腦等家電,雖然很不情愿,但為了避免電器遭受雷擊造成損壞,我們還是會照做。現在長大了,除了知其然,還更要知其所以然,那…

HDU5697 刷題計劃 dp+最小乘積生成樹

分析:就是不斷遞歸尋找靠近邊界的最優解 學習博客(必須先看這個): 1:http://www.cnblogs.com/autsky-jadek/p/3959446.html 2:http://blog.csdn.net/u013849646/article/details/51524748 注:這…

pos加盟申請php_ThinkPHP萬能表單程序源碼 報名預約加盟申請調查表單程序源碼

平臺聲明:本商品由平臺商家發布,如果本商品源碼侵犯了您的利益請在上方價格右側或聯系平臺客服舉報。微信表單-實現各行業的報名、預約、加盟申請、問卷調查等應用01.自定義表單模型(自定義字段支持字符串、數字、單選、多選、下拉、日歷、時間、郵件、省…

分析Java中的三種不同變量的區別

1、首先分析Java中的三種不同變量的區別,如下表所示 概念默認值其他類變量 也叫靜態變量,是類中獨立于方法之外的變量 用static 修飾 有默認初始值,系統自動初始化。 如boolean默認為false. 可以被public,protect,pr…

分享我常用的5個免費的在線 SQL 數據庫環境,簡直太方便了!

大今天給大家分享幾個在線的免費 SQL 運行環境,也就是在線數據庫。這些網站可以幫助我們快速運行一些 SQL 語句的測試或者驗證,同時還可以在網絡上進行分享,關鍵不需要自己安裝數據庫。SQL FiddleSQL Fiddle 提供了 MySQL、Oracle、PostgreSQ…

python刷題用leet_GitHub - Yolymaker/leetcode-python: 利用python分類刷leetcode題目

leetcode分類高效刷題 leetcode是一個很好的學習算法的一個online judge的網站,通過刷題能夠快速提升自己的算法能力。但是令大家都頭疼的就是,怎么能夠高效的通過leetcode刷題掌握算法的做題技巧,并且順利通過面試。 刷題的時候千萬不要懷疑…

36歲 計算機博士,36歲考博士

博士生在學習期間,須在國內外核心期刊上正式發表與學位論文緊密相關(構成學位論文的主要組成部分)的學術論文且積分必須在6分(含6分)以上方可申請授予學位。以上發表的論文應以**大學商學院為第一署名單位,博士生為第一作者或導師為第一作者、博士生為第…

OPTIMIZE TABLE

INNODB 不支持mysql> OPTIMIZE TABLE t; ----------------------------------------------------------------------------------------------- | Table | Op | Msg_type | Msg_text | ------------------…