2017 Operating Systems 作業系統實習 助教:陳主恩、林欣穎 實驗室:720A Lab10 1.

Slides:



Advertisements
Similar presentations
大學甄選申請入學 〃備審資料 〃面試. 確認你的追求對象 學校環境概況 系別特質 有無交換學生 未來出路 性質相似的科系要清楚之間的差別 ex: 社會福利學系,社會工作學系, 社會學系.
Advertisements

喜迎 G20 中国 CONTENTS 目 录目 录 1 中国美食 2 中国守护神 美食美食,顾名思义就是美味的食 物,贵的有山珍海味,便宜的 有街边小吃。但是不是所有人 对美食的标准都是一样的,其 实美食是不分贵贱的,只要是 自己喜欢的,就可以称之为美 食。吃前有期待、吃后有回味 的东西。美食遭遇心情的时候,
庄子思想 天地与我并生 万物与我为一 形而上的本体观念 法则、规范、不可思议之事. 庄子作品 极富想象力和浪漫色彩,擅用寓(寄托)言,《史 记》载: “ 其著书十余万言,大抵率寓言也 ” 。 又称《南华经》、《南华真经》 内篇 7 ,外篇 15 ,杂篇 11 《庄子》内容 《逍遥游》《齐物论》《养生主》《人间世》
資源問題與環境保育 第 6 章. 學完本章我能 ……  知道中國土地資源的問題與保育  了解中國水資源的問題與保育  知道中國森林資源的問題與保育  能分析自然環境和人文環境如何影響人類 的生活型態  說舉出全球面臨與關心的課題.
学分制改革为大学英语教学带来的 挑战与机遇 —— 武汉科技大学交流报告. Contents 武汉科技大学外国语学院简介 一 四 我校学分制改革后大学英语教学改革探索 二 学分制改革为大学英语教学带来的挑战 三 学分制改革为大学英语教学带来的机遇.
第二章 中药药性理论的现代研究 掌握中药四性的现代研究 掌握中药五味的现代研究 掌握中药毒性的现代研究 了解中药归经的现代研究.
寓言 何謂寓言? 寓言中的主角選擇 以動物為主角,形象分析—以成語及諺語中來歸納動物形象 以人為主角,形象分析
因为爱,我们让研修果实更香甜 ——阜阳市临泉县小语1班第三期简报 编辑 葛泽付.
第七章 外營力作用 第一節 風化 第二節 崩壞 第三節 侵蝕與堆積.
甘肃小吃 文产二班 陶方 羊肉泡 牛肉面 暖锅.
勿讓權利睡著- 談車禍之損害賠償與消滅時效.
励行“三严三实” 争做新时期“好干部” 专题教育党课 国电内蒙古东胜热电有限公司张殿福 2015年6月.
目 录 探索社会力量参与矛盾化解新模式 创新背景 主要做法 创新亮点 取得成效 杭州市信访局(“12345”)
國小教師檢定經驗分享 分享者:胡瑋婷 現職:國語日報語文中心寫作班教師 閱讀寫作營教材編輯及任課講師 榮獲「教育部教育實習績優獎」全國第三名.
周刊 总第38期 2013年6月1日 本期编辑:翁茜茜 温州滨海学校教科室主办
公務人員 育嬰留職停薪權益.
先秦诸子的性情人生 “语文教材微专题系列研究”之一 复旦附中 李郦.
大學教、職員之法義務規範與法律效果 台南地檢署林仲斌.
第三課 政府的組織、功能與權限 一、內閣制 壹、民主國家的政府體制 二、總統制 三、混合制 四、小結 一、前言 貳、我國的中央政府體制
中央與地方教育權限 第八組 王湘婷 邱淑婷 全 彥 洪英博
Make the dream come true
纳税人学堂课件天地第201509期 高新技术产业税收优惠政策培训 授课老师:周晶 上海市嘉定区国家税务局
Memory Pool ACM Yanqing Peng.
生物化学与养生 化学三班 张震.
盧世欽 律師 鼎禾律師聯合事務所 民國 一○四 年 九 月 十八 日
深入贯彻党的十七届四中全会精神 切实提高全区组织工作科学化水平
福山國小 100學年度 新生家長始業輔導.
关注教师、学生的应用体验 营造实用、高效的数字校园生态环境
2010年,全世界约有盲人4000万到4500万,低视力者是盲人的3倍,约1.4亿人
中交天津航道局有限公司 党委工作部 陈晓敏 2012年11月5日
2016年6月.
解读《全国文化市场技术与服务平台应用规范》
项目办公室.
28 唯一的听众 九年制义务教育课本第十册 Contents 作者:落雪.
Chapter 5 迴圈.
Visual C++ introduction
在NS-2上模擬多個FTP連線,觀察頻寬的變化
2017 Operating Systems 作業系統實習 助教:陳主恩、林欣穎 實驗室:720A Lab8 1.
Methods 靜宜大學資工系 蔡奇偉副教授 ©2011.
2017 Operating Systems 作業系統實習 助教:陳主恩、林欣穎 實驗室:720A.
2017 Operating Systems 作業系統實習 助教:陳主恩、林欣穎 實驗室:720A Lab9 1.
Topic Introduction—RMI
2017 Operating Systems 作業系統實習 助教:陳主恩、林欣穎 實驗室:720A Lab3.
音乐学科简报 第二期 编辑:范正明 杨芳 安徽省中小学幼儿园教师信息技术应用能力提升培训项目 延时符.
義守大學電機工程學系 陳慶瀚 第4章 VHDL Sequential語法 義守大學電機工程學系 陳慶瀚
2017 Operating Systems 作業系統實習 助教:陳主恩、林欣穎 實驗室:720A Lab6.
新个人所得税 相关政策解读.
2018 Operating Systems 作業系統實習 助教:林欣穎 實驗室:720A Lab3.
CH1 我的第一個App與變數宣告.
汕头大学医学院附属肿瘤医院 医务科 药学部 2014年12月
3.5 线程 问题的提出 进程的引入使操作系统得以完成对并发执行的多道程序动态特征的描述和资源共享的管理,因而进程既是调度的基本单位又是资源分配的基本单位。进程所具有的这两个特点构成了程序并发执行的基础,但同时又导致进程切换过程中由于进程映像过大而带来的时空开销。因此,如果系统中创建的进程过多,或进程切换的频率过高,则会使系统效率下降,限制了并发度的进一步提高。
引用檔案.
音乐1 工作坊 学习简报 (第1期) 音乐1坊主: 胡真真 2016年5月.
Pthread.
教育部及其他單位專案計畫經費報支作業.
函數應用(二)與自定函數.
序言 報告內容: 你對父母的感覺 你與父母的關係 你是否與父母同居 你與父母見面的時間 每天與父母的談話時間 與父母談話的內容 結論 感想.
2017 Operating Systems 作業系統實習 助教:陳主恩、林欣穎 實驗室:720A Lab7.
2017 Operating Systems 作業系統實習 助教:陳主恩、林欣穎 實驗室:720A Lab11 1.
教育部及其他單位專案計畫經費報支作業.
2018 Operating Systems 作業系統實習 助教:林欣穎 實驗室:720A.
2017 Operating Systems 作業系統實習 助教:陳主恩、林欣穎 實驗室:720A Lab4.
请添加标题 请添加作者.
作業系統實習課(二) -Scheduler-Related System Calls-
2019 Operating Systems 作業系統實習 助教:林欣穎 實驗室:720A Lab10 1.
2018 Operating Systems 作業系統實習 助教:林欣穎 實驗室:720A Lab2.
2019 Operating Systems 作業系統實習 助教:林欣穎 實驗室:720A Lab11 1.
Chapter 4 Multi-Threads (多執行緒).
2019 Operating Systems 作業系統實習 助教:林欣穎 實驗室:720A Lab7.
JUDGE GIRL 使用介紹 & 常見問題 TAs :
Presentation transcript:

