日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

Linux运维基础(硬件和操作系统)

發(fā)布時(shí)間:2025/7/14 56 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux运维基础(硬件和操作系统) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
VMware Workstation的使用:
虛擬機(jī)
虛擬計(jì)算機(jī)
在一個(gè)主機(jī)上,軟件+硬件模擬出的硬件設(shè)備,然后在虛擬出來的設(shè)備上安裝系統(tǒng),等同于在物理機(jī)上的操作!
現(xiàn)代計(jì)算機(jī)設(shè)備的組成部分:
運(yùn)算器,控制器,存儲(chǔ)器,輸入設(shè)備,輸出設(shè)備
運(yùn)算器
用來計(jì)算,二進(jìn)制算數(shù)運(yùn)算和邏輯運(yùn)算(加減乘除,移位,取模計(jì)算),也就是加法器
控制器
控制整個(gè)計(jì)算各部件之間的協(xié)調(diào)(運(yùn)算器和控制器合起來為中央處理器CPU)運(yùn)算器和控制器bus總線連接
存儲(chǔ)器
Memeory:編址存儲(chǔ)設(shè)備,一個(gè)單位為一個(gè)字節(jié),一個(gè)字節(jié)為8位,內(nèi)存中的每一個(gè)存儲(chǔ)單位都是有編址的,運(yùn)算器會(huì)從內(nèi)存中地址中取出來運(yùn)算!易失性數(shù)據(jù)!

read ahead:預(yù)取過程

