華南理工大學2013級計科一班作業系統實驗
實驗一:程序和執行緒的建立
1. 在linux下編寫一個應用程式,命名為an_ch2_1b。這個程式不斷地輸出如下行:
Those output come from child,[系統時間]
另外寫一個應用程式,命名為an_ch2_1a。這個程式建立一個子程序,執行an_ch2_1b。這個程式不斷地輸出如下行:
Those output come from child,[系統時間]
觀察程式執行的結果,並對你看到的現象進行解釋。
這個是an_ch2_1a.cpp
#include <iostream> #include <unistd.h> #include <cstdio> #include <sys/types.h> #include <stdlib.h> using namespace std; int main() { time_t now; tm * timenow; pid_t pid; pid = fork(); if(pid==-1){ cout<<"fail to create"<<endl; } else if(pid==0){ system("./an_ch2_1b"); } } 寫完之後儲存,命令列輸入:g++ -o aaa an_ch2_1a.cpp 進行編譯。生成可執行檔案aaa。 這個是an_ch2_1b.cpp
#include <iostream> #include <cstdio> #include <sys/types.h> #include <unistd.h> #include <time.h> using namespace std; int main() { time_t now; tm * timenow; while(true){ time(&now); timenow = localtime(&now); cout<<"Those output come from child,"<<asctime(timenow)<<endl; } }
寫完之後儲存,命令列輸入:g++ -o an_ch2_1b an_ch2_1b.cpp
進行編譯。生成可執行檔案an_ch2_1b
<pre name="code" class="cpp"><pre name="code" class="cpp">在命令列輸入:./an_ch2_1b
執行an_ch2_1b
在命令列輸入:./aaa 執行aaa
kill掉當前程序是ctrl+c
2.
#include <stdio.h> #include <sys/types.h> #include <unistd.h> #include <pthread.h> int share_var=0; void * son(void * arg) { while(1){ share_var--; printf("in the son share_var:%d\n",share_var); usleep(1000); } } int main() { pthread_t pt; int ret; ret=pthread_create(&pt,NULL,(void*)son,NULL); if(ret!=0){ printf("create fail\n"); } while(1){ share_var++; printf("in the main shaer-var:%d\n",share_var); usleep(1000); } pthread_join(pt,NULL); }
相關推薦
華南理工大學2013級計科一班作業系統實驗
實驗一:程序和執行緒的建立 1. 在linux下編寫一個應用程式,命名為an_ch2_1b。這個程式不斷地輸出如下行: Those output come from child,[系統時間] 另外寫一個應用程式,命名為an_ch2_1a。這個程式建立一個子程序,執行an_c
東華理工18級計科五班團隊作業二
-- Deadline: 2018-11-04 23:00 pm -- 第五次作業 1. 關於評分: 有覺得不妥的可以留言提出。 -- 第五次
東華理工18級計科五班團隊作業六
-- Deadline: 2018-12-14 23:00 pm -- 第九次作業 關於評分: 有覺得不妥的可以留言提出。
東華理工18級計科五班團隊作業五
-- Deadline: 2018-12-07 23:00 pm -- 第八次作業 關於評分: 有覺得不妥的可以留言提出。
東華理工18級計科五班團隊作業四
-- Deadline: 2018-11-30 23:00 pm -- 第七次作業 關於評分: 有覺得不妥的可以留言提出。
2018年計科五班秋季C語言基礎課第1次作業
學習效率 span https 一個 ref 又一 logs 寫博客 效率 ---恢復內容開始--- 1、翻閱鄒欣老師博客關於師生關系博客,並回答下列問題: (1)大學和高中最大的不同是沒有人天天看著你,請看大學理想的師生關系是?有何感想? 答:我認為是鄒欣老師說的健身教練
7-3 jmu-Java-02基本語法-03-身份證排序 (15 分)計科其他班的題
7-3 jmu-Java-02基本語法-03-身份證排序 (15 分) 輸入n,然後連續輸入n個身份證號。 然後根據輸入的是sort1還是sort2,執行不同的功能。輸入的不是sort1或sort2,則輸出exit並退出。 輸入sort1,將每個身份證的年月日抽取出來,按年-月-日格式組裝,
7-1 jmu-Java-03面向物件基礎-04-形狀-繼承 (10 分)計科其他班的題
前言 前面題目形狀中我們看到,為了輸出所有形狀的周長與面積,需要建立多個數組進行多次迴圈。這次試驗使用繼承與多型來改進我們的設計。 本題描述: 定義抽象類Shape 屬性:不可變靜態常量double PI,值為3.14, 抽象方法:public double getPerimet
2013級C++第12周(春)項目——成員的訪問屬性、多重繼承
更新 日期 報告 時間 上下 cin out 讀取 edate 課程首頁在:http://blog.csdn.net/sxhelijian/article/details/11890759,內有完整教學方案及資源鏈接第一部分 程序閱讀 1、閱讀程序。分析類中成員的訪問屬性
java高級工程師(一)
jsb http協議 html tel url 實現負載均衡 為什麽 行為 get 一、無筆試題 不知道是不是職位原因還是沒遇到,面試時,都不需要做筆試題,而是填張個人信息表格,或者直接面試 二、三大框架方面問題 1、Spring 事務的隔離性,並說說每個
Unix環境高級編程(一)文件I/O
argc 緩沖 png body 定位 creat desc printf tde Unix系統中大多數文件I/O只需用到五個函數:open、read、write、lseek、close。本章說介紹的I/O是不帶緩沖的,即:每個read和write都調用內核中的一個系統
2018華南理工大學程序設計競賽 H-對稱與反對稱
對稱 pos print 其中 數據 string long IT 競賽 H-對稱與反對稱 題目描述 給出一個N*N的方陣A。構造方陣B,C: 使得A = B + C.其中 B為對稱矩陣,C為反對稱矩陣。 對於方陣S中的任意元素,若(S)ij = (S)ji,則稱S為對稱
Lync Server 2013 共享PPT經過一段時間報演示錯誤(ID32402、61045)
PPT共享報錯 32403 61045 Lync共享PPT報錯 嘗試在Windows Server 2012 R2 上安裝Lync 2013前端服務器,發現所有版本 Lync客戶端不能參加會議通過 Lync Server 2013 或 Lync Server 2010 中的會議形式。並且統一聯
JAVA高級開發面試一(ZX)
正則表達式 算法 con 類圖 person 筆試 靜態 字母數 字符 筆試: 1、正則表達式,第一個字符為字母其他為字母數字下劃線,最大長度為5-20範圍內;^[a-zA-Z]\w{4,19} 2、代碼塊加載順序;父靜態屬性->父靜態代碼塊->子靜態屬性-&g
入門一班 20181031 rsync
10月31日任務 10.28 rsync工具介紹10.29/10.30 rsync常用選項10.31 rsync通過ssh同步 Linux檔案同步工具 rsync 非常實用和重要的一個工具。在日常的運維工作中每天都要用到。傳輸檔案從A到B,備份到遠端的資料等都會使用到這個工具。 不僅僅可
入門一班20181101 rsync syslog screen
11月1日任務 10.32/10.33 rsync通過服務同步10.34 linux系統日誌10.35 screen工具擴充套件1. Linux日誌檔案總管logrotate http://linux.cn/article-4126-1.html2. xargs用法詳解 http://blog.csd
入門一班20181019 awk
9.6/9.7 awk awk awk相對於sed 更方便的功能是支援了分段。 awk不會更改檔案的內容 最簡單的一種用法,以某種分隔符來分割後,取第幾部分打印出來。 awk -F ':' '{print $1}' passwd -F 分隔符 {$1 第一
入門一班 20181017 sed
10月17日任務 10月17日任務9.4/9.5 sed sed -n '/關鍵字/'p 檔名 sed -n ‘數字’p 檔名 就是列印第數字行的那一行內容 注意以上的區別,有/ /的是關鍵字 不帶/ / 的是行號 有一個例題: 例如:有個檔案test的
入門一班 20181113 php5 install php7 install
11月13日任務 11.10/11.11/11.12 安裝PHP511.13 安裝PHP7php中mysql,mysqli,mysqlnd,pdo到底是什麼 http://blog.csdn.net/u013785951/article/details/60876816檢視編譯引數 http://as
入門一班 20181114
11月14日任務 11.14/11.15 Apache和PHP結合11.16/11.17 Apache預設虛擬主機 1. 首先看一下: 這是個警告,雖然並非錯誤但是可以取消掉。辦法就是去定義好 servername vim /usr/local/apache2/co