2017 Operating Systems 作業系統實習 助教:陳主恩、林欣穎 實驗室:720A Lab10 1

目錄 Contents 條件變數介紹 Beaglebone 條件變數範例 Beaglebone 實作 Beaglebone 2

1-1 條件變數介紹 條件變數(Condition Variable) 條件變數(Condtion Variable)是在多執行緒程序中用來實現“等待->喚醒”邏輯常用的方法。 Ex: 應用程序A中包含兩個執行緒t1和t2。t1需要在bool變數test_cond為true時才能繼續執行,而test_cond的值是由t2來改變的。 方法: t1在test_cond為false時呼叫cond_wait進行等待,t2在改變test_cond的值後,呼叫cond_signal,喚醒在等待中的t1,告訴t1 test_cond的值變了,這樣t1便可繼續往下執行。 3

1-2 條件變數介紹 條件變數(Condition Variable) 函式宣告: pthread_cond_init (pthread_cond_t *cond, const pthread_condattr_t *attr); 初始化 標頭檔: #include <pthread.h> int pthread_cond_wait (pthread_cond_t *cond, pthread_mutex_t *mutex); 等待某個條件 說明: 鎖定和解除鎖定 cond 變數,採用互斥的方式,同時間內只 有一個Thread 可以鎖定cond,其他的Thread 會被Block 住,和上mutex 不同的是喚醒功能。而且必須依靠Mutex 保護才能使用。 int pthread_cond_timedwait (pthread_cond_t *cond, pthread_mutex_t *mutex, const struct timespec *abstime); 多了一時間參數,過abstime段時間後,即使條件變數不滿足,mutex也被解除 int pthread_cond_signal(pthread_cond_t *cond); 喚醒在wait 同一個條件的中的一個Thread 傳回值: 傳回 0 代表成功,非0 代表失敗 int pthread_cond_broadcast(pthread_cond_t *cond ); 喚醒在wait 同一個條件的中的所有Thread 4

1-3 條件變數介紹 條件變數(Condition Variable) Q. 為什麼要與pthread_mutex 一起使用呢? A. 這是為了應對執行緒1在呼叫pthread_cond_wait()但執行緒1還沒有進入wait cond的狀態的時候,此時執行緒2呼叫了 cond_singal 的情況。 如果不用mutex鎖的話,這個cond_singal就丟失了。加了鎖的情況是,執行緒2必須等到 mutex 被釋放(也就是 pthread_cod_wait() 進入wait_cond狀態 並自動釋放mutex) 的時候才能呼叫cond_singal. 5

條件變數範例 2-1 條件變數程式碼 gcc --std=c99 test1.c -o test1 -lpthread 6

Semaphore 範例 7

實作課本第六章的project2,並抽問問題 (使用附件程式) 8

Thanks 作業系統實習 Operating Systems