I/O
完成與外部部件進(jìn)行交互的部件,是性能最差的東西! 磁盤、網(wǎng)卡、鍵鼠、鼠標(biāo)
主板
將這些部件拼湊在一塊兒!
顯示設(shè)備
最便宜的顯示設(shè)備
###為什么32的操作系統(tǒng),只能使用4G內(nèi)存:
32位的操作系統(tǒng),地址總線只有32位,那么他可以使用的地址存儲(chǔ)單元也就是2^32個(gè),也就是4G內(nèi)存! 從而可以得知64位可以使用的內(nèi)存的內(nèi)存為2^64個(gè),也就是4G個(gè)4G的空間!
CPU:
運(yùn)算器,控制器(CPU內(nèi)部有眾多的電路,晶體管組成) 主要用來做算數(shù)運(yùn)算和移位運(yùn)算。CPU有很多個(gè)針腳,每一個(gè)針腳都有特定的功能,比如說某一個(gè)針腳用來做加法,某一個(gè)做移位計(jì)算,某一個(gè)或運(yùn)算等等。 為了讓CPU完成我們期望的運(yùn)算,任何一個(gè)所謂的計(jì)算芯片,必定有一個(gè)最基本的載入(boot)的過程!
CPU指令
多個(gè)指令聯(lián)合起來叫做指令集,不同的廠商生產(chǎn)的CPU的指令集功能不同,一般CPU能運(yùn)行的都是二進(jìn)制指令! 當(dāng)然指令分為特權(quán)指令和普通指令,操作系統(tǒng)才有權(quán)限調(diào)用特權(quán)指令,程序只能調(diào)用普通指令。
編程語言
語言越接近硬件越低級(jí),越讓人看得懂的越高級(jí),程序員使用的高級(jí)語言!沒個(gè)開發(fā)出來的程序必須能夠讓機(jī)器看得懂:機(jī)器語言—>匯編語言->高級(jí)語言,那么高級(jí)語言首先要轉(zhuǎn)化成芯片能夠支持的匯編語言,然后轉(zhuǎn)化成調(diào)用CPU指令的過程!比如說C語言,開發(fā)好之后首先就是需要編譯,然后將進(jìn)行匯編過程。 所謂程序:就是讓我們想辦法調(diào)用CPU指令集完成指定工作的過程!
機(jī)器結(jié)構(gòu)
不同的機(jī)器結(jié)構(gòu)(x86,arm)等,但是對(duì)于我們用戶提供的都是通用結(jié)構(gòu)軟件,這個(gè)軟件就是操作系統(tǒng)。無論底層多么復(fù)雜,我們只需要面向操作系統(tǒng)的接口寫程序就可以了!所以操作系統(tǒng)是一個(gè)通用軟件,是一個(gè)將底層所提供的各種計(jì)算能力抽象成為一個(gè)計(jì)算器,將內(nèi)存抽象成為一個(gè)整體(或者簡(jiǎn)單的劃分,如32位操作系統(tǒng)和64位操作系統(tǒng))!
OS:operation System
軟件程序
他是一個(gè)軟件程序,是處于通用的目的,把底層不同功能的硬件抽象成一個(gè)統(tǒng)一的接口(如硬件驅(qū)動(dòng),進(jìn)程管理,內(nèi)存管理,網(wǎng)絡(luò)管理,安全管理等等) 程序員不會(huì)面向硬件寫程序,我們是面向操作系統(tǒng)的抽象接口寫程序(OS也是一個(gè)虛擬機(jī))
System call
操作系統(tǒng)運(yùn)行起來之后:如果程序要調(diào)用特權(quán)只能,只能請(qǐng)內(nèi)核(操作系統(tǒng))發(fā)送請(qǐng)求調(diào)用特權(quán)指令,這個(gè)過程叫系統(tǒng)調(diào)用,System?call。
操作系統(tǒng)的目的
將底層硬件的功能封裝為系統(tǒng)調(diào)用實(shí)現(xiàn)。這樣程序員就不用面向硬件編程,直接面向系統(tǒng)編程,對(duì)硬件的使用過程直接使用系統(tǒng)調(diào)用sys?call實(shí)現(xiàn)。
編程層次:
硬件規(guī)格:hardware?specifiacation 系統(tǒng)調(diào)用: 庫調(diào)用:library?call我們操作系統(tǒng)也是一個(gè)很底層的東西,它抽象出來的硬件功能也很多個(gè),程序開發(fā)的時(shí)候,我們太多個(gè)不同的系統(tǒng)調(diào)用也會(huì)增加了開發(fā)的難度,為了解決這個(gè)問題,操作系統(tǒng)會(huì)再次對(duì)這些操作系統(tǒng)級(jí)別的這些再次抽象,這個(gè)時(shí)候稱之為庫,調(diào)用稱之為library?call,簡(jiǎn)而言之:將底層的功能整合出來離程序員使用最近的就稱之為庫,程序員寫程序也就簡(jiǎn)化多了
系統(tǒng)層次:
應(yīng)用程序↓庫↓操作系統(tǒng)(內(nèi)核)↓硬件
程序運(yùn)行的兩種方式
1、開機(jī)自動(dòng)啟動(dòng)運(yùn)行2、用戶通過交互式接口登陸或者連接系統(tǒng)上去,來手動(dòng)運(yùn)行程序 用戶可以通過交互式接口對(duì)系統(tǒng)及其程序進(jìn)行操作、配置管理 系統(tǒng)的運(yùn)行獨(dú)立于用戶的交互式接口,接口有無,都不影響系統(tǒng)及其程序的運(yùn)行,所以交互式接口不是必須的,但是有些程序建立在交互式接口之上的。
用戶接口
UI: GUI:?Graphic?User?Interface????圖形用戶接口CLI:?Command?Line?Interface????命令行接口#ABI:Application?Binary?Interface??應(yīng)用二進(jìn)制接口那么Linux和Windows的程序?yàn)槭裁炊疾荒芑ネ?#xff1f;因?yàn)槲覀兪褂玫亩M(jìn)制調(diào)用接口不同!也就是使用的ABI(Application?Binary?Interface)不一樣。因?yàn)槲覀兊某绦虮仨毦幾g,然后匯編成二進(jìn)制才能執(zhí)行,這個(gè)時(shí)候的ABI使用的接口不一樣,那就沒法執(zhí)行,如果接口相同,那么就可以互相通用![我們操作系統(tǒng)的庫面對(duì)的對(duì)象不一樣]#API:Application?Programming?Interface應(yīng)用編程接口API:Application?Programming?Interface應(yīng)用編程接口(WIN和Linux運(yùn)行程序格式不一樣,編程接口可以一樣兼容,在Windows寫的程序以兼容格式可以在Linux到可以運(yùn)行,一旦編譯成了二進(jìn)制,就只能在對(duì)應(yīng)的操作系統(tǒng)上能運(yùn)行,在什么對(duì)象上編譯,就只能在那些系統(tǒng)上運(yùn)行。)
CPU架構(gòu)類型
##IntelX86 X86_64 安騰CPU##ARMARM(非常奇葩,只設(shè)計(jì),不生產(chǎn),有所謂的三星,高通這樣的公司生產(chǎn))##摩托羅拉M6800(M68K)?摩托羅拉的CPU Power(IBM,世界上第一個(gè)多核心CPU,第一個(gè)8核,單核心能最強(qiáng)的,功耗大) powerpc(摩托羅拉,蘋果,IBM聯(lián)合設(shè)計(jì)的CPU),簡(jiǎn)裝的Power#SUNultrasparc(SUN公司的)#HPalpha(HP公司)
常見操作系統(tǒng)
##Windows##Linux##UnixSystem(Bell?lab)AIX(IBM)Solaris(SUN)HP-UX(HP)BSD(Berkeley?System?Distribution)(BSRG)FreeBSD(能夠在PC上運(yùn)行的貴族操作系統(tǒng))NetBSDOpenBSD#MIT:Richard?StallmanGNU:?GNU?is?Not?Unix;GPL:General?Public?License
Linux發(fā)行版
Linux完整的名字叫GNU/Linux,只是我們簡(jiǎn)稱Linux。無論是GNU還是Linux,內(nèi)核都是源代碼,是C語言開發(fā)的,如果軟件要運(yùn)行,就必須編譯成二進(jìn)制才能運(yùn)行,跨平臺(tái)運(yùn)行是個(gè)嚴(yán)重的問題,那么久流行將軟件編譯好之后的二進(jìn)制可以兼容所有的平臺(tái),也就是打包,包括RedHat,Debian,SLS,SUSE這些公司,他們本身都不是Linux的擁有著,他們只是將源代碼在通用平臺(tái)上編譯好成二進(jìn)制可以兼容大部分的平臺(tái),這些公司簡(jiǎn)稱發(fā)行商(release)
Linux的發(fā)行版:
slackware:suseopensusedebian:ubuntumint redhat: rhel:?redhat?enterprise?linux每18個(gè)月發(fā)行一個(gè)新版本CentOS:兼容rhel的格式fedora:每6個(gè)月發(fā)行一個(gè)新版本 ArchLinux GentooLFS:?Linux?From?scratch
開源協(xié)議
GNU:?GPLv2,?GPLv3,?LGPL(lesser) Apache:?apache BSD:?bsd A:?1000,?GPL, B:?20000,?20
問題1:CentOS和Linux是什么關(guān)系?CentOS和RHEL是什么關(guān)系?
CentOS是Linux的發(fā)行版,CentOS是在RHEL基礎(chǔ)上改變了logo的發(fā)行版
問題2:各種開源協(xié)議的具體細(xì)節(jié)?
GPL,?LGPL,?Apache,?BSD GPL:GPL協(xié)議的主要內(nèi)容是只要在一個(gè)軟件中使用(”使用”指類庫引用,修改后的代碼或者衍生代碼)GPL協(xié)議的產(chǎn)品,則該軟件產(chǎn)品必須也采用GPL協(xié)議,既必須也是開源和免費(fèi)。這就是所謂的”傳染性”。LGPL:LGPL是GPL的一個(gè)為主要為類庫使用設(shè)計(jì)的開源協(xié)議。和GPL要求任何使用/修改/衍生之GPL類庫的的軟件必須采用GPL協(xié)議不同。LGPL?允許商業(yè)軟件通過類庫引用(link)方式使用LGPL類庫而不需要開源商業(yè)軟件的代碼。這使得采用LGPL協(xié)議的開源代碼可以被商業(yè)軟件作為類庫引用并發(fā)布和銷售。Apache:ApacheLicence是著名的非盈利開源組織Apache采用的協(xié)議。該協(xié)議和BSD類似,同樣鼓勵(lì)代碼共享和尊重原作者的著作權(quán),同樣允許代碼修改,再發(fā)布(作為開源或商業(yè)軟件) 需要滿足的條件也和BSD類似: ????需要給代碼的用戶一份Apache?Licence如果你修改了代碼,需要再被修改的文件中說明。在延伸的代碼中(修改和有源代碼衍生的代碼中)需要帶有原來代碼中的協(xié)議,商標(biāo),專利聲明和其他原來作者規(guī)定需要包含的說明。如果再發(fā)布的產(chǎn)品中包含一個(gè)Notice文件,則在Notice文件中需要帶有Apache?Licence。你可以在Notice中增加自己的許可,但不可以表現(xiàn)為對(duì)Apache?Licence構(gòu)成更改。 BSD:BSD開源協(xié)議是一個(gè)給于使用者很大自由的協(xié)議。基本上使用者可以”為所欲為”,可以自由的使用,修改源代碼,也可以將修改后的代碼作為開源或者專有軟件再發(fā)布。 但”為所欲為”的前提當(dāng)你發(fā)布使用了BSD協(xié)議的代碼,或則以BSD協(xié)議代碼為基礎(chǔ)做二次開發(fā)自己的產(chǎn)品時(shí),需要滿足三個(gè)條件: ????如果再發(fā)布的產(chǎn)品中包含源代碼,則在源代碼中必須帶有原來代碼中的BSD協(xié)議。 ????如果再發(fā)布的只是二進(jìn)制類庫/軟件,則需要在類庫/軟件的文檔和版權(quán)聲明中包含原來代碼中的BSD協(xié)議。 ????不可以用開源代碼的作者/機(jī)構(gòu)名字和原來產(chǎn)品的名字做市場(chǎng)推廣。MIT:MIT是和BSD一樣寬范的許可協(xié)議,作者只想保留版權(quán),而無任何其他了限制.也就是說,你必須在你的發(fā)行版里包含原許可協(xié)議的聲明,無論你是以二進(jìn)制發(fā)布的還是以源代碼發(fā)布的.


轉(zhuǎn)載于:https://blog.51cto.com/dominicto/1961078

總結(jié)

以上是生活随笔為你收集整理的Linux运维基础(硬件和操作系统)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。