系統知識
一、計算機系統
計算機系統由硬件(Hardware)系統和軟件(Software)系統兩大部分組成;
計算機(Computer):俗稱電腦,是一種能接受和儲存信息,并按照儲存在其內部的程序對海量數據進行自動、高速地處理,然后把處理結果輸出的現代化智能電子設備。
計算機存儲單位;
1k=1024=2^10
1M=1024k=2^20
1G=1024M
1T=1024G
可在Windows磁盤屬性配額欄中查看后續存儲單位即:
1P 1E 1Z 1Y 1B 1N 1D
*在日常工作中需要注意對cp命令進行限速
二、計算機硬件組成部分
馮 · 諾依曼體系結構:1946年數學家馮 · 諾依曼提出即
運算器、控制器、存儲器、輸入設備、輸出設備
主存儲器(RAM斷電即丟失) -內存 -處理數據(決定運行速度)
輔助存儲器 -硬盤 -存儲數量
輸入設備 -鍵盤、觸摸屏等
輸出設備 -屏幕、音響
運算器、控制器整合為cpu
*計算機處理數據是基于2進制的
摩爾定律
?
由英特爾(Inter)創始人之一戈登 ·摩爾與1965年提出
即:當價格不變時集成電路上可容納的元器件的數目,約每隔18-24個月便會增加一倍;性能也隨之增加一倍。
按規模劃分
- 巨型計算機:www.top500.com
- 大型計算機:具有較高運算速度,IBM
- 小型計算機:規模較小、結構簡單
- 微型計算機:辦公自動化及大眾化信息處理
服務器(serve)——客戶端(client)
服務器按應用功能可分:
Web服務器(靜態頁面)、數據庫服務器(mysql)、文件服務器、中間件應用服務器(tomcat)、日志服務器(elk)、監控服務器(zabbix)、程序版本控制服務器(git)、虛擬服務器(kvm)、郵件服務器、ERP服務器【Windows下DC (domain controller) AD (active directory) 活動目錄】…
Docker
K8s
lvs、 haproxy調度器:引導員角色-調動負載
keepalive 高可用性,監控,接管調度器
varnish 前端緩存 緩存提供性能保證
menmcached、redis 數據庫緩存
miglefd 分布式文件系統(由多個機器組成為一個服務器) ntfs fat
fastdfs
dns 名字解析
ansible? puppet 運維自動化
*避免單點失?。阂稽c失敗全局失敗
服務器按外形分類
塔式服務器(尺寸不標準) 目前較少使用
?
機架式服務器
機架高2m左右(42U),寬度19英寸(48.26cm)高度單位為U,1U=1.75英寸=44.45毫米、通常有1U、2U(主流)、3U、4U(主流)、5U、7U
?
刀片式服務器
服務器分類
非x86服務器:精簡指令集(指令不多并且長度一樣)穩定性好,性能強,在金融、電信等大型企業的核心系統。
X86服務器:復雜指令集(指令多且長度不同)價格便宜、兼容性好、穩定性較差、且不安全
阿里去IOE化:I-IBM小型機 O-oracle數據庫 E-emc存儲
服務器硬件組成
服務器硬件——CPU
CPU(Center Processing Unit),即中央處理器;由控制器和運算器構成,是整個計算機系統中最重要的部分。
服務器Cpu公司: Intel(Xeon至強)AMD(Althlon MP)IBM(Power)
主頻:主頻是CPU的時鐘頻率(CPU Clock Speed),是CPU運算時的頻率的簡稱;單位Hz。一般來說主頻越高,CPU的速度越快;由于內部結構不同,并非所有的時鐘頻率相同的CPU的性能都一樣。
主頻=外頻(cpu與外部主板芯片組交換數據、指令的工作時鐘頻率)x倍頻(cpu外頻與外頻與主頻相差倍數)
地址總線寬度:決定可訪問的物理地址空間;32位(2^32 對于4G內存)、64位地址總線寬度
服務器硬件——主板
? 主板(mainboard)、系統板systemboard或母版motherboard;主板一般為矩形電路板、上面安裝了計算機的主要電路系統,一般有BIOS芯片、I/O控制芯片…….
服務器硬件——內存
內存是介于CPU 和外部存儲之間,是CPU 對外部存儲中程序與數據進行高速運算時存放程序指令、數據和中間結果的臨時場所,它的物理實質就是一組具備數據輸入輸出和數據存儲功能的高速集成電路。
內存是CPU能直接尋址的存儲空間,由半導體器件制成。內存的特點是存取速度快
計算機中所有程序的運行都是在內存中進行的,因此內存的性能對計算機的影響非常大
外存:硬盤,U盤,軟盤,光盤
內存和外存的區別:
內存斷電后數據丟失
外存斷電后數據可以保存
容量:即該內存的存儲容量,單位一般為“MB”或“GB”
內存帶寬:
內存帶寬是指內存與北橋芯片之間的數據傳輸率單通道內存節制器一般都是64-bit的,8個二進制位相當于1個字節,換算成字節是64/8=8,再乘以內存的運行頻率,如果是DDR內存就要再乘以2
計算公式:
內存帶寬=內存總線頻率×數據總線位數/8
示例:DDR內存帶寬計算
DDR2 667,運行頻率為333MHz,帶寬為
333×2×64/8=5400MB/s=5.4GB/s
服務器硬件——硬盤
機械硬盤結構:
存儲介質(Media)——盤片
盤片的基板是金屬或玻璃材質制成,為達到高密度高穩定的質量,基板要求表面光滑平整,不可有任何暇疵
讀寫頭(Read Write Head)——磁頭
磁頭是硬盤讀取數據的關鍵部件,它的主要作用就是將存儲在硬盤盤片上的磁信息轉化為電信號向外傳輸
馬達( Spindle Motor & Voice Coil Motor )
馬達上裝有一至多片盤片,以7200,10000,15000 RPM等定速旋轉,為保持其平衡不可抖動,所以其質量要求嚴謹,不產生高溫躁音
硬盤接口類型:
IDE接口:硬盤接口規范,采用ATA技術規范
SCSI接口:應用于小型機上的高速數據傳輸技術
SATA接口: Serial ATA,提高傳輸速率,支持熱插拔
SAS接口: Serial Attached SCSI,兼容SATA
目前主流的硬盤接口為SATA和SAS接口
服務器的性能短板:
如果CPU有每秒處理1000個服務請求的能力,各種總線的負載能力能達到500個,但網卡只能接受200個請求,而硬盤只能負擔150個的話,那這臺服務器得處理能力只能是150個請求/秒,有85%的處理器計算能力浪費了
SSD硬盤:
SSD(Solid State Disk)泛指使用NAND Flash組成的固態硬盤。其特別之處在于沒有機械結構,以區塊寫入和抹除的方式作讀寫的功能,因此在讀寫的效率上,非常依賴讀寫技術上的設計SSD讀寫存取速度快,性能穩定,防震性高,發熱低,耐低溫,電耗低,無噪音。因為沒有機械部分,所以長時間使用也出現故障幾率也較小。缺點:價格高,容量小,在普通硬盤前毫無性價比優勢
服務器硬件——熱插拔技術
稱為熱交換技術(Hot Swap),允許在不關機的狀態下更換故障熱插拔設備
常見的熱插拔設備:硬盤,電源,PCI設備,風扇等熱插拔硬盤技術與RAID技術配合起來,可以使服務器在不關機的狀態下恢復故障硬盤上的數據,同時并不影響網絡用戶對數據的使用
存儲基礎知識——存儲網絡
存儲網絡:
DAS—–直接連接存儲(Direct Attached Storage)
NAS—–網絡連接存儲(Network Attached Storage)
SAN—–存儲區域網絡(Storage Area Networks)
三、操作系統
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
?
用戶和內核空間
用戶空間:User space
用戶程序的運行空間。為了安全,它們是隔離的,即使用戶的程序崩潰,內核也不受影響只能執行簡單的運算,不能直接調用系統資源,必須通過系統接口(system call),才能向內核發出指令
內核空間:Kernel space
是Linux 內核的運行空間
可以執行任意命令,調用系統的一切資源
示例:
str= “www.magedu.com” // 用戶空間
x = x + 100 // 用戶空間
file.write(str) // 切換到內核空間
y = x + 200 // 切換回用戶空間
第一行和第二行都是簡單的賦值運算,在User space 執行。第三行需要寫入文件,就要切換到Kernel space,因為用戶不能直接寫文件,必須通過內核安排。第四行又是賦值運算,就切換回User space
編程語言
低級語言
機器語言:0和1
匯編語言:和機器語言一一對應,與硬件相關的特有代碼、驅動程序開發
中級語言:C
系統級應用、驅動程序
高級語言:java,Objective-C,C#,python,php,go
應用級程序開發
本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/94036