xxxx18一60岁hd中国/日韩女同互慰一区二区/西西人体扒开双腿无遮挡/日韩欧美黄色一级片 - 色护士精品影院www

  • 大小: 267KB
    文件類型: .docx
    金幣: 1
    下載: 0 次
    發布日期: 2023-04-20
  • 語言: C/C++
  • 標簽: ubuntu??

資源簡介

實驗一 Linux系統的安裝及用戶界面的使用 一.實驗目的 1. 了解Linux系統的安裝、熟悉系統的啟動過程和使用環境。 2. 掌握Linux環境下vi編輯器的使用方法。 3. 掌握Linux系統中編輯、編譯、調試、運行一個C語言程序的全過程。 二.實驗內容 1、實驗要求 1. 在VMWare虛擬機環境或真實物理機器上,安裝一個Linux操作系統。 2. 體驗Linux操作系統中X Windows系統的使用。 3. 嘗試Linux系統鍵盤命令的使用,并熟練掌握常用的基本命令。 4. 掌握命令行方式下vi編輯器的使用。 5. 編寫一段C程序,使用系統調用fork()創建兩個子進程。各進程顯示不同的信息,如父進程顯示字符“a”,子進程分別顯示字符“b”和“c”。多次運行觀察顯示結果,并分析產生這種執行效果的原因。 實驗二 Linux進程控制 一.實驗目的 1. 掌握進程的概念,明確進程和程序的區別。 2. 認識和了解并發執行的實質。 二.實驗內容 1、實驗要求 1. 編寫一段程序,使用系統調用fork()創建兩個子進程。各進程顯示不同的信息,如父進程顯示字符“a”,子進程分別顯示字符“b”和“c”。多次運行觀察顯示結果,并分析產生這種執行效果的原因。 2. 修改上面編寫的程序,將每個進程的輸出由單個字符改為循環輸出一句話,如父進程顯示:“parent:”加上進程ID,子進程分別顯示:“Child1:”(或“Child2:”)加上自己的進程ID。再觀察程序執行時屏幕上出現的現象,并分析原因。 3.一個父進程創建一個子進程,子進程通過exec系統調用執行另一個文件。各自的代碼中顯示不同的信息,觀察其運行結果,分析兩個進程并發執行的效果。 4. 編寫程序創建如圖所示的進程樹,在每個進程中顯示當前進程ID和父進程ID。 實驗三 Linux進程間通信 一.實驗目的 (1) 分析進程爭用臨界資源的現象,學習解決進程互斥的方法; (2) 學習如何利用進程的“軟中斷”、管道機制進行進程間的通信,并加深對上述通信機制的理解; (3) 了解系統調用pipe( )、msgget( )、msgsnd( )、msgrcv( )、msgctl( )、shmget( )、shmat( )、shmdt( )、shmctl( )的功能和實現過程,利用共享存儲區機制進行進程間通信。 二、實驗內容 1、實驗要求 (1) 進程的控制 修改已編制的程序,將每個進程輸出一個字符修改為每個進程輸出一句話,再觀察程序執行時屏幕上出現的現象,并分析出現問題的原因,進一步理解各個進程爭奪臨界資源的情況。 如果在程序中使用系統調用locking( )來給每一個進程加鎖,可以實現進程之間的互斥,試觀察并分析出現的現象。 (2) 進程的軟中斷通訊 編制一段程序,實現進程的軟中斷通訊:使用系統調用fork( )創建兩個子進程;再使用系統調用signal( )讓父進程捕捉鍵盤上來的中斷信號(即按Del鍵);在捕捉到中斷信號后,父進程用系統調用kill( )向兩個子進程發信號;子進程捕捉到信號后分別輸出下列信息后終止: Child process1 is killed by parent! Child process2 is killed by parent! 父進程等待兩個子進程都終止以后,輸出如下信息后終止: Parent process in killed! (3) 進程的管道通訊 編制一段程序,實現進程的管道通訊:使用系統調用pipe( )建立一條管道線;兩個子進程分別循環向這條管道寫一句話: Child 1 is sending a message! Child 2 is sending a message! 而父進程則循環從管道中讀出信息,顯示在屏幕上。 實驗報告 內含源代碼

資源截圖

代碼片段和文件信息

評論

共有 條評論