實驗報告linux編程
Ⅰ linux實驗
實驗報告
實驗名稱: Linux觀察行為
實驗時間: 年 月 日
實驗人員: (姓名) (學號) (年級)
實驗目的: 掌握監視系統的幾個Linux基本命令以及其他常用命令,學習linux內核,進程,存儲和其他資源的一些重要特徵,熟悉/proc虛擬文件系統。
實驗環境: linux
實驗步驟:
1. 用帳戶root,密碼123456登陸linux系統
2. 運行ps、man ps、cal、date、clear、who、which命令,觀察輸出結果
3. 運行/proc文件系統的相關命令(參見以下實驗陳述3),觀察輸出結果
實驗陳述:
1、基礎知識:
為什麼說/proc是一個虛擬文件系統:
proc文件系統是一個偽文件系統,它只存在內存當中,而不佔用外存空間。
該文件的作用:
它以文件系統的方式為訪問系統內核數據的操作提供介面。用戶和應用程序可以通過 proc得到系統的信息,並可以改變內核的某些參數。
2、寫出下列運行指令的結果(在終端里原樣輸入命令即可得到結果)
cal: 返回當前年月日歷
who am I: 返回當前用戶信息
find /usr -name "clear":
返回 一直到/clear的路徑 如:/use/bin/clear
which ls: alias ls='ls --color=tty'
/bin/ls
3、完成下列liunx機器問題(/proc文件系統)
² CPU的類型和型號
Ø 指令:cat /proc/cpuinfo
Ø 結果:(原樣輸入指令即可得到結果)
² 使用的Linux內核版本、編譯器版本
Ø 指令:cat /proc/version
Ø 結果:(原樣輸入指令即可得到結果)
² 配置了多少內存
Ø 指令:cat /proc/meminfo
Ø 結果:
MemTotal項就是總的內存.
² 當前有多少可用內存
Ø 指令:cat /proc/meminfo
Ø 結果:
MemFree項就是可用內存.
² 有多少磁碟讀寫請求
Ø 指令:cat /proc/stat
Ø 結果:
disk_io項
² 從系統啟動以來已經創建了多少進程
Ø 指令:cat /proc/stat
Ø 結果:
processes項即為總的線程數
實驗總結:...
Ⅱ Linux進程通信實驗報告
一、實驗目的:
進一步認識並發(並行)執行的概念,區別順序執行和並發(並行)執行。
分析進程爭用臨界資源的現象,學習解決進程排斥的方法。
二、實驗環境:
一台至少具有256MB內存的計算機,並安裝Red Hat Linux 9的Linux操作系統。
三、實驗內容:
1. 預備知識
fork函數調用:創建一個新進程。
getpid函數調用:獲得一個進程的pid。
lockf系統的調用:在進程同步控制中為進程加鎖。
2. 編寫一段程序(程序名為fork1.c),使用系統調用fork()創建兩個子進程。當此程序運行時,在系統中有一個父進程和兩個子進程活動。讓每一個進程在屏幕上顯示一個字元:父進程顯示字元「a」,子進程分別顯示字元「b」和字元「c」。試觀察記錄屏幕上的顯示結果,並分析原因。
(1)進入Linux操作系統。
(2)打開終端。進入vi編譯器。
(3)輸入源程序代碼。
(4)按Esc鍵,進入命令模式後,輸入「: wq文件名」就可以運行該程序了。
Ⅲ 【Linux操作系統實驗報告】 求大神指點幫幫忙啊!正在趕實驗報告,好久沒看書了,不記得操作步驟了
這個上面不是已經清楚地寫好操作的步驟了嗎
還要做什麼?
實驗的截圖?
這其實很簡單
而且步驟也已經完全寫明了
只需要跟著做就可以了
vi就是一個文本編輯器
也就是說使用一個文件編輯器編寫幾個文件(不知道p136題目是什麼,不過看後面的敘述,這幾個文件非常地簡單)
編寫完程序的源碼後再編寫一個Makefile文件
文件的內容上面已經完全給出來了
照抄就可以
接著輸入make命令對工程進行編譯
最後會生成一個prog可執行程序
再執行這個程序就可以了
Ⅳ 進程的同步與互斥實驗報告Linux
相交進程之間的關系主要有兩種,同步與互斥。所謂互斥,是指散步在不同進程之間的若干程序片斷,當某個進程運行其中一個程序片段時,其它進程就不能運行它 們之中的任一程序片段,只能等到該進程運行完這個程序片段後才可以運行。所謂同步,是指散步在不同進程之間的若干程序片斷,它們的運行必須嚴格按照規定的 某種先後次序來運行,這種先後次序依賴於要完成的特定的任務。
顯然,同步是一種更為復雜的互斥,而互斥是一種特殊的同步。
也就是說互斥是兩個線程之間不可以同時運行,他們會相互排斥,必須等待一個線程運行完畢,另一個才能運行,而同步也是不能同時運行,但他是必須要安照某種次序來運行相應的線程(也是一種互斥)!
總結:互斥:是指某一資源同時只允許一個訪問者對其進行訪問,具有唯一性和排它性。但互斥無法限制訪問者對資源的訪問順序,即訪問是無序的。
同步:是指在互斥的基礎上(大多數情況),通過其它機制實現訪問者對資源的有序訪問。在大多數情況下,同步已經實現了互斥,特別是所有寫入資源的情況必定是互斥的。少數情況是指可以允許多個訪問者同時訪問資源
Ⅳ linux管程實驗報告 c 語言的
神馬東東?
Ⅵ 操作系統管理Linux 系統進程實驗報告
什麼是進程
比如:windows上安裝的QQ,我們會將其稱為QQ程序,那麼當QQ運行之後,在任務管理器中,我們可以看到QQ程序在運行著,此時,我們稱其為:QQ進程。
言簡意賅總結:當我們運行一個程序,那麼我們將該程序叫進程
注意:
1.當程序運行為進程後,系統會為該進程分配內存,以及運行的身份和許可權。
2.在進程運行的過程中,伺服器上回有各種狀態來表示當前進程的指標信息。
進程是已啟動的可執行程序的運行實例,進程有以下組成部分:
分配內存, 已分配內存的地址空間
安全屬性, 進程的運行身份和許可權
進程代碼, 運行一個或多個的線程
進程狀態, 進程運行後的多種狀態
靜態程序, 二進制文件, 靜態/bin/ls, /usr/sbin/sshd
動態進程, 程序運行的過程, 有生命周期及運行狀態
進程的運行環境,包括以下幾個部分:
局部和全局變數
當前的調度上下文
分配給進程使用的系統資源,例如文件描述符、網路埠等
給進程分配對應的pid,ppid
程序和進程的區別
1.程序是數據和指令的集合,是一個靜態的概念,比如/bin/ls、/bin/cp等二進制文件,同事程序可以長期存在系統中。
2.進程是一個程序的運行過程,是一個動態概念,進程是存在生命周期概念的,也就是說進程會隨著程序的終止而銷毀,不會永遠在系統中存在。
進程的生命周期
程序運行時進程的狀態關系:
1.當父進程接收到任務調度時,會通過fork派生子進程來處理,那麼子進程會集成父進程的衣缽。
2.子進程在處理任務代碼時,父進程會進入等待的狀態...
3.如果子進程在處理任務過程中,父進程退出了,子進程沒有退出,那麼這些子進程就沒有父進程來管理了,就變成了僵屍進程。
4.每個進程都會有自己的PID號,(process id)子進程則PPID
Ⅶ 操作系統Linux實驗報告3張妮
1) 啟動vmware虛擬機2) 單擊「文件—>新建?虛擬機」,出現「安裝虛擬機向導」對話框,單擊「下一步」,選「典型」;
3)「客戶機操作系統」選擇安裝Linux,版本選「RedHat Linux」,單擊「下一步」;
4) 在「虛擬機名稱」處:輸入「LINUX」, 創建指定位置(不要選擇在C盤)的磁碟映像文件linux.vmx單擊「下一步」,出現「網路連接」 設置界面,選擇「使用橋接網路」 單擊下一步;
5) 磁碟容量為8G, 單擊「完成」;
6)編輯虛擬機設置:
雙擊設備欄「CD-ROM」,選擇「使用ISO鏡像」;指定鏡像文件路徑,例如: D:\RedHatLinux_ISOFiles\RedHatLinux9_i386_disc1.iso ;
Floppy設備欄取消「打開電源時連接「
7) 配置步驟完成,啟動系統。