資源簡介
實驗目的
Linux操作系統中shell是用戶與系統內核溝通的中介,它為用戶使用操作系統的服務提供了一個命令界面。用戶在shell提示符($或#)下輸入的每一個命令都由shell先解釋,然后傳給內核執行。本實驗要求用C語言編寫一個簡單的shell程序,希望達到以下目的:
? 用C語言編寫清晰易讀、設計優良的程序,并附有詳細的文檔。
? 熟悉使用Linux下的軟件開發工具,例如gcc、gdb和make。
? 在編寫系統應用程序時熟練使用man幫助手冊。
? 學習使用POSIX/UNIX系統調用、對進程進行管理和完成進程之間的通信,例如使用信號和管道進行進程間通信。
? 理解并發程序中的同步問題。
? 鍛煉在團隊成員之間的交流與合作能力。
2. 實驗要求
1. ysh解釋程序的重要特征
本實驗要實現一個簡單的命令解釋器,也就是Linux中的shell程序。實驗程序起名為ysh,要求其設計類似于目前流行的shell解釋程序,如bash、csh、tcsh,但不需要具備那么復雜的功能。ysh程序應當具有如下一些重要的特征:
? 能夠執行外部程序命令,命令可以帶參數。 . 。
? 能夠執行fg、bg、cd、history、exit等內部命令。
? 使用管道和輸入輸出重定向。
? 支持前后臺作業,提供作業控制功能,包括打印作業的清單,改變當前運行作業的前臺/后臺狀態,以及控制作業的掛起、中止和繼續運行。
除此之外,在這個實驗中還須做到:
? 使用make工具建立工程。
? 使用調試器gdb來調試程序。
? 提供清晰、詳細的設計文檔和解決方案。
代碼片段和文件信息
評論
共有 條評論