DIGITAL UNIX

DIGITAL UNIX系統核心是一個支持多CPU進行分散式並行處理的可擴展系統核心。系統核心提供基本的作業系統服務,它支持CPU的使用規劃,虛存管理以及進程間通訊。

概述

一、系統管理員的職責
1.安裝和配置系統
2.打開和關閉系統
3.控制用戶訪問系統
·增加信用戶
·修改或刪除賬號
·維護系統的保密級別
4.管理磁碟空間
·維護檔案系統
·檢查磁碟的使用情況
·建立磁碟限額
5.備份檔案系統
6.監控和調試系統

配置核心

一、核心及核心子系統
1.核心
UNIX系統核心是一個支持多CPU進行分散式並行處理的可擴展系統核心。系統核心提供基本的作業系統服務,它支持CPU的使用規劃,虛存管理以及進程間通訊
2.核心子系統
核心子系統是一些核心模組,提供中心核心以外的擴展核心服務。核心子系統包括檔案系統,網路協定服務,物理和仿真設備驅動程式,S TREAMS驅動程式和各類模組。
二、配置核心
配置核心就是核心根據系統配置檔案巴核心子系統與核心連線起來。
1.配置策略
 /傳統方式:修改系統配置檔案。用doconfig命令重配核心。
靜態配置<
 \自動安裝方式:當層次產品安裝到系統中時,使用kreg命令可以把這個層次產品紀錄到/usr/sys/conf/.product.list檔案中,核心工具根據該檔案把層次產品加到核心中去。
動態配置動態安裝子系統
2.系統配置檔案
用於配置核心。
系統配置檔案有:
·/usr/sys/conf/NAME
定義了系統做到核心中的功能。核心子系統(檔案系統,網路協定,設備及虛擬設備驅動,STREAMS驅動等)都可以在配置檔案中加以定義。
·/usr/sys/conf/NAME.list
·/usr/sys/conf/.product.list
這兩個檔案是配置檔案的擴展,包含了層次產品的核心選項,即存儲了關於第三方廠商的靜態子系統的信息。這兩個檔案格式相同。
·/usr/sys/NAME/param.c
·/usr/sys/conf/param.c
包含了一些系統參數的預設值。要修改系統預設參數,編輯/usr/sys/conf/param.c檔案即可。
·/etc/rc.config
包含了建立子系統的配置參數。
3.配置核心
何時配置核心:
·添加設備後
·修改了系統配置後
檔案/usr/sys/GENERIC
/genvmunix
·自動配置核心
·手工建立核心

層次結構

______________________________
| ________應用程式________ |
| | ______shell_______ | |
| | | ____核心____ | | |
| | | |設備驅動程式| | | |
| | | | ______ | | | |
| | | | | 硬體 | | | | |
__|__|__|__|__|______|__|__|__|__|__
UNIX 作業系統主要由下列部分組成:
1.設備驅動程式
與外部設備通訊的專用軟體
2.核心
作業系統的主要部分,負責控制系統資源。他是執行檔/vmunix。
3.其它使用程式和程式。

系統監視

·了解你的用戶環境
·你所運行的應用程式
·應用程式涉及到的各個子系統
一、初步監視工具
1、ps
顯示系統各個進程的狀態,包括進程如何使用cpu和虛存信息
# ps aux
%cpu 占用cpu的百分比
%MEM 使用實際存儲器的百分比
VSZ 進程使用虛存的地址大小,也就是分配給進程的虛存數量
RSS 進程的真實存儲器(定位集)大小,這是虛頁映像的物理存儲器的總量(應用程式實際使用的存儲器數量)
S 進程的狀態。
R 運行態
U 步中斷眠態
S 睡眠態
I 閒置態
T 暫停態
H 停止態
W 進程能交換出去
>; 進程超過了存儲器要求極限
+ 是控制終端的進程組中的頭進程
N 優先權降低了
< 優先權升高了
TIME 當前CPU使用時間
2、vmstat
顯示關於進程的執行緒、虛擬存儲器、中斷以及某個特定的時間內CPU的使用情況的信息。
# vmstat 1
虛存信息:act 活動頁的數量
free 位於自由頁列表中頁的數量
wire 束縛頁的數量
總和=物理存儲器
如果free值<100,就可能有虛存問題,<128,交換將會發生。
pout 被交換出去的頁的數量
中斷信息:in 每秒非時鐘中斷的次數
sy 每秒系統調用的數量
cs 每秒任務和執行緒內容變化的數量
CPU使用信息:us 常規和優先進程占用事件的百分比
sy 系統運行事件的百分比
id 閒置時間的百分比
3、swapon
顯示交換空間配置和加交換空間
# swapon -s
# swapon -a /dev/rz1b
4、iostat
監視磁碟空間。該命令紀錄了終端、磁碟以及CPU的I/O的統計數據。
對於每個磁碟: bps 每秒轉換的直接(千位元組)數
tps 每秒轉換的次數
對於系統:
/us 在預設優先權
用戶狀態運行進程所花的時間的百分比< 或高優先權
\ni 在低優先權
sy 系統態
id 空閒態
5、netstat
# netstat -i 顯示輸入錯誤、輸出錯誤、衝突
# netstat -is 查明上述例子中輸入和輸出錯誤的原因
6、sysconfig
監視系統參數。
# sysconfig -s 顯示所有子系統
# sysconfig -q 子系統 顯示指定子系統有關的所有屬性值

系統的引導及關閉

一、控制台上的一些參數和命令
控制台命令提示符:>;>;>;
1.主要控制台參數
auto_action 設定機器自檢後處於何種狀態。可取halt或boot
boot_osflags 設定引導時進入單用戶或多用戶方式。可取s或a
bootdef_dev 設定預設引導設備。
ewa0_mode 設定網卡走哪種介質。可取twi,aut,fast等。
2.常用的控制台命令
set
show
boot
help
二、運行級的概念
系統的運行級也就是系統所處的運行狀態。UNIX系統可以在不同的狀態下運行。以完成不同的工作。Digital UNIX支持的運行級有:
0級 停機方式
s或S級 單用戶方式
2級 無網路功能的多用戶方式
3級 有網路功能的多用戶方式
三、系統的引導過程
______________
| 把核心裝入 |
|__記憶體________|
|
_____\|/______
|__初始化核心__| __________
| | |
_____\|/______ | _____\|/______
| 檢查硬體配 | | | 執行初始化 |
|__置__________| | |__腳本檔案____|
| | |
____________ _____\|/______ | _____\|/______
| 手動啟動 |<_____| 創建系統進 |__| | 進入多用戶 |
|____________| |__程__________| |__操作方式____|

引導過程

分為七個階段:
1.把核心裝入記憶體
(1)控台軟體裝入0號邏輯塊(引導塊)
(2)引導塊從1-15號邏輯塊中讀取第一引導程式碼
(3)第一引導程式裝入第二引導程式/osfboot
(4)第二引導程式獲取引導方式、引導設備等,裝入指定核心。
2.初始化核心
(1)檢查在裝入核心後還剩多少記憶體空間
(2)為快取區和內部靜態表保留記憶體空間
(3)建立頁表和啟動存儲管理
(4)啟動0號進程和其他系統進程
(5)初始化快取區
3.檢查硬體設備
4.創建系統進程
(1)0號進程(核心任務)
由許多執行緒組成,完成諸如葉面的調入和調出,作業映像的換入和換出,調度以及提供設備中斷服務和核心空閒服務。
(2)1號進程(init)
這是所有用戶進程的父進程,為每台終端產生出一個login進程。init進程也負責單用戶-多用戶的轉換。
(3)2號進程(設備服務程式)
處理快取區的管理。
(4)3號進程(異常處理程式)
同步等待異常信息並把它轉換成UNIX信號。
5.單用戶方式
6.執行初始化腳本檔案
在這個過程中,init進程讀取/etc/inittab檔案中的內容,並執行相應運行級的rc腳本檔案。
rc*腳本完成的任務有:
(1)設定系統名字
(2)用fsck命令檢查磁碟
(3)安裝列在/etc/fstab山的檔案系統
(4)刪除/tmp目錄的檔案
(5)通知核心另一個Swap分區
(6)啟動守護程式和網路服務
(7)打開系統賬號和磁碟限額
(8)配置網路接口
(9)允許登錄
7.進入多用戶方式

初始化檔案和目錄

