tft每日頭條

 > 知識

 > 華北電力大學計算機專業考研專業課複習,手把手教你考研複習

華北電力大學計算機專業考研專業課複習,手把手教你考研複習

知識 更新时间:2024-08-10 19:07:09

  進程的基本概念為了提高計算機系統中各種資源的利用率,現代操作系統廣泛采用多道程序技術(multi-programming),使多個程序同時在系統中存在并運行。描述進程的數據結構——進程控制塊(PCB)一個進程應該包括:程序的代碼;程序的數據;PC中的值,用來指示下一條将運行的指令;一組通用的寄存器的當前值,堆、棧;一組系統資源(如打開的文件)程序是文本,是語句的描述(靜态)進程是運行中的程序,含有上下文信息(動态)結構特征:程序段、相關的數據段、PCB構成了進程實體動态性:進程是進程實體的一次執行,進程的狀态總是在變化,PCB的内容總是在變化并發性:多個進程實體,同存于内存中,能在一段時間内同時運行(宏觀上)獨立性:獨立運行和資源調度的基本單位。每個進程都有“自己”的PC和内部狀态,運行時獨立于其他的進程(邏輯PC和物理PC)異步性:以各自獨立的、不可預知的速度向前推進

  進程的控制Running運行 Blocked阻塞 Ready就緒進程的三種基本狀态1) 就緒(Ready)狀态:進程一旦獲得CPU就可以投入運行的狀态2) 執行狀态:進程獲得CPU正在運行的狀态3) 阻塞狀态:進程由于等待資源或某個事件的發生而暫停執行的狀态運行à阻塞等待I/O的結果等待某一進程提供輸入運行à就緒運行進程用完了時間片運行進程被中斷,因為一高優先級進程處于就緒狀态就緒 à 運行調度程序選擇一個新的進程運行阻塞 à就緒當所等待的事件發生時

  進程同步兩個進程使用相同的一個共享一個資源(如共享文件,打印機等)引出進程同步問題。進程在運行過程中所做的工作分為兩類:内部計算(不會導緻競争條件)對共享内存或共享文件的訪問(可能導緻競争條件)我們把完成第二類工作的程序稱為“臨界區”,把需要互斥訪問的共享資源稱為“臨界資源”。如果我們能設計出某種方法,使得任何兩個進程都不會同時出現在臨界區中,就可以避免競争條件的出現。由Dijkstra把整型信号量定義為一個整型量,除初始化外,僅能通過兩個标準的原子操作(Atomic Operation) wait(S)和signal(S)來訪問。這兩個操作一直被分别稱為P、V操作。wait(S): while S≤0 do no-op S:=S-1;signal(S): S:=S+1;

  經典的進程同步互斥問題4.1有3個客戶在某天的日常生活中使用了某個 ATM 自動取款機。假設他們對 ATM 的使用順序是 a 到來,a 進入, b 到來, c 到來, a 離開,b 進入, b 離開, c 進入, c 離開。4.2某閱覽室,最多可容納100名讀者同時閱覽,當閱覽室中少于100名讀者時,閱覽室外等候的讀者可以立即進入,否則需要在外面等待。每個讀者可看成一個進程。semaphore seats;seats.value=100;while(閱覽時間){wait(seats);進入閱覽室;閱讀;離開閱覽室;signal(seats);}4.3司機與售票員while(上班時間){發動汽車;正常運行;到站停車;}while(上班時間){關閉車門;售票;打開車門;}4.4兩個并發進程的讀寫設有一個緩沖區buffer,大小為一個字節(如圖)。Compute進程不斷産生字符,送buffer,Print進程從buffer中取出字符打印。如不加控制,會出現多種打印結果,這取決于這兩個進程運行的相對速度。在這衆多的打印結果中,隻有Compute和Print進程的運行剛好匹配的一種是正确的,其它均為錯誤。semaphore S_Empty; // 緩沖區是否為空,初值為1semaphore S_Full; // 是否有數據寫入,初值為0while(計算未完成){ P(S_Empty);Write_Data( );V(S_Full);}Computewhile(打印未完成){P(S_Full); Print_Data( ); V(S_Empty);}Print4.5有一個倉庫,可以存放A和B 兩種産品。要求:1)每次隻能存入一種産品(A或B);2)-N

  進程通信低級通信:隻能傳遞狀态和整數值(控制信息),包括用來實現進程同步和互斥的信号量和管程機制。優點是速度快。缺點是:傳送信息量小:每次通信傳遞的信息量固定,若需要傳遞較多信息,就得進行多次通信。編程複雜:用戶需要直接去實現通信的細節,編程複雜,容易出錯。高級通信:能夠傳送任意數量的數據,包括三類:共享内存、管道、消息。

  線程定義及實現進程當中的一條執行流程叫線程。進程是資源分配單位,線程是CPU調度單位;進程擁有一個完整的資源平台,而線程隻獨享必不可少的資源,如寄存器和棧;線程同樣具有就緒、阻塞和執行三種基本狀态,同樣具有狀态之間的轉換關系;線程 = 輕量級進程(lightweight process)用戶線程:在用戶空間實現,時間片分配給進程;内核線程:在内核中實現,時間片分配給線程;

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关知識资讯推荐

热门知識资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved