freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

山東大學(xué)操作系統(tǒng)實(shí)驗(yàn)報(bào)告4進(jìn)程同步實(shí)驗(yàn)-資料下載頁

2025-07-21 17:34本頁面
  

【正文】 return msq_id。} 實(shí)驗(yàn)結(jié)果:分析:多進(jìn)程的系統(tǒng)中避免不了進(jìn)程間的相互關(guān)系。進(jìn)程互斥是進(jìn)程之間發(fā)生的一種間接性作用,一般是程序不希望的。通常的情況是兩個(gè)或兩個(gè)以上的進(jìn)程需要同時(shí)訪問某個(gè)共享變量。我們一般將發(fā)生能夠問共享變量的程序段稱為臨界區(qū)。兩個(gè)進(jìn)程不能同時(shí)進(jìn)入臨界區(qū),否則就會(huì)導(dǎo)致數(shù)據(jù)的不一致,產(chǎn)生與時(shí)間有關(guān)的錯(cuò)誤。解決互斥問題應(yīng)該滿足互斥和公平兩個(gè)原則,即任意時(shí)刻只能允許一個(gè)進(jìn)程處于同一共享變量的臨界區(qū),而且不能讓任一進(jìn)程無限期地等待。進(jìn)程同步是進(jìn)程之間直接的相互作用,是合作進(jìn)程間有意識(shí)的行為,典型的例子是公共汽車上司機(jī)與售票員的合作。只有當(dāng)售票員關(guān)門之后司機(jī)才能啟動(dòng)車輛,只有司機(jī)停車之后售票員才能開車門。司機(jī)和售票員的行動(dòng)需要一定的協(xié)調(diào)。同樣地,兩個(gè)進(jìn)程之間有時(shí)也有這樣的依賴關(guān)系,因此我們也要有一定的同步機(jī)制保證它們的執(zhí)行次序。 信號(hào)量機(jī)制就是其中的一種。信號(hào)燈機(jī)制即利用pv操作來對(duì)信號(hào)量進(jìn)行處理。PV操作由P操作原語和V操作原語組成(原語是不可中斷的過程),對(duì)信號(hào)量進(jìn)行操作,具體定義如下: P(S):①將信號(hào)量S的值減1,即S=S1; ②如果S179。0,則該進(jìn)程繼續(xù)執(zhí)行;否則該進(jìn)程置為等待狀態(tài),排入等待隊(duì)列。 V(S):①將信號(hào)量S的值加1,即S=S+1; ②如果S0,則該進(jìn)程繼續(xù)執(zhí)行;否則釋放隊(duì)列中第一個(gè)等待信號(hào)量的進(jìn)程。PV操作的意義:我們用信號(hào)量及PV操作來實(shí)現(xiàn)進(jìn)程的同步和互斥。信號(hào)量的數(shù)據(jù)結(jié)構(gòu)為一個(gè)值和一個(gè)指針,指針指向等待該信號(hào)量的下一個(gè)進(jìn)程。信號(hào)量的值與相應(yīng)資源的使用情況有關(guān)。當(dāng)它的值大于0時(shí),表示當(dāng)前可用資源的數(shù)量;當(dāng)它的值小于0時(shí),其絕對(duì)值表示等待使用該資源的進(jìn)程個(gè)數(shù)。信號(hào)量的值僅能由PV操作來改變。一般來說,信號(hào)量S30時(shí),S表示可用資源的數(shù)量。執(zhí)行一次P操作意味著請(qǐng)求分配一個(gè)單位資源,因此S的值減1;當(dāng)S0時(shí),表示已經(jīng)沒有可用資源,請(qǐng)求者必須等待別的進(jìn)程釋放該類資源,它才能運(yùn)行下去。而執(zhí)行一個(gè)V操作意味著釋放一個(gè)單位資源,因此S的值加1;若S£0,表示有某些進(jìn)程正在等待該資源,因此要喚醒一個(gè)等待狀態(tài)的進(jìn)程,使之運(yùn)行下去。使用多于 4 個(gè)的生產(chǎn)者和消費(fèi)者,以各種不同的啟動(dòng)順序、不同的執(zhí)行速率檢測(cè)以上示例程序和獨(dú)立實(shí)驗(yàn)程序也能滿足同步的要求。因?yàn)槭褂眯盘?hào)量滿足進(jìn)程互斥的要求,任意時(shí)刻進(jìn)入臨界區(qū)的進(jìn)程只有一個(gè)。而進(jìn)程是通過信號(hào)量喚醒阻塞進(jìn)程,依然可以實(shí)現(xiàn)進(jìn)程同步。調(diào)試過程中遇到的主要問題及解決過程:(1)在修改程序時(shí),最開始使用了read()、schedual()、lock(),但是編譯出現(xiàn)錯(cuò)誤。解決方法:使用sleep()函數(shù)。(2)exit()缺少頭文件。解決方法:加頭文件include。(3)sleep()等linux系統(tǒng)調(diào)用缺少頭文件。解決方法:加頭文件include體會(huì)和收獲:經(jīng)過本次實(shí)驗(yàn),初步了解操作系統(tǒng)的進(jìn)程同步的過程。我對(duì)生產(chǎn)者消費(fèi)者問題的解決辦法有了更全面的認(rèn)識(shí),同時(shí)對(duì)調(diào)試代碼更加熟練。本次實(shí)驗(yàn)最大的體會(huì)就是,做東西要細(xì)心,在寫代碼的過程中,稍不留意就給后期調(diào)試工作帶來很多問題。
點(diǎn)擊復(fù)制文檔內(nèi)容
規(guī)章制度相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1