1./etc/inittab
檔案格式:
標識符:運行級:運行條件:命令
(1)標識符
他是每一行的標誌。這個域最多14個字元
(2)運行級
它定義了這一行命令在哪個運行級執行。這個域最多20個字元
(3)運行條件
這個與最多20個字元。init通過運行條件來決定如何對待後面的進程。這個域可以取以下值:
respawn 如果這個進程不存在或終止,則init重新啟動它。如果進程已經存在,則繼續掃描inittab檔案。
wait 如果系統正在進入與本項匹配的運行級,這啟動該進程,並等待進程終止。以後在此掃描inittab檔案時,如不改變運行級,本項將被忽略。
bootwait init只在系統啟動時才被處理。當該項的進程終止,init不再啟動它。
initdefault 系統啟動時init處理此項, 通過這一項來決定進入哪一個運行級。 如果本項中運行級一欄為空, 則系統選擇運行級中最高的狀態來運行。 如果根本沒有此項, 那么系統在引導時會要求管理員輸入運行級。
(4)命令
標出所要運行的shell命令。每一行可以用\換行。這個域最多1024個位元組。
2./etc/securettys
3./sbin/bcheckrc
檢查和裝載檔案系統的命令檔案
4./sbin/rc0,/sbin/rc2,/sbin/rc3
用於控制進入0,s,2或3運行級的主要腳本檔案(是sh程式)
5./sbin/rc0.d,/sbin/rc2.d,/sbin/rc3.d目錄
/sbin/rc0腳本運行/sbin/rc0.d目錄里的命令或程式
/sbin/rc2腳本運行/sbin/rc2.d目錄里的命令或程式
/sbin/rc3腳本運行/sbin/rc3.d目錄里的命令或程式
6./sbin/init.d目錄
7./etc/rc.config
該檔案包含系統配置參數。/sbin/init.d目錄中的命令檔案用這些參數配置不同的子系統。這個檔案中的參數可以用rcmgr命令顯示或設定。
8./usr/sbin/getty
用於設定和管理終端的執行檔。
9./etc/gettydefs
該檔案用於定義終端屬性,由/usr/sbin/getty讀取。
10./var/spool/cron/contabs
該目錄包含了定義定期執行進程的檔案,這些檔案分別屬於不同的用戶。
11./var/spool/cron/atjobs
該目錄包含了定義執行一次特別進程的檔案。

關閉和重新啟動系統

UNIX提供了幾種關閉系統的方法:
·shutdown命令
命令格式:shutdown 參數 time (警告信息)
·halt命令
·init命令
1.在多用戶方式下關閉系統
shutdown -h now
shutdown
shutdown -r
2.在單用戶方式下關閉系統
# sync
# sync
# halt
3.其他關機和重啟動命令
init
reboot
第四章 添加設備
一、設備驅動程式
設備驅動程式是硬體設備的軟體接口。
_______________________________
__|塊設備驅動程式 |
| | |
| |以塊為單位進行輸入輸出操作。 |
______________ | |它使用核心支持的塊快取器進行 |
|_設備驅動程式_|___| |讀取。磁碟和磁帶機是典型的塊 |
| |設備。_________________________|
|
| _______________________________
|__|字元設備驅動程式 |
| |
|分為輸入和輸出兩類。不使用緩 |
|存區進行I/O操作。印表機、鍵盤、|
|顯示器等是字元設備。___________|
_______________________________
__|傳統靜態設備驅動程式—— |
| | |
| |Digital公司的硬體設備 |
| | |
| |用MAKEDEV命令建設備檔案 。 |
| |_______________________________|
______________ | _______________________________
|_設備驅動程式_|___|__|自動靜態設備驅動程式—— |
| | |
| |第三方廠商的硬體設備 |
| |kmknod命令從核心得到所需信息並 |
| |建立設備檔案。_________________|
| _______________________________
|__|動態可裝載的驅動程徐—— |
| |
|在上載時建立特殊檔案,在下 |
|載時刪除這個檔案。由kfgmgr |
|命令建立特殊檔案。_____________|
二、設備特殊檔案
是對特殊特徵的描述。設備檔案在/dev目錄下,它們為核心中的驅動程式提供訪問。
_______________________________________
__|主設備號major number——指出設備的種類 |
| | |
__________ | |主設備號用於設備種類的索引,字元設備 |
|__設備號__|___| |紀錄在cdevsw表中,塊設備紀錄在 |
| |bdevsw中,表中的每一項指向相應的設備 |
| |驅動程式。_____________________________|
| _______________________________________
|__|次設備號minor number——指出特定的設備 |
| |
|次設備號是具體的設備號。_______________|
添加磁帶、磁帶機、仿真終端、第三方廠家的磁帶機和磁帶設備

