Linux 計算機基礎

計算機系統php

clipboard

計算機硬件java

計算機(Computer):俗稱電腦,是一種能接收和存儲信息,並按照存儲在其內部的程序對海量數據進行自動、高速地處理,而後把處理結果輸出的現代化智能電子設備python

發展歷史:linux

第一代計算機(1946-1957)電子管時代數據庫

第二代計算機(1958-1964)晶體管時代apache

第三代計算機(1965-1970) 集成電路時代編程

第四代計算機(1971之後) 大規模集成電路時代ubuntu

1946年,世界上第一臺計算機ENIAC(electronic numerical integrator and calculator)在美國賓州大學誕生,是美國奧伯丁武器試驗場爲了知足計算彈道須要而研製成的。使用了17468只電子管,佔地170平方米,重達30噸,耗電174千瓦,耗資40多萬美圓。每秒可進行5000次加法或減法運算緩存


CPU安全

主頻:主頻是CPU的時鐘頻率(CPU Clock Speed),是CPU運算時的工做的頻率(1秒內發生的同步脈衝數)的簡稱。單位是Hz。通常說來,主頻越高,CPU的速度越快,因爲內部結構不一樣,並不是全部的時鐘頻率相同的CPU的性能都同樣

外頻:系統總線的工做頻率,CPU與外部(主板芯片組)交換數據、指令的工做時鐘頻率

倍頻:倍頻則是指CPU外頻與主頻相差的倍數

三者關係是:主頻=外頻x倍頻

高速緩存(cache):高速交換的存儲器。CPU緩存分爲一級,二級,三級緩存,即L1,L2,L3

內存總線速度(Memory-Bus Speed): 通常等同於CPU的外頻,指CPU與二級(L2)高速緩存和內存之間的通訊速度

地址總線寬度:決定了CPU能夠訪問的物理地址空間


陣列卡

Raid卡:

用來實現RAID的創建和重建,檢測和修復多位錯誤,錯誤磁盤自動檢測等功能。RAID芯片使CPU的資源得以釋放

陣列卡(RAID卡)的做用

陣列卡把若干硬盤驅動器按照必定要求組成一個總體、由陣列控制器管理的系統。

陣列卡用來提升磁盤子系統的性能及可靠性

陣列卡參數

支持的RAID級別

陣列卡緩存

電池保護


計算機硬件組成部分

clipboard


服務器

服務器Server是計算機的一種,是網絡中爲客戶端計算機提供各類服務的高性能的計算機,服務器在網絡操做系統的控制下,將與其相連的硬盤、磁帶、打印機及昂貴的專用通信設備提供給網絡上的客戶站點共享,也能爲網絡用戶提供集中計算、信息發佈及數據管理等服務

服務器按應用功能可分爲:

Web服務器、數據庫服務器、文件服務器、中間件應用服務器、日誌服務器、監控服務器,程序版本控制服務器、虛擬機服務器、郵件服務器、打印服務器、域控制服務器、多媒體服務器、通信服務器、ERP服務器等

服務器按外形分類:

塔式服務器、機架式服務器、刀片式服務器


服務器分類

按照CPU體系架構來區分,服務器主要分爲兩類:

非x86服務器:使用RISC(精簡指令集)或EPIC(並行指令代碼)處理器,而且主要採用UNIX和其它專用操做系統的服務器,指令系統相對簡單,它只要求硬件執行頗有限且最經常使用的那部分執令,CPU主要有Compaq的Alpha、HP的PA-RISC、IBM的Power PC、MIPS的MIPS和SUN的Sparc、Intel研發的EPIC安騰處理器等。這種服務器價格昂貴,體系封閉,可是穩定性好,性能強,主要用在金融、電信等大型企業的核心繫統

x86服務器:又稱CISC(複雜指令集)架構服務器,即一般所講的PC服務器,它是基於PC機體系結構,使用Intel或其它兼容x86指令集的處理器芯片的服務器。目前主要爲intel的Xeon E3,E5,E7系列,價格相對便宜、兼容性好、穩定性較差、安全性不算過高

存儲基礎知識---存儲網絡

7bc1101f41fc4d42aae863a4fd75b9a3


存儲網絡:

DAS-----直接鏈接存儲(Direct Attached Storage)

NAS-----網絡鏈接存儲(Network Attached Storage)

SAN-----存儲區域網絡(Storage Area Networks)

直接存儲(Direct Attached Storage)。

存儲設備與主機的緊密相連

clipboard

•管理成本較低,實施簡單

•儲時直接依附在服務器上,所以存儲共享受到限制

•CPU必須同時完成磁盤存取和應用運行的雙重任務,因此不利於CPU的指令週期的優化,增長系統負擔


網絡鏈接存儲(Network Attached Storage):

經過局域網在多個文件服務器之間實現了互聯,基於文件的協議(NFS、SMB/CIFS ),實現文件共享

clipboard

•集中管理數據,從而釋放帶寬、提升性能

