1. 程式人生 > >我寫了一份作業系統詞典送給你!

我寫了一份作業系統詞典送給你!

1. 作業系統(Operating System,OS):是管理計算機硬體與軟體資源的系統軟體,同時也是計算機系統的核心與基石。作業系統需要處理管理與配置記憶體、決定系統資源供需的優先次序、控制輸入與輸出裝置、操作網路與管理檔案系統等基本事務。作業系統也提供一個讓使用者與系統互動的操作介面。

2. shell:它是一個程式,可從鍵盤獲取命令並將其提供給作業系統以執行。在過去,它是類似 Unix 的系統上唯一可用的使用者介面。如今,除了命令列介面(CLI)外,我們還具有圖形使用者介面(GUI)。

3. GUI (Graphical User Interface):是一種使用者介面,允許使用者通過圖形圖示和音訊指示符與電子裝置進行互動。

4. 核心模式(kernel mode): 通常也被稱為 超級模式(supervisor mode),在核心模式下,正在執行的程式碼具有對底層硬體的完整且不受限制的訪問。它可以執行任何 CPU 指令並引用任何記憶體地址。核心模式通常保留給作業系統的最低級別,最受信任的功能。核心模式下的崩潰是災難性的;他們將停止整個計算機。超級使用者模式是計算機開機時選擇的自動模式。

5. 使用者模式(user node):當作業系統執行使用者應用程式(例如處理文字編輯器)時,系統處於使用者模式。當應用程式請求作業系統的幫助或發生中斷或系統呼叫時,就會發生從使用者模式到核心模式的轉換。在使用者模式下,模式位設定為1。從使用者模式切換到核心模式時,它從1更改為0。

6. 計算機架構(computer architecture) :在計算機工程中,計算機體系結構是描述計算機系統功能,組織和實現的一組規則和方法。它主要包括指令集、記憶體管理、I/O 和匯流排結構

7. SATA(Serial ATA):序列 ATA (Serial Advanced Technology Attachment),它是一種電腦匯流排,負責主機板和大容量儲存裝置(如硬碟及光碟驅動器)之間的資料傳輸,主要用於個人電腦。

8. 複用(multiplexing):也稱為共享,在作業系統中主要指示了時間和空間的管理。對資源進行復用時,不同的程式或使用者輪流使用它。他們中的第一個開始使用資源,然後再使用另一個,依此類推。

9. 大型機(mainframes):大型機是一類計算機,通常以其大尺寸,儲存量,處理能力和高度的可靠性而著稱。它們主要由大型組織用於需要大量資料處理的關鍵任務應用程式。

10. 批處理(batch system): 批處理作業系統的使用者不直接與計算機進行互動。每個使用者都在打孔卡等離線裝置上準備工作,並將其提交給計算機操作員。為了加快處理速度,將具有類似需求的作業一起批處理併成組執行。程式設計師將程式留給操作員,然後操作員將具有類似要求的程式分批處理。

11. OS/360:OS/360,正式稱為IBM System / 360作業系統,是由 IBM 為 1964 年釋出的其當時新的System/360 大型機開發的已停產的批處理作業系統。

12. 多處理系統(Computer multitasking):是指計算機同時執行多個程式的能力。多工的一般方法是執行第一個程式的一段程式碼,儲存工作環境;再執行第二個程式的一段程式碼,儲存環境;……恢復第一個程式的工作環境,執行第一個程式的下一段程式碼。

13. 分時系統(Time-sharing):在計算中,分時是通過多程式和多工同時在許多使用者之間共享計算資源的一種系統

14. 相容分時系統(Compatible Time-Sharing System):最早的分時作業系統,由美國麻省理工學院計算機中心設計與實作。

15. 雲端計算(cloud computing):雲端計算是計算機系統資源(尤其是資料儲存和計算能力)的按需可用性,而無需使用者直接進行主動管理。這個術語通常用於描述 Internet 上可供許多使用者使用的資料中心。如今占主導地位的大型雲通常具有從中央伺服器分佈在多個位置的功能。如果與使用者的連線相對較近,則可以將其指定為邊緣伺服器。

16. UNIX 作業系統:UNIX 作業系統,是一個強大的多使用者、多工作業系統,支援多種處理器架構,按照作業系統的分類,屬於分時作業系統。

17. UNIX System V:是 UNIX 作業系統的一個分支。

18. BSD(Berkeley Software Distribution):UNIX 的衍生系統。

19. POSIX:可移植作業系統介面,是 IEEE 為要在各種 UNIX 作業系統上執行軟體,而定義API的一系列互相關聯的標準的總稱。

20. MINIX:Minix,是一個迷你版本的類 UNIX 作業系統。

21. Linux:終於到了大名鼎鼎的 Linux 作業系統了,太強大了,不予以解釋了,大家都懂。

22. DOS (Disk Operating System):磁碟作業系統(縮寫為DOS)是可以使用磁碟儲存裝置(例如軟盤,硬碟驅動器或光碟)的計算機作業系統。

23. MS-DOS(MicroSoft Disk Operating System) :一個由美國微軟公司發展的作業系統,執行在Intel x86個人電腦上。它是DOS作業系統家族中最著名的一個,在Windows 95以前,DOS是IBM PC及相容機中的最基本配備,而MS-DOS則是個人電腦中最普遍使用的DOS作業系統。

24. MacOS X,怎能少的了蘋果作業系統?macOS 是蘋果公司推出的基於圖形使用者介面作業系統,為 Macintosh 的主作業系統