磁碟和檔案系統

一、磁碟
1.扇區
扇區是磁碟的存儲單位,是可進行一次I/O操作的磁碟上的最小單位。每個扇區為512個位元組。扇區的地址由邏輯塊號(LBN)決定,LBN是用戶可以訪問的基本磁碟數據區。
2.分區
__________________________________________________________
| |
| 物 理 磁 盤 |
|__________________________________________________________|
<---------------------------c------------------------------>;
<----a---->;<-----b----->;<--------g------->;<--------h------->;
<-----d----->;<----e----->;<----f---->;
·分區由一組扇區組成
·最多8個分區
·每個分區大小可以不同
·分區的符號:a-h
·每個分區都有一個塊設備檔案和一個字元設備檔案
·每個分區有時要覆蓋另一個分區,c區覆蓋了所有分區
·每種磁碟都有預設的分區大小值,放在/etc/disktab檔案里
·分區的用法:
放檔案系統
(作交換區——進行分頁和交換的操作)
·對磁碟進行分區——使用disklabel命令
使用disklabel命令來檢查或改變分區大小——分區表
# disklabel -wr rz1 rz29
# disklabel -r rz0
# disklabel -er rz1
3.分頁和交換
·分頁和交換是對記憶體進行擴充和管理的技術,是對虛存的管理技術
·虛擬記憶體=物理記憶體+交換區
·虛擬記憶體對物理記憶體和交換區進行統一編址
具有虛擬記憶體地址的頁可能在物理記憶體內,也可能臨時存儲在交換區內。
·虛存的使用
物理記憶體存放進程最近將要用到的頁和具有高優先權的進程所需的頁。
交換區存放已修改的不常用的頁。
  /調入頁page in
·靜態配置<
  \調出頁page out
分頁操作時磁碟和物理記憶體之間少量的頁操作。
調入頁:當某一進程所需的頁不在物理記憶體時,系統把這個頁從其磁碟上的存儲處或交換區中拷貝到物理記憶體中,這個過程叫做調入頁。當進程訪問一個以前系統沒有訪問過的頁時,一定會發生調入頁操作。
調出頁:當系統運行某一進程時,發現物理記憶體中可用頁數的數量低於系統正常運行的要求時,它會把一些不常用的或者是優先權低的進程的修改過的頁寫到交換區,同時釋放記憶體空間,這個過程叫做寫修改頁或調出頁。
  /交換調入swap in
·交換操作<
  \交換調出swap out
交換過程涉及了磁碟和物理記憶體之間大量的頁交換。
交換調出:當通過調出頁操作仍不能使系統得到足夠的可用頁時,系統將選擇一些物理記憶體中低優先權的進程,把其所有的已經修改的頁寫到交換區,並釋放這些進程的也占據的所有記憶體空間,這個過程叫做交換調出。當系統的物理記憶體不夠用時才會發生交換調出。
交換調入:隨著那些低優先權的進程等待時間的增長,這些進程的優先權會逐漸高於其他進程,這時系統再把它們調入記憶體來執行,這叫做交換調入。
  /交換調入swap in
·交換區的定位方式<
  \交換調出swap out
立即定位方式:是物理記憶體中修改頁一建立就定位交換區。
優點:比延遲方式可靠
缺點:定位的交換區比延遲方式多(因為對每個修改頁都定位一個交換區空間,而並不是所有修改的頁都需要寫到交換區)
 會降低系統性能(因為系統要花費額外的時間去進行交換區紀錄)