•可提供跨平臺文件共享功能

•可靠性較差,適用於局域網或較小的網絡


存儲區域網絡(Storage Area Networks,SAN)

利用高速的光纖網絡連接服務器與存儲設備,基於SCSI,IP,ATM等多種高級協議,實現存儲共享

clipboard

•服務器跟儲存裝置二者各司其職

•利用光纖信道來傳輸數據﹐以達到一個服務器與儲存裝置之間多對多的高效能、高穩定度的存儲環境

•實施複雜,管理成本高


操做系統

OS: Operating System,通用目的的軟件程序

硬件驅動

進程管理

內存管理

網絡管理

安全管理

文件管理

OS分類:

服務器OS:RHEL, CentOS,WindowsServer,AIX

桌面OS:Windows 10,Windows 7,Mac OS,Fedora

移動設備OS:Andriod,IOS,YunOS


開發接口標準

ABI: Application Binary Interface

ABI描述了應用程序與OS之間的底層接口,容許編譯好的目標代碼在使用兼容ABI的系統中無需改動就能運行

API:Application Programming Interface

API定義了源代碼和庫之間的接口,所以一樣的源代碼能夠在支持這個API的任何系統中編譯

POSIX: Portable Operating System Interface

IEEE在操做系統上定義的一系列API標準

POSIX兼容的程序可在其它POSIX操做系統編譯執行

運行程序格式:

Windows: EXE, .dll(dynamic link library),.lib

Linux: ELF, .so(shared object), .a

Library function和system call

clipboard

用戶空間:User space

用戶程序的運行空間。爲了安全,它們是隔離的,即便用戶的程序崩潰,內核也不受影響

只能執行簡單的運算,不能直接調用系統資源,必須經過系統接口(system call),才能向內核發出指令


內核空間:Kernel space

是Linux 內核的運行空間

能夠執行任意命令,調用系統的一切資源

示例:

str= 「www.baidu.com" // 用戶空間

x = x + 100 // 用戶空間

file.write(str) // 切換到內核空間

y = x + 200 // 切換回用戶空間

第一行和第二行都是簡單的賦值運算,在User space 執行。第三行須要寫入文件,就要切換到Kernel space,由於用戶不能直接寫文件,必須經過內核安排。第四行又是賦值運算,就切換回User space


用戶和內核空間

clipboard

編程語言

低級語言

機器語言:0和1

彙編語言:和機器語言一一對應,與硬件相關的特有代碼、驅動程序開發

中級語言:C

系統級應用、驅動程序

高級語言:java,Objective-C,C#,python,php,go

應用級程序開發


兼容分時系統

clipboard

兼容分時系統Multics

爲了進一步強化大型主機的功能,讓主機的資源能夠提供更多的使用者來利用,因此在1964年,由貝爾實驗室(Bell)、麻省理工學院(MIT)及奇異公司(GE美國通用電氣公司)共同發起了Multics(多路信息計算系統)的計劃,Multics計劃的目的是讓大型主機能夠同時支持300個以上的終端機連線使用。不過,到了1969年先後,因爲計劃進度緩慢,資金也短缺,因此該計劃雖然繼續在研究,但最終貝爾實驗室仍是選擇了退出


GNU

GNU(GNU is Not Unix)

1984年由Richard Stallman發起並建立

目標是編寫大量兼容於Unix系統的自由軟件

官方網站:http://www.gnu.org

GPL(GNU General Public License)

自由軟件基金會:Free Software Foundation

容許用戶任意複製、傳遞、修改及再發布

基於自由軟件修改再次發佈的軟件,仍需遵照GPL

LGPL(Lesser General Public License)

LGPL相對於GPL較爲寬鬆,容許不公開所有源代碼

GNU操做系統:HurdHirdof Unix-Replacing Daemons


Linux發行版

slackware:SUSE Linux Enterprise Server (SLES)

OpenSuse桌面

debian:ubuntu,mint

redhat:RHEL: RedHatEnterprise Linux

每18個月發行一個新版本

CentOS:兼容RHEL的格式

中標麒麟:中標軟件

Fedora:每6個月發行一個新版本

ArchLinux:輕量簡潔

Gentoo:極致性能,不提供傳統意義的安裝程序

LFS: Linux From scratch 自制Linux

Android: kernel+busybox(工具集)+java虛擬機

Linux分支參考網站:

http://futurist.se/gldt/

http://www.mindpin.com/d3js-demo/linux/


Linux內核

clipboard


開源協議

世界上的開源許可證,大概有上百種

GPLv2, GPLv3, LGPL(lesser) :通用公共許可copyleft

Apache: apache

BSD: bsd

Mozilla

Apache

MIT

clipboard

Linux哲學思想

一切都是一個文件(包括硬件)

小型,單一用途的程序

連接程序,共同完成複雜的任務

避免使人困惑的用戶界面

配置數據存儲在文本中

相關文章
相關標籤/搜索