25. Windows NT(Windows New Technology):是美國微軟公司 1993 年推出的純 32 位作業系統核心。

26. Service Pack(SP):是程式的更新、修復和(或)增強的集合,以一個獨立的安裝包的形式釋出。許多公司,如微軟或Autodesk,通常在為某一程式而做的修補程式達到一定數量時,就釋出一個Service Pack。

27. 數字版權管理(DRM):他是工具或技術保護措施(TPM)是一組訪問控制技術,用於限制對專有硬體和受版權保護的作品的使用。

28. x86:x86是一整套指令集體系結構,由 Intel 最初基於 Intel 8086 微處理器及其 8088 變體開發。採用記憶體分段作為解決方案,用於處理比普通 16 位地址可以覆蓋的更多記憶體。32 位是 x86 預設的位數,除此之外,還有一個 x86-64 位,是x86架構的 64 位拓展,向後兼容於 16 位及 32 位的 x86架構。

29. FreeBSD:FreeBSD 是一個類 UNIX 的作業系統,也是 FreeBSD 專案的發展成果。

30. X Window System:X 視窗系統(X11,或簡稱X)是用於點陣圖顯示的視窗系統,在類 UNIX 作業系統上很常見。

31. Gnome:GNOME 是一個完全由自由軟體組成的桌面環境。它的目標作業系統是Linux,但是大部分的 BSD 系統亦支援 GNOME。

32. 網路作業系統(network operating systems):網路作業系統是用於網路裝置(如路由器,交換機或防火牆)的專用作業系統。

31. Gnome:GNOME 是一個完全由自由軟體組成的桌面環境。它的目標作業系統是Linux,但是大部分的 BSD 系統亦支援 GNOME。

32. 網路作業系統(network operating systems):網路作業系統是用於網路裝置(如路由器,交換機或防火牆)的專用作業系統。

33. 分散式網路系統(distributed operating systems):分散式作業系統是在獨立,網路,通訊和物理上獨立計算節點的集合上的軟體。它們處理由多個CPU服務的作業。每個單獨的節點都擁有全域性集合作業系統的特定軟體的一部分。

34. 程式計數器(Program counter):程式計數器 是一個 CPU 中的暫存器,用於指示計算機在其程式序列中的位置

35. 堆疊暫存器(stack pointer):堆疊暫存器是計算機 CPU 中的暫存器,其目的是跟蹤呼叫堆疊

36. 程式狀態字(Program Status Word): 它是由作業系統維護的8個位元組(或64位)長的資料的集合。它跟蹤系統的當前狀態。

37. 流水線(Pipeline): 在計算世界中,管道是一組串聯連線的資料處理元素,其中一個元素的輸出是下一個元素的輸入。流水線的元素通常以並行或按時間分割的方式執行。通常在元素之間插入一定數量的緩衝區儲存。

38. 超標量(superscalar):超標量 CPU 架構是指在一顆處理器核心中實行了指令級併發的一類併發運算。這種技術能夠在相同的CPU主頻下實現更高的 CPU 流量。

39. 系統呼叫(system call):  指執行在使用者空間的程式向作業系統核心請求需要更高許可權執行的服務。系統呼叫提供使用者程式與作業系統之間的介面。大多數系統互動式操作需求在核心態執行。如裝置 IO 操作或者程序間通訊。40. 多執行緒(multithreading):是指從軟體或者硬體上實現多個執行緒併發執行的技術。具有多執行緒能力的計算機因為有硬體支援而能夠在同一時間執行多個執行緒,進而提升整體處理效能。41. CPU 核心(core):它是 CPU 的大腦,它接收指令,並執行計算或運算以滿足這些指令。一個 CPU 可以有多個核心。42. 圖形處理器(Graphics Processing Unit):又稱顯示核心、視覺處理器、顯示晶片或繪圖晶片;它是一種專門在個人電腦、工作站、遊戲機和一些移動裝置(如平板電腦、智慧手機等)上執行繪圖運算工作的微處理器。

43. 儲存體系結構:頂層的儲存器速度最高,但是容量最小,成本非常高,層級結構越向下,其訪問效率越慢,容量越大,但是造價也就越便宜。

44. 快取記憶體行(cache lines):其實就是把快取記憶體分割成了固定大小的塊,其大小是以突發讀或者突發寫週期的大小為基礎的。45. 快取命中(cache hit):當應用程式或軟體請求資料時,會首先發生快取命中。首先,中央處理單元(CPU)在其最近的記憶體位置(通常是主快取)中查詢資料。如果在快取中找到請求的資料,則將其視為快取命中。

46. L1 cache:一級快取是 CPU 晶片中內建的儲存庫。L1快取也稱為主快取,是計算機中最快的記憶體,並且最接近處理器。

47. L2 cache: 二級快取儲存庫,內建在 CPU 晶片中,包裝在同一模組中,或者建在主機板上。L2 快取記憶體提供給 L1 快取記憶體,後者提供給處理器。L2 記憶體比 L1 記憶體慢。

48. L3 cache: 三級快取內建在主機板上或CPU模組內的儲存庫。L3 快取記憶體為 L2 快取記憶體提供資料,其記憶體通常比 L2 記憶體慢,但比主記憶體快。L3 快取記憶體提供給 L2 快取記憶體,後者又提供給 L1 快取記憶體,後者又提供給處理器。