延遲定位方式:在需要把已經修改的頁寫到交換區之前不定為交換區,直到系統要去寫修改頁時才定位交換區空間。
缺點:不可靠。(因為有時會發生交換區的大小不足,這是系統將終止與不能寫入交換區的已修改頁相關的進程。此修改頁如果不能寫入交換區而被刪除的話,以後執行該進程時會出現找不到該頁的錯誤從而使系統啟動該頁沒修改前的狀態,這樣就會發生錯誤的結果。)
·監視交換區的使用情況,增加交換區:
# swapon
# swapon -a /dev/rz1b
·選擇交換區的定位方式
立即方式:有檔案/sbin/swapdefault存在
# ln -s /dev/rz0b /sbin/swapdefault
延遲方式:刪去檔案/sbin/swapdefault
二、檔案系統
Digital UNIX支持下列類型的檔案系統:
·UNIX檔案系統(ufs)
·System V檔案系統(s5fs)
·網路檔案系統(nfs)
·小型磁碟檔案系統(CDFS)(ISO9660)
Digital UNIX通過使用虛擬檔案系統(vfs)來達到支持多種檔案系統的目的。Vfs以Berkerley4.3的虛擬檔案系統為基礎,它提供了一個統一的檔案系統接口,從而使系統可以透明地訪問檔案而不用管它是屬於哪種檔案系統。
_______________________________________________
| |
| |
|___________ ___________ ___________ ___________|
| | | | |
| UFS | S5FS | NFS | CDFS |
|___________|___________|___________|___________|
1.System V檔案系統的結構
________________________________________________
| | | | |
|Boot |Super |Inode | Data |
|Block |block |Table | |
|_______|_______|_______|________________________|
2.UNIX檔案系統結構
_________________________________________________________ ...
| | |Alternate|cylinder | | |
|Boot |Super |super |group |Inode | Data |
|Block |block |Block |Block |Table | |
|_______|_______|_________|_________|_______|__________|__ ...
|<-------------------Cylinder group 0----------------->;|
... __ ______________________________________
|Alternate|cylinder | | |
|super |group |Inode | Data |
|Block |Block |Table | |
... __|_________|_________|_______|__________|
|<----------Cylinder group n---------->;|
·引導塊
用於引導和初始化
·超級塊
它包括下列信息
——檔案系統的大小(以塊為單位)
——inodes使用的塊
——檔案系統的名稱
——最近一次超級塊升級日期
——自由塊佇列頭
——自由inodes佇列,這些自由inodes可以分配給新建立的檔案
·I節點(inodes)塊
每個I節點塊種包含了一定數量的I節點,每個I節點都有一個I節點號。每個I節點包含了檔案系統中一個獨立檔案的信息:
——檔案類型
——檔案屬主和屬組
——檔案的存取權
——連線數:這一項是檔案所連線的路徑號。當這個域為0時,表示這個檔案被刪去,然後這個I節點被釋放到自由inode佇列中去。
——檔案的大小(以位元組為單位)
——最後一次檔案被訪問的日期
——最近一次檔案被修改的日期
——最近一次inode被修改日期
——數據塊指針:指向數據塊實際存放的物理位置
·數據塊
用戶數據和系統檔案
3.ufs與s5fs主要存在兩點不同
(1)ufs使用了block和fragment的概念
block和fragment是存儲檔案的存儲單位,預設的block大小為8192個位元組(8k),預設的fragment大小為1024位元組(1k)。Block和fragment的大小可以根據自己的檔案系統的需要進行調整
由於檔案系統中同時存在的大檔案和小檔案,對於比較大的檔案以block為單位,對於較小的檔案以fragment為存儲單位。
採用block和fragment為存儲單位可以節省存儲空間,可以提高系統性能。
(2)ufs採用了扇區組的磁碟管理方法
ufs的每個扇區內都有一個Alternate super block,它是超級塊的備份,因此,在超級塊毀壞時,系統仍可以正常工作。
4.建立檔案系統
# newfs -T fstype device
5.檢查和恢復檔案系統
檔案系統遭到破壞的原因:
·不正當的shutdown
·硬體錯誤或電源失效
·關機時沒同步磁碟
fsck命令對檔案系統進行檢查和修改,以確保系統的正常運行
# fsck [option] [file-system...]
6.訪問檔案系統
裝載檔案系統:
# mount [-o option] [-t type] [file-system] [mount-point]
下載檔案系統:
# umount mount-point
/etc/fstab檔案
7.檔案系統的保密
---------------------------------------------------------
存取權 r w x
---------------------------------------------------------
檔案 可讀檔案內容 可修改檔案內容 執行檔案
目錄 可列目錄 可在目錄中創建 可進入或搜尋目
刪除和重命名 錄;可使用目錄
檔案 名作為路徑名的
一部分
---------------------------------------------------------
8.監視磁碟的使用
df 檢查檔案系統的磁碟空間使用情況
du 監察檔案或目錄的磁碟空間使用情況
# df -k
# du
第六章 高級檔案系統
一、AdvFS的特徵和好處
1.引入靈活性
·系統管理員可以在檔案系統正在活動的同時增加或取消磁碟。
·最終用戶可以從預先定義的垃圾目錄中取回它們自己不小心刪除的檔案。
2.維護兼容性
·從用戶的觀點看,advfs象任何UNIX檔案系統那樣工作。最終用戶可以使用mkdir、cd、ls、等命令。應用程式遇到的是建立在UNIX上的編輯接口:o pen()、close()、create()等等。
·advfs符合POSIX 1003.1
·advfs替代或消除了若干標準命令,如newfs,dump,restore,fsck等。
3.提高數據可用性
·在系統中斷後的重新引導是
advfs採用提前寫登記來替代fsck使用程式,作為在不可預測的系統崩潰或電源故障期間發生系統部一致性的檢查和恢復。
·系統管理員無需將系統脫機即可實現回收、檔案系統的配置和檔案系統的調整。
4.提供高性能
·以片(extent)為基礎的檔案分配模式允許較小的和較大的I/O傳輸,從而提高順序讀/寫的吞吐量和簡化了大的數據傳輸。
·advfs支持多卷檔案系統。多個卷支持檔案層的分條和遷移。檔案層分條通過把I/O展開於若干磁碟來提高檔案的傳輸率。檔案遷移允許負載和容量的平衡和減少檔案分成碎片。
二、advfs的組成
advfs由兩個不同的層組成:每層包含不同的檔案系統機制。
·物理存儲層(檔案域)
物理存儲層實現提前寫登記、高速快取、檔案分配和物理磁碟I/O功能。
·目錄譜系層(由檔案集組成)
目錄普系層實現檔案命令模式和Digital UNIX檔案系統一致的功能,如創建和打開檔案,或者讀寫檔案。
1.檔案域
檔案域是一個或多個卷的命名集合,提供物理存儲的共享池。
卷可以是:
·一個整個的磁碟
·一個盤分區
·用邏輯存儲管理程式配置的邏輯卷
2.檔案集
檔案集代表檔案系統目錄譜系的一個部分:每個具有唯一名字的檔案集是形成子樹結構的目錄和檔案的一個集合。
檔案集和檔案系統在許多方面是等價的:
·安裝檔案集好像安裝檔案系統那樣
·檔案集也是使能限額於回收數據的單位

