3-6.1Linux作業系統
創造者 |
1991年8月,芬蘭學生Linus Torvalds。 |
自由軟體 |
原始碼公開,免費軟體,自由使用(under GNU Public License)。 |
功能 |
․真正優先權式多工(preemptive multitasking),各行程在執行時彼此獨立,不會相互干擾。 ․可供多位使用者同時使用(multi-user access)。 ․支援多重處理器(multi-processor)。 ․可在x86、Alpha、Sparc、Mips、PPC等多種不同的平台上執行。 ․虛擬記憶體使用分頁機制寫入磁碟,而非置換整個行程(process)的所有記憶體(後者的效率較差)。 ․依需求載入執行檔,系統只會把執行時要用到的部份載入記憶體。 ․支援多種執行檔格式。 ․支援多種檔案系統,包括Linux的ext2、Windows系統的vfat、ntfs、CDROM的iso9660、網路檔案系統NFS等。 ․支援包括TCP/IP、PPP、IPX、Appletalk在內的各種網路協定。 ․多重虛擬主控台(virtual console)。 |
行程狀態 |
1.Running執行態:行程正在運行(它是系統的目前行程),或者是準備運行的(它正在等待被分到系統的CPU資源)。 2.Waiting等待態:行程正在等一個事件或一個資源。Linux中的等待態有性質不同的兩種類型:interruptible(可中斷的)和uninterruptible(不可中斷的)。可中斷的等待行程能被信號打斷,而不可中斷的等待行程直接等待某種硬體條件,在任何情形下都不能被中斷。 3.Stoped停止態:行程被停止了,通常是給一個信號來通知行程的停止。 4.Zombie僵死態:某個已經終止的行程,由於一些原因,仍然在任務排程中占有資料,就稱做處於僵死態。 |
|
不同的執行緒可以共用共享同樣的資源。 |
創建行程 |
使用"copy on write"(寫時複製)的技術,做法是當其中一個行程試圖寫共享虛擬記憶體時才進行複製。實現的方法是把可寫的記憶體區域在頁表中標為"read only"(只讀),在虛擬記憶體區塊資料結構中標為"copy on write "。當某個行程試圖寫時,就會發生page fault,此時Linux就進行記憶體的複製,並修改頁表和虛擬記憶體的資料結構。 |
執行程式 |
Linux系統中的程式和命令通常是由一個命令直譯器來執行的。一個命令直譯器是一個用戶行程,一般被稱為shell。 Linux系統中有許多命令直譯器,最流行的一些是sh,bash和tcsh。除了一些內部命令之外,例如cd和pwd,一個命令就是一個可執行的二進制的檔案。 |
行程的辦識資訊 |
每個行程總共記錄了4對使用者和使用群組的辨識器: 1.uid,gid 行程所代表的使用者(也就是啟動這個行程的使用者)的使用者和使用群組的辨識器。 2.effective
uid and gid 有一些程式在執行的時候會把uid和gid改變為它們的自己的特定的某個uid和gid,稱為"setuid"程式。它是限制系統服務(service)的權限一個方法,尤其在實現為別的使用者服務的網路精靈程式等類似的服務時很有用。effective uid和gid來自程式的檔案本身,和啟動它的使用者無關。核心在檢查權限的時候會使用effective uid和gid。 3.file
system uid and gid 這兩個辨識器通常和effective uid和gid一樣,當檢查檔案系統存取權限時會用上。這兩個辨識器是為了建立NFS(Network File System,網路檔案系統)而使用的,因為使用者模式的NFS伺服器需要像一個特別的行程一樣來存取檔案。在這種情況下,只有file system uid和gid被改變(有效的uid和gid不變)。這樣可以防止惡意的用戶向NFS伺服器發送kill信號。Kill信號會被以一個特別的有效uid和gid發送到行程。 4.saved
uid and gid 這是POSIX標準中要求的兩個辨識器。當行程透過系統呼叫來改變uid和gid的時候必須要用它們來保存真實的uid和gid。 |
行程環境區塊 |
一個行程的環境區塊包括兩個向量組成,一個是參數向量,一個是環境向量。參數向量只是簡單的一列命令列參數,用在啟動程式時。環境向量則是一個"NAME=VALUE"的串列,用來指定環境變數相對應的值。 |
3-6.2常見的Linux指令
類別 |
指令 |
說明 |
類別 |
指令 |
說明 |
一般 |
ls |
列出檔案清單 |
系統 |
poweroff |
電腦關機 |
mkdir |
建立資料夾 |
reboot |
重新開機 |
||
cd |
切換到指定資料夾 |
磁碟管理 |
fdisk |
分割硬碟 |
|
rm |
刪除檔案/資料夾 |
mount |
掛載磁碟機 |
||
file |
查看檔案類別 |
umount |
卸載磁碟機 |
||
echo |
在螢幕顯示文字 |
stat |
查看檔案/資料夾狀態 |
||
網路 |
ipconfig |
查看IP與網路介面卡 |
cat |
顯示檔案內容 |
|
ping |
查尋遠端主機 |
cp |
複製檔案 |
||
netstat |
顯示網路狀態 |
線上說明 |
man |
顯示線上文件 |
沒有留言:
張貼留言
注意:只有此網誌的成員可以留言。