49. RAM((Random Access Memory):隨機存取儲存器,也叫主存,是與 CPU 直接交換資料的內部儲存器。它可以隨時讀寫,而且速度很快,通常作為作業系統或其他正在執行中的程式的臨時資料儲存介質。RAM工作時可以隨時從任何一個指定的地址寫入(存入)或讀出(取出)資訊。它與 ROM 的最大區別是資料的易失性,即一旦斷電所儲存的資料將隨之丟失。RAM 在計算機和數字系統中用來暫時儲存程式、資料和中間結果。

50. ROM (Read Only Memory):只讀儲存器是一種半導體儲存器,其特性是一旦儲存資料就無法改變或刪除,且內容不會因為電源關閉而消失。在電子或電腦系統中,通常用以儲存不需經常變更的程式或資料。

51. EEPROM (Electrically Erasable PROM):電可擦除可程式設計只讀儲存器,是一種可以通過電子方式多次複寫的半導體儲存裝置。

52. 快閃記憶體(flash memory):是一種電子式可清除程式化只讀儲存器的形式,允許在操作中被多次擦或寫的儲存器。這種科技主要用於一般性資料儲存,以及在電腦與其他數字產品間交換傳輸資料,如儲存卡與U盤。

53. SSD(Solid State Disks):固態硬碟,是一種主要以快閃記憶體作為永久性儲存器的電腦儲存裝置。

54. 虛擬地址(virtual memory):虛擬記憶體是計算機系統記憶體管理的一種機制。它使得應用程式認為它擁有連續可用的記憶體(一個連續完整的地址空間),而實際上,它通常是被分隔成多個實體記憶體碎片,還有部分暫時儲存在外部磁碟儲存器上,在需要時進行資料交換。與沒有使用虛擬記憶體技術的系統相比,使用這種技術的系統使得大型程式的編寫變得更容易,對真正的實體記憶體(例如RAM)的使用也更有效率。

55. MMU (Memory Management Unit):記憶體管理單元,有時稱作分頁記憶體管理單元。它是一種負責處理中央處理器(CPU)的記憶體訪問請求的計算機硬體。它的功能包括虛擬地址到實體地址的轉換(即虛擬記憶體管理)、記憶體保護、中央處理器快取記憶體的控制等。

56. context switch:上下文切換,又稱環境切換。是一個儲存和重建 CPU 狀態的機制。要交換 CPU 上的程序時,必需先行儲存當前程序的狀態,然後再將程序狀態讀回 CPU 中。

57. 驅動程式(device driver):裝置驅動程式,簡稱驅動程式(driver),是一個允許高級別電腦軟體與硬體互動的程式,這種程式建立了一個硬體與硬體,或硬體與軟體溝通的介面,經由主機板上的匯流排或其它溝通子系統與硬體形成連線的機制,這樣使得硬體裝置上的資料交換成為可能。

58. 忙等(busy waiting):在軟體工程中,忙碌等待也稱自旋,是一種以程序反覆檢查一個條件是否為真的條件,這種機制可能為檢查鍵盤輸入或某個鎖是否可用。

59. 中斷(Interrupt):通常,在接收到來自外圍硬體(相對於中央處理器和記憶體)的非同步訊號,或來自軟體的同步訊號之後,處理器將會進行相應的硬體/軟體處理。發出這樣的訊號稱為進行中斷請求(interrupt request,IRQ)。硬體中斷導致處理器通過一個執行資訊切換(context switch)來儲存執行狀態(以程式計數器和程式狀態字等暫存器資訊為主);軟體中斷則通常作為 CPU 指令集中的一個指令,以可程式設計的方式直接指示這種執行資訊切換,並將處理導向一段中斷處理程式碼。中斷在計算機多工處理,尤其是即時系統中尤為有用。

60. 中斷向量(interrupt vector):中斷向量位於中斷向量表中。中斷向量表(IVT)是將中斷處理程式列表與中斷向量表中的中斷請求列表相關聯的資料結構。中斷向量表的每個條目(稱為中斷向量)都是中斷處理程式的地址。

61. DMA (Direct Memory Access):直接記憶體訪問,直接記憶體訪問是電腦科學中的一種記憶體訪問技術。它允許某些電腦內部的硬體子系統(電腦外設),可以獨立地直接讀寫系統記憶體,而不需中央處理器(CPU)介入處理 。

62. 匯流排(Bus):匯流排(Bus)是指計算機元件間規範化的交換資料的方式,即以一種通用的方式為各元件提供資料傳送和控制邏輯。

63. PCIe (Peripheral Component Interconnect Express):官方簡稱PCIe,是計算機匯流排的一個重要分支,它沿用現有的PCI程式設計概念及訊號標準,並且構建了更加高速的序列通訊系統標準。

64. DMI (Direct Media Interface):直接媒體介面,是英特爾專用的匯流排,用於電腦主機板上南橋晶片和北橋晶片之間的連線。

65. USB(Universal Serial Bus):是連線計算機系統與外部裝置的一種串列埠匯流排標準,也是一種輸入輸出介面的技術規範,被廣泛地應用於個人電腦和移動裝置等資訊通訊產品,並擴充套件至攝影器材、數字電視(機頂盒)、遊戲機等其它相關領域。

66. BIOS(Basic Input Output System):是在通電引導階段執行硬體初始化,以及為作業系統提供執行時服務的韌體。它是開機時執行的第一個軟體。

67. 硬實時系統(hard real-time system):硬實時性意味著你必須絕對在每個截止日期前完成任務。很少有系統有此要求。例如核系統,一些醫療應用(例如起搏器),大量國防應用,航空電子裝置等。

68. 軟實時系統(soft real-time system):軟實時系統可能會錯過某些截止日期,但是如果錯過太多,最終效能將下降。一個很好的例子是計算機中的聲音系統。

69. 程序(Process):程式本身只是指令、資料及其組織形式的描述,程序才是程式(那些指令和資料)的真正執行例項。若程序有可能與同一個程式相關係,且每個程序皆可以同步(循序)或非同步的方式獨立執行。

70. 地址空間(address space):地址空間是記憶體中可供程式或程序使用的有效地址範圍。也就是說,它是程式或程序可以訪問的記憶體。儲存器可以是物理的也可以是虛擬的,用於執行指令和儲存資料。

71. 程序表(process table):程序表是作業系統維護的資料結構,該表中的每個條目(通常稱為上下文塊)均包含有關程序的資訊,例如程序名稱和狀態,優先順序,暫存器以及它可能正在等待的訊號燈。

72. 命令列介面(command-line interpreter):是在圖形使用者介面得到普及之前使用最為廣泛的使用者介面,它通常不支援滑鼠,使用者通過鍵盤輸入指令,計算機接收到指令後,予以執行。

73. 程序間通訊(interprocess communication):指至少兩個程序或執行緒間傳送資料或訊號的一些技術或方法。

74. 超級使用者(superuser):也被稱為管理員帳戶,在計算機作業系統領域中指一種用於進行系統管理的特殊使用者,其在系統中的實際名稱也因系統而異,如 root、administrator 與supervisor。

75. 目錄(directory):  在計算機或相關裝置中,一個目錄或資料夾就是一個裝有數字檔案系統的虛擬容器。在它裡面儲存著一組檔案和其它一些目錄。

76. 路徑(path name):路徑是一種電腦檔案或目錄的名稱的通用表現形式,它指向檔案系統上的一個唯一位置。

77. 根目錄(root directory):根目錄指的就是計算機系統中的頂層目錄,比如 Windows 中的 C 盤和 D 盤,Linux 中的 /

78. 工作目錄(Working directory):它是一個計算機用語。使用者在作業系統內所在的目錄,使用者可在此目錄之下,用相對檔名訪問檔案。

79. 檔案描述符(file descriptor):檔案描述符是電腦科學中的一個術語,是一個用於表述指向檔案的引用的抽象化概念。

80. inode:索引節點的縮寫,索引節點是 UNIX 系統中包含的資訊,其中包含有關每個檔案的詳細資訊,例如節點,所有者,檔案,檔案位置等。

81. 共享庫(shared library):共享庫是一個包含目的碼的檔案,執行過程中多個 a.out 檔案可能會同時使用該目的碼。

82. DLLs (Dynamic-Link Libraries):動態連結庫,它是微軟公司在作業系統中實現共享函式庫概念的一種實現方式。這些庫函式的副檔名是 .DLL、.OCX(包含ActiveX控制的庫)或者.DRV(舊式的系統驅動程式)。

83. 客戶端(clients):客戶端是訪問伺服器提供的服務的計算機硬體或軟體。

84. 服務端(servers):在計算中,伺服器是為其他程式或裝置提供功能的計算機程式或裝置,稱為服務端

85. 主從架構(client-server):主從式架構也稱客戶端/伺服器架構、C/S 架構,是一種網路架構,它把客戶端與伺服器區分開來。每一個客戶端軟體的例項都可以向一個伺服器或應用程式伺服器發出請求。有很多不同型別的伺服器,例如檔案伺服器、遊戲伺服器等。

86. 虛擬機器(Virtual Machines):在電腦科學中的體系結構裡,是指一種特殊的軟體,可以在計算機平臺和終端使用者之間建立一種環境,而終端使用者則是基於虛擬機器這個軟體所建立的環境來操作其它軟體。

87. Java 虛擬機器(Java virtual Machines):Java虛擬機器有自己完善的硬體架構,如處理器、堆疊、暫存器等,還具有相應的指令系統。JVM遮蔽了與具體作業系統平臺相關的資訊,使得Java程式只需生成在Java虛擬機器上執行的目的碼(位元組碼),就可以在多種平臺上不加修改地執行。

88. 目標檔案(object file):目標檔案是包含目的碼的檔案,這意味著通常無法直接執行的可重定位格式的機器程式碼。目標檔案有多種格式,相同的目的碼可以打包在不同的目標檔案中。目標檔案也可以像共享庫一樣工作。

89. C preprocessor:C 前處理器是 C 語言、C++ 語言的前處理器。用於在編譯器處理程式之前預掃描原始碼,完成標頭檔案的包含, 巨集擴充套件, 條件編譯, 行控制等操作。

90. 裝置控制器(device controller):裝置控制器是處理 CPU 傳入訊號和傳出訊號的系統。裝置通過插頭和插座連線到計算機,並且插座連線到裝置控制器。

91. ECC(Error-Correcting Code):指能夠實現錯誤檢查和糾正錯誤技術的記憶體。

92. I/O port: 也被稱為輸入/輸出埠,它是由軟體用來與計算機上的硬體進行通訊的記憶體地址。

93. 記憶體對映I/O(memory mapped I/O,MMIO): 記憶體對映的 I/O 使用相同的地址空間來定址記憶體和 I/O 裝置,也就是說,記憶體對映I/O 裝置共享同一記憶體地址。

94. 埠對映I/O(Port-mapped I/O ,PMIO):在 PMIO中,記憶體和I/O裝置有各自的地址空間。埠對映I/O通常使用一種特殊的CPU指令,專門執行I/O操作。

95. DMA(Direct Memory Access):直接記憶體訪問,它是計算機系統的一項功能,它允許某些硬體系統能夠獨立於 CPU 訪問記憶體。如果沒有 DMA,當 CPU 執行輸入/輸出指令時,它通常在讀取或寫入操作的整個過程中都被完全佔用,因此無法執行其他工作。使用 DMA 後,CPU 首先啟動傳輸訊號,然後在進行傳輸時執行其他操作,最後在完成操作後從 DMA 控制器(DMAC)接收中斷。完成執行。

96. 週期竊取(cycle stealing):許多匯流排能夠以兩種模式操作:每次一字模式和塊模式。一些 DMA 控制器也能夠使用這兩種方式進行操作。在前一個模式中,DMA 控制器請求傳送一個字並得到這個字。如果 CPU 想要使用匯流排,它必須進行等待。裝置可能會偷偷進入並且從 CPU 偷走一個匯流排週期,從而輕微的延遲 CPU。它類似於直接記憶體訪問(DMA),允許I / O控制器在無需 CPU 干預的情況下讀取或寫入RAM。

97. 突發模式(burst mode):指的是裝置在不進行單獨事務中重複傳輸每個資料所需的所有步驟的情況下,重複傳輸資料的情況。

98. 中斷向量表(interrupt vector table):用來形成相應的中斷服務程式的入口地址或存放中斷服務程式的首地址稱為中斷向量。中斷向量表是中斷向量的集合,中斷向量是中斷處理程式的地址。

99. 精確中斷(precise interrupt):精確中斷是一種能夠使機器處於良好狀態下的中斷,它具有如下特徵

PC (程式計數器)儲存在一個已知的地方PC 所指向的指令之前所有的指令已經完全執行PC 所指向的指令之後所有的指令都沒有執行PC 所指向的指令的執行狀態是已知的100. 非精確中斷(imprecise interrupt):不滿足以上要求的中斷,指令的執行時序和完成度具有不確定性,而且恢復起來也非常麻煩。101. 裝置獨立性(device independence):我們編寫訪問任何裝置的應用程式,不用事先指定特定的裝置。比如你編寫了一個能夠從裝置讀入檔案的應用程式,那麼這個應用程式可以從硬碟、DVD 或者 USB 進行讀入,不必再為每個裝置定製應用程式。這其實就體現了裝置獨立性的概念。

102. UNC(Uniform Naming Convention) :UNC 是統一命名約定或統一命名約定的縮寫,是用於命名和訪問網路資源(例如網路驅動器,印表機或伺服器)的標準。例如,在 MS-DOS 和 Microsoft Windows 中,使用者可以通過鍵入或對映到類似於以下示例的共享名來訪問共享資源。

\\computer\path 然而,在 UNIX 和 Linux 中,你會像如下這麼寫//computer/path

103. 掛載(mounting) :掛載是指作業系統會讓儲存在硬碟、CD-ROM 等資源裝置上的目錄和檔案,通過檔案系統能夠讓使用者訪問的過程。

104. 錯誤處理(Error handling):錯誤處理是指對軟體應用程式中存在的錯誤情況的響應和恢復過程。

105. 同步阻塞(synchronous):同步是阻塞式的,CPU 必須等待同步的處理結果。

106. 非同步響應(asynchronous):非同步是由中斷驅動的,CPU 不用等待每個操作的處理結果繼而執行其他操作

107. 緩衝區(buffering):緩衝區是記憶體的臨時儲存區域,它的出現是為了加快記憶體的訪問速度而設計的。對於經常訪問的資料和指令來說,CPU 應該訪問的是緩衝區而非記憶體

108. Programmed input–output,PIO:它指的是在 CPU 和外圍裝置(例如網路介面卡或 ATA 儲存裝置)之間傳輸資料的一種方法。

109. 輪詢(polling):輪詢是指通過客戶端程式主動通過對每個裝置進行訪問來獲得同步狀態的過程。

110. 忙等(busy waiting):當一個程序正處在某臨界區內,任何試圖進入其臨界區的程序都必須等待,陷入忙等狀態。連續測試一個變數直到某個值出現為止,稱為忙等。

111. 可重入(reentrant):如果一段程式或者程式碼在任意時刻被中斷後由作業系統呼叫其他程式或者程式碼,這段程式碼呼叫子程式並能夠正確執行,這種現象就稱為可重入。也就是說當該子程式正在執行時,執行執行緒可以再次進入並執行它,仍然獲得符合設計時預期的結果。

112. 主裝置編號(major device number)、副裝置編號(minor device number) :所有裝置都有一個主,副號碼。主號碼是更大,更通用的類別(例如硬碟,輸入/輸出裝置等),而次號碼則更具體(即告訴裝置連線到哪條匯流排)。

113. 多重緩衝區(double buffering):它指的是使用多個緩衝區來儲存資料塊,每個緩衝區都保留資料塊的一部分,讀取的時候通過讀取多個緩衝區的資料進而拼湊成一個完整的資料。

114. 環形緩衝區(circular buffer):它指的是首尾相連的緩衝區,常用來實現資料緩衝流。

115. 假離線(Spooling) :假離線是多程式的一種特殊形式,目的是在不同裝置之間複製資料。 在現代系統中,通常用於計算機應用程式和慢速外圍裝置(例如印表機)之間的中介。

116. 守護程序(Daemon):在計算機中,守護程式是作為後臺程序執行的計算機程式,而不是在互動式使用者的直接控制下執行的程式。

117. 邏輯塊定址(logical block addressing, LBA):邏輯塊定址是一種通用方案,用於指定儲存在計算機儲存裝置上的資料塊的位置。

118. RAID:全稱是 Redundant Array of Inexpensive Disks ,廉價磁碟或驅動器的冗餘陣列,它是一種資料儲存虛擬化的技術,將多個物理磁碟驅動器元件組合成一個或多個邏輯單元,以實現資料冗餘,改善效能。

119. MBR(Master Boot Record):主引導記錄(MBR)是任何硬碟或軟盤的第一扇區中的資訊,用於標識作業系統的放置方式和位置,以便可以將其載入到計算機的主儲存器或隨機存取儲存器中。

120. FCFS (First-Come, First-Served):先進先出的排程演算法,也就是說,首先到達  CPU 的程序首先進行服務。

121. SSF (Shortest Seek First) 最短路徑優先演算法,這是對先進先出演算法的改進,這種演算法因為減少了總的磁臂運動,從而縮短了平均響應時間。

122. 穩定儲存(stable storage):它是計算機儲存技術的一種分類,該技術可確保任何給定的寫操作都具有原子性。

123. 時鐘(Clocks):也被稱為 timers。通常,時鐘是指調節所有計算機功能的時序和速度的微晶片。晶片中是一個晶體,當通電時,晶體會以特定的頻率振動。任何一臺計算機能夠執行的最短時間是一個時鐘或時鐘晶片的一次振動。

124. QR Code:二維碼的一種,它的全稱是快速響應矩陣圖碼,能夠快速響應。一般應用於手機讀碼操作,國內火車票上的二維碼就是 QR 碼。

125. 顯示卡(Video card),是個人電腦最基本組成部分之一,用途是將計算機系統所需要的顯示資訊進行轉換驅動顯示器,並向顯示器提供逐行或隔行掃描訊號,控制顯示器的正確顯示,是連線顯示器和個人電腦主機板的重要元件,是人機對話的重要裝置之一。

126. GDI (Graphics Device Interface):圖形介面,是微軟視窗系統提供的應用程式介面,也是其用來表徵圖形物件、將圖形物件傳送給諸如顯示器、印表機之類輸出裝置的核心元件。

127. 裝置上下文(device context):裝置上下文是 Windows 資料結構,其中包含有關裝置(例如顯示器或印表機)的圖形屬性的資訊。所有繪圖呼叫都是通過裝置上下文物件進行的,該物件封裝了用於繪製線條,形狀和文字的 Windows API。裝置上下文可用於繪製到螢幕,印表機或圖元檔案。

128. 點陣圖(bitmap):在計算機中,點陣圖是從某個域(例如,整數範圍)到位的對映。也稱為位陣列或點陣圖索引。

129. 電阻式觸控式螢幕(Resistive touchscreens):電阻式觸控式螢幕基於施加到螢幕上的壓力來工作。電阻屏由許多層組成。當按下螢幕時,外部的後面板將被推到下一層,下一層會感覺到施加了壓力並記錄了輸入。電阻式觸控式螢幕用途廣泛,可以用手指,指甲,手寫筆或任何其他物體進行操作。

130. 電容式觸控式螢幕(capacitive touchscreen):電容式觸控式螢幕通過感應物體(通常是指尖上的面板)的導電特性來工作。手機或智慧手機上的電容屏通常具有玻璃表面,並且不依賴壓力。當涉及到手勢(如滑動和捏合)時,它比電阻式螢幕更具響應性。電容式觸控式螢幕只能用手指觸控,而不能用普通的手寫筆,手套或大多數其他物體來響應。

131. 死鎖(deadlock):死鎖常用於併發情況下,死鎖 是一種狀態,死鎖中的每個成員都在等待另一個成員(包括其自身)採取行動。

 132. 可搶佔資源(preemptable resource):可以從擁有它的程序中搶佔而並不會產生任何副作用。133. 不可搶佔資源(nonpreemptable resource):與可搶佔資源相反,如果資源被搶佔後,會導致程序或任務出錯。134. 系統檢查點(system checkpointed):系統檢查點是作業系統(OS)的可啟動例項。檢查點是計算機在特定時間點的快照。135. 兩階段加鎖(two-phase locking, 2PL):經常用於資料庫的併發控制,以保證可序列化

這種方法使用資料庫鎖在兩個階段:

  • 擴張階段:不斷上鎖,沒有鎖被釋放

  • 收縮階段:鎖被陸續釋放,沒有新的加鎖

136. 活鎖(Livelock):活鎖類似於死鎖,不同之處在於,活鎖中僅涉及程序的狀態彼此之間不斷變化,沒有進展。舉一個現實世界的例子,當兩個人在狹窄的走廊裡相遇時,就會發生活鎖,每個人都試圖通過移動到一邊讓對方通過而禮貌,但最終卻沒有任何進展就左右搖擺,因為他們總是同時移動相同的方式。

137. 飢餓(starvation):在死鎖或者活鎖的狀態中,在任何時刻都可能請求資源,雖然一些排程策略能夠決定一些程序在某一時刻獲得資源,但是有一些程序永遠無法獲得資源。永遠無法獲得資源的程序很容易產生飢餓

138. 沙盒(sandboxing):沙盒是一種軟體管理策略,可將應用程式與關鍵系統資源和其他程式隔離。它提供了一層額外的安全保護,可防止惡意軟體或有害應用程式對你的系統造成負面影響。

139. VMM (Virtual Machine Monitor):也被稱為 hypervisor,在同一個物理機器上創建出來多型虛擬機器器的假象。

140. 虛擬化技術(virtualization):是一種資源管理技術,將計算機的各種實體資源(CPU、記憶體、磁碟空間、網路介面卡等),進行抽象、轉換後呈現出來並可供分割、組合為一個或多個電腦配置環境。

141. 雲(cloud):雲是目前虛擬機器最重要、最時髦的玩法。

142. 直譯器(interpreter):直譯器是一種程式,能夠把程式語言一行一行解釋執行。每次執行程式時都要先轉成另一種語言再執行,因此直譯器的程式執行速度比較緩慢。它不會一次把整個程式翻譯出來,而是每翻譯一行程式敘述就立刻執行,然後再翻譯下一行,再執行,如此不停地進行下去。

143. 半虛擬化(paravirtualization):半虛擬化的目的不是呈現出一個和底層硬體一摸一樣的虛擬機器,而是提供一個軟體介面,軟體介面與硬體介面相似但又不完全一樣。

144. 全虛擬化(full virtualization):全虛擬化是硬體虛擬化的一種,允許未經修改的客作業系統隔離執行。對於全虛擬化,硬體特徵會被對映到虛擬機器上,這些特徵包括完整的指令集、I/O操作、中斷和記憶體管理等。

145. 客戶作業系統(guest operating system) : 客戶作業系統是安裝在計算機上作業系統之後的作業系統,客戶作業系統既可以是分割槽系統的一部分,也可以是虛擬機器設定的一部分。客戶作業系統為裝置提供了備用作業系統。

146. 主機作業系統(host operating system):主機作業系統是計算機系統的硬碟驅動器上安裝的主要作業系統。在大多數情況下,只有一個主機作業系統。

147. 應用程式設計介面(Application Programming Interface,API):應用程式程式設計介面(API)是軟體元件或系統的程式設計介面,它定義其他元件或系統如何使用它。

148. 虛擬機器介面(Virtual Machine Interface, VMI):它是一個高速介面,同一主機上的虛擬機器(VM)可用於相互之間以及主機核心模組之間進行通訊。

149. 輸入輸出記憶體管理單元(Input–output memory management unit, I/O MMU):在計算機中,輸入輸出記憶體管理單元(IOMMU)是將直接記憶體訪問(DMA)I / O 匯流排連線到主存的記憶體管理單元(MMU)。

150. 裝置穿透(device pass through):它允許將物理裝置直接分配給特定虛擬機器。

151. 裝置隔離(device isolation): 保證裝置可以直接訪問其分配到的虛擬機器的記憶體而不影響其他虛擬機器的完整性。

152. 基礎設施即服務(IAAS (Infrastructure As A Service)):基礎架構即服務(IaaS)是一種即時計算基礎架構,可通過 Internet 進行配置和管理。它是四種雲服務型別之一,另外還有軟體即服務(SaaS),平臺即服務(PaaS)和無伺服器。

153. 平臺即服務(PAAS (Platform As A Service)):平臺即服務(PaaS)或應用程式平臺即服務(aPaaS)或基於平臺的服務是雲端計算服務的一種,它提供了一個平臺,使客戶可以開發,執行和管理應用程式,而無需構建和維護該應用程式。

154. 軟體即服務(SAAS(Software As A Service)): 它是一個提供特定軟體服務訪問的平臺,是一種軟體許可和交付模型,在該模型中,軟體是基於訂閱許可的,並且是集中託管的。

155. 實時遷移(live migration):實時遷移是指在不斷開客戶端或應用程式連線的情況下,在不同的物理機之間移動正在執行的虛擬機器或應用程式的過程,一般經常採用的方式是記憶體預複製遷移

156. 寫入時複製(copy on write):寫入時複製是一種計算機程式設計領域的優化策略。其核心思想是,如果有多個呼叫者(callers)同時請求相同資源(如記憶體或磁碟上的資料儲存),他們會共同獲取相同的指標指向相同的資源,直到某個呼叫者試圖修改資源的內容時,系統才會真正複製一份專用副本(private copy)給該呼叫者,而其他呼叫者所見到的最初的資源仍然保持不變

157. 主從模型(master-slave):主/從是一種不對稱通訊或控制的模型,其中一個裝置程序控制一個或多個其他裝置或程序並充當其通訊中心。在某些系統中,從一組合格的裝置中選擇一個主裝置,而其他裝置則充當從裝置的角色。

158. 分散式系統(distributed system):分散式系統,也稱為分散式計算,是一種具有位於不同機器上的多個元件的系統,這些元件可以通訊和協調動作,以便對終端使用者顯示為單個一致的系統。

159. 區域網(LANs, Local Area Networks):區域網(LAN)是一種計算機網路,可將住宅,學校,實驗室,大學校園或辦公大樓等有限區域內的計算機互連。

160. 廣域網(WAN,Wide Area Network):又稱廣域網、外網、公網。是連線不同地區區域網或都會網路計算機通訊的遠端網。通常跨接很大的物理範圍,所覆蓋的範圍從幾十公里到幾千公里,它能連線多個地區、城市和國家,或橫跨幾個洲並能提供遠距離通訊,形成國際性的遠端網路。

161. 乙太網(Ethernet):乙太網是一種計算機區域網的技術,它規定了包括物理層的連線、電子訊號和介質訪問層協議的內容。

162. 橋接器(bridge):當指代計算機時,網橋是連線兩個 LAN(區域網)或同一 LAN 的兩個網段的裝置。與路由器不同,網橋是獨立於協議的。他們轉發資料包時無需分析和重新路由訊息。

163. 主機(host):在網路硬體中,主機又被稱為網路主機,網路主機是連線到計算機網路的計算機或其他裝置。主機可以充當伺服器,向網路上的使用者或其他主機提供資訊資源,服務和應用程式。主機被分配至少一個網路地址。

164. 路由器(router):路由器是在計算機網路之間轉發資料包的聯網裝置。通過網際網路傳送的資料(例如網頁或電子郵件)以資料包的形式出現。

165. 面向連線的服務(Connection-oriented service):面向連線的服務是一種在資料通訊開始之前在通訊實體之間建立專用連線的服務。要使用面向連線的服務,使用者首先建立一個連線,使用它,然後釋放它。TCP 就是一種面向連線的服務,在傳送資料包之前需要經過握手操作。

166. 無連線的服務(Connectionless service):無連線服務是兩個節點之間的資料通訊,其中傳送方在不確保接收方是否可以接收資料的情況下發送資料。此處,每個資料包都具有目標地址,並且與其他資料包無關地獨立路由。UDP 就是一種無連線的服務,傳送資料包不需要經過握手連線。

167. 服務質量(quality of service, QoS):服務質量是對服務整體效能的描述或度量,尤其是網路使用者看到的效能。

168. 確認包(acknowledgement packet):在資料網路,電信和計算機匯流排中,確認(ACK)是作為通訊協議一部分在通訊過程,計算機或裝置之間傳遞以表示確認或訊息接收的訊號。

169. 請求-響應服務(request-reply service):請求-響應是計算機彼此通訊的基本方法之一,其中第一臺計算機發送對某些資料的請求,第二臺計算機對請求進行響應。

170. 協議棧(protocol stack):所有現代網路都使用所謂的協議棧把不同的協議一層一層疊加起來。每一層解決不同的問題。

171. IP地址:標示網際網路上每一臺主機有兩種方式,一種是 IPv4 ,一種是 IPv6。

172. 超連結(hyperlink):超連結是可以單擊以跳到新文件或當前文件中新部分的單詞,短語或影象。幾乎在所有網頁中都可以找到超連結,從而允許使用者單擊頁面之間的方式。文字超連結通常為藍色並帶有下劃線。

173. Web 頁面(Web page):網頁是一個適用於全球資訊網和網頁瀏覽器的檔案。

174. Web瀏覽器:Web瀏覽器(通常稱為瀏覽器)是一種用於訪問 Internet 上的資訊的軟體應用程式。當用戶請求特定網站時,Web 瀏覽器從 Web 伺服器檢索必要的內容,然後在使用者的裝置上顯示結果網頁。

175. 漏洞(vulnerability):漏洞是一種系統不安全級別的錯誤。

176. 漏洞利用(exploit):漏洞利用是電腦保安術語,指的是利用程式中的某些漏洞,來得到計算機的控制權。

177. 病毒(virus):計算機病毒是一種計算機程式,在執行時會通過修改其他計算機程式並插入自己的程式碼來自我複製。複製成功後,可以說受影響的區域已被計算機病毒感染

 178. CIA(Confidentiality,Integrity,Availability):安全系統的三個指標,即機密性、完整性和可用性。
179. 黑客(cracker):黑客是指經常通過網路闖入他人計算機系統的人。繞過計算機程式中的密碼或許可證;或以其他方式故意破壞電腦保安性。黑客可能會出於惡意,出於某些利他目的或原因,或者是因為存在挑戰而牟取暴利。表面上已經進行了一些破解和輸入,以指出站點安全系統中的弱點。

180. 埠掃描(portscan):埠掃描程式是一種旨在探測伺服器或主機是否存在開放埠的應用程式。管理員可以使用這種應用程式來驗證其網路的安全策略,攻擊者可以使用這種應用程式來識別主機上執行的網路服務並利用漏洞。

181. 殭屍網路(botnets):殭屍網路是指駭客利用自己編寫的分散式拒絕服務攻擊程式將數萬個淪陷的機器,即駭客常說的傀儡機或肉雞

182. 域(domain):網域名稱,簡稱域名、網域,是由一串用點分隔的字元組成的網際網路上某一臺計算機或計算機組的名稱,用於在資料傳輸時標識計算機的電子方位。

183. 鹽(solt):在密碼學中,鹽是隨機資料,用作雜湊資料,密碼或密碼的單向函式的附加輸入。

184. 邏輯炸彈(logic bomb) :是一些嵌入在正常軟體中並在特定情況下執行的惡意程式碼。這些特定情況包括更改檔案、特別的程式輸入序列、特定的時間或日期等。惡意程式碼可能會將檔案刪除、使電腦主機當機或是造成其他的損害。

185. 定時炸彈(time bomb):在計算機軟體中,定時炸彈是已編寫的計算機程式的一部分,因此它會在達到預定的日期或時間後開始或停止執行。

186. 登陸欺騙(login spoofing):登入欺騙是用於竊取使用者密碼的技術。它會向用戶顯示一個普通的登入提示,提示使用者名稱和密碼,這實際上是一個惡意程式,通常在攻擊者的控制下稱為特洛伊木馬。

187. 後門程式(backdoor):軟體後門指繞過軟體的安全性控制,從比較隱祕的通道獲取對程式或系統訪問權的黑客方法。

188. 防火牆(firewall):防火牆在電腦科學領域中是一個架設在網際網路與企業內網之間的資訊安全系統,根據企業預定的策略來監控往來的傳輸。

來自公眾號:Java建設者  Linux