高級檔案系統命令

命令說明
chfile 改變檔案屬性
chfset 改變檔案集屬性
chvol 改變卷的屬性
mkfdmn 創建檔案域
mkfset 在檔案域中創建檔案集
renamefset 對已存檔案集重新命名
rmfset 從檔案域取消檔案集
showfdmn 顯示檔案域屬性
showfile 顯示檔案的屬性
showfset 顯示檔案域中檔案集屬性
vdump 實現增長回收
vedquota 編輯用戶和組限額
vncheck 列印檔案系統中每個檔案的標記和全路徑名
vquota 小結檔案集的占有關係,顯示用戶或組的磁碟是用和限額
vquotacheck 檢查檔案系統限額的一致性
vquotaon 打開限額
vquotaoff 關閉限額
vrepquota 小結檔案系統用的限額
vrestore 從用vdump命令寫的磁碟上恢復檔案
POLYCENTER高級檔案系統使用程式

實用程式說明

addvol 在已有檔案域中增加卷
blance 在兩個卷間平衡已使用空間的百分比
clonefset 創建唯讀檔案集
defragment 是域中檔案更加連線
dxadvfs 啟動advfs圖形用戶接口
migrate 在檔案域中移動檔案的位置
mktrashcan 附加目錄到存儲刪除檔案的垃圾目錄中
rmfdmn 取消不用的檔案域
rmtrashcan 從垃圾目錄去掉指定目錄的附屬關係
Rmvol 從已存檔案系統中取消一個卷
shtrashcan 顯示垃圾目錄,如果由的話,被附屬到指定目錄
stripe 把檔案分條跨檔案域中若干卷

相關詞條

相關搜尋

熱門詞條

聯絡我們