系統(tǒng)運(yùn)維
mike gancarz
1.unix開(kāi)發(fā)基于multics分時(shí)操作系統(tǒng)
2.nih(not invented here,非我發(fā)明)
3.gpl:gun公共授權(quán)協(xié)議,適用于軟件的法律協(xié)議。開(kāi)源
4.unix哲學(xué):
1)小即是美:易理解、維護(hù)、低消耗系統(tǒng)資源、易于其他工具結(jié)合
2)讓每一個(gè)程序制作好一件事
3)盡快建立原型(prototyping):”第三個(gè)系統(tǒng)”概念
4)舍高效而取可移植性
5)使用純文本文件來(lái)存儲(chǔ)數(shù)據(jù):二進(jìn)制嚴(yán)格禁止
6)充分利用軟件的杠桿效應(yīng):借用代碼模塊;將一切自動(dòng)化
7)使用shell腳本來(lái)提高杠桿效應(yīng)和可移植性
8)避免強(qiáng)制性的用戶(hù)界面
9)讓每一個(gè)程序都成為過(guò)濾器
5.unix信條
1)允許用戶(hù)制定環(huán)境:程序應(yīng)該只是解決問(wèn)題的機(jī)制,而不是限定標(biāo)準(zhǔn)
2)盡量使操作系統(tǒng)內(nèi)核小而輕巧
3)使用小寫(xiě)字母并保持簡(jiǎn)短
4)保護(hù)樹(shù)木:在線(xiàn)存儲(chǔ)
5)沉默是金:在需要提供出錯(cuò)信息時(shí)候,unix命令不提示
6)并行思考:大多數(shù)的任務(wù)能分解成更小的子任務(wù),并行運(yùn)行—-對(duì)稱(chēng)處理(smp)設(shè)計(jì)
7)各部分值大于整體:可集合小程序代替大程序,靈活實(shí)用
8)尋找90%%u7684解決方案:完成90%%u4f1a更有效節(jié)省成本,完美很難
9)更壞就是更好:包容
10)層次化思考:目錄結(jié)構(gòu)
6.mips度量法:每分鐘執(zhí)行上萬(wàn)條指令,衡量cpu性能的流行方法
7.ide(interactive development environment)互動(dòng)式開(kāi)發(fā)環(huán)境
8.微優(yōu)化(micro-optimizations):prof和其他*來(lái)定位使用的最頻繁的子程序優(yōu)化unix下的c語(yǔ)言
9.unix中常用工具和功能上說(shuō)明—-每個(gè)命令其實(shí)就是一個(gè)工具功能:
1)awk:對(duì)以字段組織的文本進(jìn)行操作
2)expand:將制表符轉(zhuǎn)換成空格
3)wc:計(jì)算文件行數(shù)、字?jǐn)?shù)和字節(jié)數(shù)
4)sed:非互動(dòng)形式的文本編輯器
5)roff:綜合性文本格式化和排版設(shè)置工具
6)tset:比較兩個(gè)字符串是否相同;檢查文件的模態(tài),了解它們是否可寫(xiě)
10. unix將數(shù)據(jù)存儲(chǔ)為文本形式,然后使用不同的面象文本的小型工具來(lái)對(duì)數(shù)據(jù)處理
11. shell腳本由一個(gè)或多個(gè)語(yǔ)句組成,通過(guò)調(diào)用本地程序、解釋程序和其他的shell腳本來(lái)執(zhí)行任務(wù)。將每條命令加載到內(nèi)存執(zhí)行,間接調(diào)用這些產(chǎn)程序。
shell腳本集成他人的努力成果滿(mǎn)座自己的目標(biāo)。
shell解釋性語(yǔ)言,思考—編輯—測(cè)試
內(nèi)核里不能使用shell腳本。
12. unix哲學(xué)的優(yōu)勢(shì)之一就是它很重視數(shù)量眾多的小命令,shell腳本是一種將他們統(tǒng)一在一起成為一個(gè)強(qiáng)大整體媒介
13.cui:一種與應(yīng)用程序進(jìn)行交互的模式,位于系統(tǒng)最高級(jí)命令解釋器之上。一旦在命令解釋器調(diào)用一個(gè)程序,那么知道退出之前你都無(wú)法再與命令解釋器進(jìn)行交互。實(shí)際效果就是你完全被這個(gè)應(yīng)用程序的用戶(hù)界面牽扯,直到退出之后才能獲得自由。
14. unix特點(diǎn):簡(jiǎn)潔性、正確性、一致性、完整性
15.vms:閉源專(zhuān)有操作系統(tǒng),dec公司?;拘拍睿河脩?hù)害怕計(jì)算機(jī)
16.vms系統(tǒng)確實(shí)是unix的對(duì)立面。
vms通常只給用戶(hù)提供單一化的解決路徑,unix會(huì)提供十幾個(gè)甚至更多的解決方法;
vms系統(tǒng)喜歡采用有著多個(gè)選項(xiàng)、規(guī)模宏大的單一化程序來(lái)滿(mǎn)足眾多用戶(hù)需求,unix小即是美,每一個(gè)都執(zhí)行單一功能且只有為數(shù)不多的選項(xiàng);
vms最初采用匯編語(yǔ)言和bliss-32,與底層的硬件結(jié)構(gòu)高度相關(guān),unix采用c語(yǔ)言,并可移植到許多cpu架構(gòu)
17.ms-dos:為公眾設(shè)計(jì)的操作系統(tǒng),易于使用。簡(jiǎn)潔有效的命令語(yǔ)言。沒(méi)有提供真正的多任務(wù)功能,不管命令行輸入多少條命令,它一次只能執(zhí)行一條
18.windows:設(shè)計(jì)思想更易于新手使用
19. windows的圖形用戶(hù)界面與底層操作系統(tǒng)緊密集成在一起;linux中的x windows system與windows卻有著本質(zhì)的區(qū)別:它只不過(guò)是運(yùn)行在操作上的應(yīng)用程序
20.幾乎所有的perl(practical and report language 實(shí)用型摘錄與報(bào)告語(yǔ)言)程序都能充當(dāng)過(guò)濾器:非常善于和其他軟件交互、晦澀難用、可擴(kuò)展性、開(kāi)源腳本工具。