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

Slides:



Advertisements
Similar presentations
FD班座谈会 -结合学校目标 找准自己位置-
Advertisements

計算機程式語言實習課.
纳税人学堂课件天地第201509期 高新技术产业税收优惠政策培训 授课老师:周晶 上海市嘉定区国家税务局
用“自言自语法”提高学生 英语口头表达能力 李奉栖.
法國大革命                                                                            
2010年,全世界约有盲人4000万到4500万,低视力者是盲人的3倍,约1.4亿人
中交天津航道局有限公司 党委工作部 陈晓敏 2012年11月5日
权力的行使:需要监督 北京市京源学校 冯 悦.
国际关系的决定因素:国家利益 江苏省震泽中学 丛海啸.
輸出與輸入(I/O).
題目:十六對一多工器 姓名:李國豪 學號:B
Instructor:Po-Yu Kuo 教師:郭柏佑
第二章 Linux基本指令與工具操作 LINUX 按圖施工手冊.
JAVA 程式設計與資料結構 第六章 輸出與輸入.
使用VHDL設計—4位元位移器 通訊一甲 B 楊穎穆.
Java程式概觀.
SQL Stored Procedure SQL 預存程序.
2017 Operating Systems 作業系統實習 助教:陳主恩、林欣穎 實驗室:720A Lab8 1.
2017 Operating Systems 作業系統實習 助教:陳主恩、林欣穎 實驗室:720A Lab10 1.
安裝JDK 安裝Eclipse Eclipse 中文化
12-1 類比/數位(A/D)轉換IC 2018/12/25 第12章 類比/數位(A/D)介面實習.
Echo Server/Client Speaker:Fang.
Quiz6 繳交期限: 12/14(四) 23:59前.
2017 Operating Systems 作業系統實習 助教:陳主恩、林欣穎 實驗室:720A.
連結資料庫管理系統.
雲端計算.
程式設計實習課(四) ----C 函數運用----
表單(Form).
2017 Operating Systems 作業系統實習 助教:陳主恩、林欣穎 實驗室:720A Lab3.
音乐学科简报 第二期 编辑:范正明 杨芳 安徽省中小学幼儿园教师信息技术应用能力提升培训项目 延时符.
Redirection 概念說明 input redirection: 將資料“再”輸入到某一命令去做處理 (用<符號)
雲端計算.
Introduction to C Programming
2018 Operating Systems 作業系統實習 助教:林欣穎 實驗室:720A Lab3.
使用VHDL設計 七段顯示器 通訊工程系 一年甲班 姓名 : 蘇建宇 學號 : B
第一次Labview就上手 參考書籍: LabVIEW for Everyone (Jeffrey Travis/Jim Kring)
Presenter: Chih-Hsun Wang Date: 2015/9/15
基本IO.
如何使用Gene Ontology 網址:
File Input and Output Chap. 11: 施威銘的書 Chap. 7: K&R.
教育概論 答題要訣.
教育部及其他單位專案計畫經費報支作業.
MiRanda Java Interface v1.0的使用方法
隨機數 (亂數) 10後,取餘數 n = rand(); 利用 Code::Block 驗證一下 n = rand() %10; 998
2017 Operating Systems 作業系統實習 助教:陳主恩、林欣穎 實驗室:720A Lab7.
黃影雯副教授講授 E_Mail Address:
2017 Operating Systems 作業系統實習 助教:陳主恩、林欣穎 實驗室:720A Lab11 1.
Chapter 15 檔案存取 LabVIEW中的檔案存取函數也可將程式中的資料儲存成Excel或Word檔。只要將欲存取的檔案路徑位址透過LabVIEW中的路徑元件告訴檔案存取函數後,LabVIEW便可將資料存成Excel或Word檔;當然也可以將Excel或Word檔的資料讀入LabVIEW的程式中。
選擇性結構 if-else… switch-case 重複性結構 while… do-while… for…
教育部及其他單位專案計畫經費報支作業.
程式語言.
使用VHDL設計-8x3編碼電路 通訊一甲 B 楊穎穆.
2018 Operating Systems 作業系統實習 助教:林欣穎 實驗室:720A.
班級:博碩子一甲 授課老師:鐘國家 助教:陳國政
2017 Operating Systems 作業系統實習 助教:陳主恩、林欣穎 實驗室:720A Lab4.
请添加标题 请添加作者.
安裝JDK 配置windows win7 環境變數
作業系統實習課(二) -Scheduler-Related System Calls-
佛山房地产市场周报 2019/4/6-2019/4/12 合富研究院(佛山) 佛山市禅城区祖庙路33号百花广场30楼 室
2019 Operating Systems 作業系統實習 助教:林欣穎 實驗室:720A Lab10 1.
NFC (近場通訊, Near Field Communication) 靜宜大學資管系 楊子青
使用VHDL設計-七段顯示 通訊一甲 B 楊穎穆.
2018 Operating Systems 作業系統實習 助教:林欣穎 實驗室:720A Lab2.
2019 Operating Systems 作業系統實習 助教:林欣穎 實驗室:720A Lab11 1.
Array(陣列) Anny
Unix指令4-文字編輯與程式撰寫.
Lab#9 Serial Port 實驗.
JUDGE GIRL 使用介紹 & 常見問題 TAs :
隨機函數.
InputStreamReader Console Scanner
Presentation transcript:

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

目錄 Contents pipe 介紹 Beaglebone pipe 範例 Beaglebone 實作 Beaglebone

1-1 pipe 介紹 管線命令 (pipe) 功能: 在執行命令列時,有時候會下達多個指令,會取得想要的資料及格式,所以我們會需要將這些指令結合成管線命令,把前一項的輸出結果直接再代入第二個命令。通常用「|」這個符號的表示連結一個命令的輸出與輸入。 舉例: 「 ls | more 」 shell會先執行ls指令,再將ls的輸出結果(standard output,簡稱STDOUT)當作more的輸入(standard input,簡稱STDIN),執行過程如以下的圖:

1-2 pipe 介紹 管線命令 (pipe) 注意: 接在「|」後面的指令必須是要可以接收 STDIN 才行 (ex. more) 管線命令僅處理standard output,會忽略standard error output的訊息,意即僅能接收前一個命令傳送的正確訊息。 standard output 指令大致分為六大類: 擷取命令:cut、grep 排序命令:sort、wc、uniq 雙向重導向:tee 字元轉換命令:tr、col、join、paste、expand 分割命令:split 參數代換:xargs 補充資料:http://linux.vbird.org/linux_basic/0320bash.php#pipe

pipe 介紹 1-3 管線命令 (pipe) 檔案描述符 (file descriptor)、標準輸入輸出 (Standard Input Output) 0:Standard Input (STDIN),預設為鍵盤輸入值 1:Standard Output (STDOUT),預設為終端機螢幕顯示輸出 2:Standard Error (STDERR),預設為終端機螢幕顯示輸出 補充資料:http://inspire-future.blogspot.tw/2016/12/file-descriptor.html https://dotblogs.com.tw/ghoseliang/2013/05/29/105049

2-1 pipe 範例 pipe 範例 1 標頭檔: #include <unistd.h> 參數: int pipe(int fd[2]); 說明: fd[0] 為管道裡的讀取端 fd[1] 為管道裡的寫入端

2-2 pipe 範例 pipe 範例 2 dup & dup2: 功能:複製file descriptor。 dup:返回新的file descriptor (沒有用的file descriptor最小的編號)。 dup2:可以讓用戶指定返回的file descriptor的值,如果需要,則首先接近newfd的值,通常用來重新打開或者重定向一個file descriptor 。 在此程式是讓pipe去取代外部程式的標準輸出(standard output),然後讓主程式用pipe接收。 標頭檔: #include <unistd.h> 函數: int dup(int oldfd); int dup2(int oldfd, int newfd);

實作 參考第一個範例,在parent和child的process各自產生一個1~10的亂數,透過pipe的方式將child裡面的亂數值輸出給parent裡面,並在parent process裡面將兩個亂數值相加在printf出來。 亂數: 標頭檔: #include <time.h> #include <sys/wait.h> 函數: int rand1; srand(seed); //seed->time(0) //seed->time(0)+getpid() rand1 = rand() % RANGE ; Ex. 取 1-10 的亂數 a=(rand() % 10) +1 取 1-100 的亂數 a=(rand() % 100) +1 取 101-1000 的亂數 a=(rand() % 901) +100

Thanks 作業系統實習 Operating Systems