軟件評測師知識點

《軟件評測師筆記》程序員

2章.軟件測試基礎web

1.軟件測試的經典定義:在規定條件下對程序進行操做,以發現錯誤,對軟件進行質量評估;算法

軟件是由文檔、數據和程序組成;數據庫

2.軟件測試的目的:一、提升軟件質量;二、下降項目風險;三、把軟件的錯誤控制在能夠進行產品發佈或交付的程度上;編程

3.軟件質量的概念:軟件知足規定或者潛在用戶需求的能力,要從軟件在內部、外部和使用中的表現來衡量。設計模式

4.質量保證(QA)和軟件測試的不一樣:QA是要經過預防、檢查與改進來保證軟件質量,重點在過程的跟進中;軟件測試的重點不在於此,而是要對過程的產物-開發文本和源代碼進行走查,運行軟件,以找出問題,報告質量。數組

5.軟件測試的原則:瀏覽器

       5.1 全部的軟件測試都應追溯到用戶需求安全

       5.2儘早地和不斷地進行軟件測試服務器

       5.3 徹底測試是不可能的,測試須要終止

       5.4 測試沒法顯示軟件潛在的缺陷

       5.5 充分注意測試中的羣集現象

       5.6 程序員應避免檢查本身的程序

       5.7 儘可能避免測試的隨意性

6.軟件測試不可能無休止地測下去,緣由在於:一、輸入數據太多;二、輸出結果太多;三、組合路徑太多。

7.軟件測試的分類

       7.1按照軟件開發階段分:單元測試(也叫模塊測試)、集成測試(組裝測試)、確認測試、系統測試和驗收測試。

       7.2按照測試實施組織劃分:開發方測試(也叫驗證測試,阿爾法測試)、用戶測試(貝塔測試)和第三方測試(獨立測試);

       7.3按照測試技術劃分:白盒測試、黑盒測試和灰盒測試;按照測試技術也可劃分:靜態測試和動態測試。

8.軟件開發階段的測試:

       8.1 單元測試(又叫模塊測試)

              單元測試的內容:一、模塊接口;二、局部數據結構測試;三、路徑測試;四、錯誤處理測試;五、邊界測試

              單元測試用到的輔助模塊:驅動模塊(所測模塊的主程序)和樁模塊(存根模塊)

       8.2 集成測試(又叫組裝測試或聯合測試)

              模塊組裝成爲系統的方式有兩種:一次性組裝方式(又叫總體拼裝)和增殖式組裝方式;

              增殖式組裝方式(又叫漸增式組裝方式)又分兩種:自頂向下的增殖方式(創建較多的樁模塊)、自底向上的增殖方式(創建較多的驅動模塊)和混合增殖方式;

       8.3 確認測試

              確認測試的內容:進行有效性測試和軟件配置複查。

       8.4 系統測試

       系統測試是爲驗證和確認系統是否達到其原始目標,而對集成的硬件和軟件系統進行的測試,系統測試是在真實或模擬系統運行的環境下,檢查完整的程序系統可否和系統(包括硬件、外設、網絡和系統軟件、支持平臺等)正確配置、鏈接、並知足用戶需求。

       8.5 驗收測試

驗收測試是以用戶爲主,軟件開發人員和質量保證人員也應參加的測試。根據軟件需求和驗收要求編制測試計劃,制定需測試的測試項,制定測試策略及驗收經過準則。根據《驗收測試計劃》和《項目驗收準則》編制測試用例,並通過評審。驗收測試通常在用戶的實際生產環境中進行,使用生產中的實際數據進行測試。

9.軟件測試模型:

       9.1 V模型,其侷限性表如今把測試做爲軟件開發的最後一個階段,是串行完成的;主要是針對程序進行測試尋找錯誤,而需求分析階段隱藏的問題到後期的驗收測試才被發現;

       9.2 W模型,優勢是測試與開發過程是同步進行的,有利於測試的及早介入與執行;缺點是對開發階段須要有明確的起點和終點,這點在實際狀況中很難作到這點;

       9.3 H模型,優勢在於表現出來不一樣測試的測試活動能夠是按照某個次序前後進行的,但也多是反覆的。只要測試條件成熟了,測試準備活動完成了,測試執行活動就能夠進行了。

       9.4 X模型, 針對單獨程序片斷進行互相分離的編碼和測試,以後頻繁的交接經過集成最終合成爲可執行的程序。

       9.5 前置模型, 特色:將開發和測試的生命週期整合在一塊兒,對每個交付的開發結果都進行必定方式的測試,設計階段是作測試計劃和測試設計的最好時機,程序片斷一旦編寫完成就會當即進行測試,讓驗收測試和技術測試保持相互獨立。

10.測試模型的使用:靈活運用各類模型的優勢,在W模型的框架下運行H模型的思想進行獨立測試,並同時將測試和開發緊密結合,尋找恰當的就緒點開始測試並反覆迭代測試,最終保證按其完成預訂目標。

11.V&V

       11.1 V&V的基本概念:驗證(經過檢查和提供客觀證據,證明規定的需求已知足)和確認(經過檢查和提供客觀證據,證明預期用途的需求是否獲得知足)

       11.2 每一個V&V活動都有輸入、任務和輸出

       11.3 GB/T 18905.5 中規定的開發過程當中的軟件測試過程包括:測試計劃過程(包括測試計劃和測試需求)->測試設計過程(包括測試說明和測試方案)->測試執行過程(測試用例和測試規程)->測試結束過程(測試結論和測試報告)。

12.軟件失效

       12.1 軟件錯誤(software error)、軟件缺陷(software defect)、軟件故障(software fault)和 軟件失效(software failure)區分之間的差異,有軟件錯誤,會產生軟件缺陷,出現軟件故障,致使軟件失效。

       12.2 軟件缺陷的定義:軟件缺陷是存在於軟件(文檔、數據、程序)之中的那些不但願或不可接受的誤差,如少一逗點、多一語句等。其結果是軟件運行於某一特定條件時出現軟件故障,這時稱軟件缺陷被激活。

13.給軟件缺陷和錯誤劃分嚴重性和優先級的通用原則是:

       13.1 嚴重性表示軟件缺陷所形成的危害和惡劣程度

       13.2 優先級表示修復缺陷的重要程度與次序         

14.白盒測試,也叫結構測試或邏輯驅動測試,測試的是程序內部的動做和通路。

15.黑盒測試,也叫功能測試,主要針對軟件界面和軟件功能進行測試。

16.黑盒測試用例的設計方法有:等價類劃分法、邊界值分析法、錯誤推測法、因果圖法、斷定表驅動法、正交試驗設計法、功能圖法等。

17.自動化分析測試工具備:Rational Test Studio; Compuware公司的NuMega DevPartner Studio(能夠進行源代碼複查,錯誤監測,性能分析,分佈式應用分析等);Parasoft Serials(能夠進行代碼的靜態分析,白盒測試,黑盒測試)。

18.功能自動化測試工具備:Rational Robot和Mercury WinRunner。

19.負載壓力測試內容:客戶端、服務器端和網絡。

20.負載壓力測試步驟:一、選擇協議;二、建立測試腳本;三、參數化測試數據;四、建立虛擬用戶;五、執行測試;六、分析結果。

 

3章.軟件質量與評價

  1. 軟件質量特性:功能性,可靠性,易使用性,效率,可維護性,可移植性。
  2. 功能性包含的子特性:適合性,準確性,互操做性,依從性,安全性。
  3. 可靠性包含的子特性:成熟性,容錯性,易恢復性。
  4. 易使用性包含的子特性:易理解性,易學習性,易操做性。
  5. 效率包含的子特性:時間特性,資源特性。
  6. 可維護性包含的子特性:易分析性,易更改性,穩定性,易測試性。
  7. 可移植性包含的子特性:適應性,易安裝性,一致性,易替換性。
  8. BUG 的等級劃分與優先級

嚴重:死機,數據丟失,主要功能徹底喪失,系統懸掛等錯誤。修改優先級爲最高,該級別須要程序員當即修改。

較高:主要功能喪失,致使嚴重的問題,或致命的錯誤聲明。修改優先級爲高,該級別須要程序員儘快修改。

通常:次要功能喪失, 不太嚴重,如提示信息不太準確。修改優先級爲中,該級別須要程序員修改。

輕微:微小的問題,對功能幾乎沒有影響,產品及屬性仍可以使用,若有個錯別字。修改優先級爲低,該級別須要程序員修改或不修改。

  1. BUG 的另外一種等級劃分:(不是固定的,按實際需求定義)

能夠分爲死機(系統崩潰或掛起)、致命(使系統不穩定、或破壞數據、或產生錯誤結果,並且是常規操做中常常發生或很是規操做中不可避免的)、嚴重(系統性能或響應時間變慢、產生錯誤的中間結果但不影響最終結果,如:顯示不正確但輸出正確)、通常(界面拼寫錯誤或用戶使用不方便)。

 

4章.軟件測試過程與管理

1.測試過程的特性:可重複性、可再現性、公正性和客觀性

2.測試過程由5個活動組成:一、確立軟件測試需求;二、編制測試規格說明;三、制定測試計劃;四、執行測試計劃;五、作測試結論

3.測試者提供的測試過程輸入:一、預先肯定的測試規格說明;二、測試方法;三、測試工具。

4.測試者提供的測試過程輸出:一、測試記錄;二、測試報告草案;三、通過評審的測試報告。

5.測試過程文檔:《測試需求》  《測試規格說明》 《測試計劃》 《測試記錄》 《測試報告》

6.測試工做的7條效率原則:主動思考,積極行動;一開始就牢記目標,不迷失方向;重要的事情放在首位(但經常是緊急的事情放在首位);先理解人,後被人理解;尋求共贏;互相合做,追求1+1>2;終身學習,自我更新,不斷進步。

7.PDCA循環理念:計劃(plan)-執行(do)-檢查(check)-改進(active)。

8.軟件測試的風險是指軟件測試過程出現的或潛在的問題。形成的緣由:測試計劃不充分;測試方法有誤;測試過程偏離。

9.常見計劃風險的因素:交付日期、測試需求、測試範圍,測試資源、人員的能力、測試預算、測試環境、測試支持、劣質組件和測試工具。

10.軟件風險分析的目的:肯定測試對象、測試優先級以及測試的深度。

11.軟件風險分析是對一個潛在問題識別和評估的過程,即對測試的對象進行優先級的劃分。包括兩個部分:一、發生問題的可能性有多大       二、問題的影響嚴重性有多重

軟件風險分析採用的兩種方法:表格分析法和舉證分析法。

12.測試成本控制:測試準備成本控制,測試執行成本控制,測試結束成本控制,測試實施成本控制,測試維護成本控制。

13.軟件測試過程的關鍵活動:

13.1測試需求分析

13.2制定測試計劃

13.3測試設計

13.4測試執行

13.5測試分析與總結

14.保證軟件測試質量的手段:

14.1制定質量保證計劃、質量體系創建

14.2測試活動審覈、測試文檔評審

14.3測試過程數據的收集、度量與分析

 

5章.黑盒測試案例與技術

一、因果圖導出測試用例須要通過如下幾個步驟:1)分析程序規格說明的描述中,哪些是緣由,哪些是結果。緣由經常是輸入條件或輸入條件的等價類,而結果是輸出條件。(2)分析程序規格說明的描述中語義的內容,並將其表示成鏈接各個緣由與各個結果的"因果圖"。(3)標明約束條件。因爲語法或環境的限制,有些緣由和結果的組合狀況是不可能出現的。爲代表這些特定的狀況,在因果圖上使用若干個標準的符號標明約束條件。(4)把因果圖轉換成斷定表,爲斷定表中每一列表示的狀況設計測試用例。

6章.白盒測試技術

7章.面向對象的軟件測試技術

8章.應用負載壓力測試

1.負載壓力的概念:指在必定的約束條件下測試系統所承受的併發用戶量、運行時間、數據量,以及肯定系統所能承受的最大負載壓力。

2.負載壓力測試的目的:

       一、在真實環境下檢測系統性能,評估系統性能以及服務等級的知足狀況。

       二、預見系統負載壓力承受力,在應用實際部署以前,評估系統性能

       三、分析系統瓶頸,優化系統

3.應用在客戶端性能測試的五種類型的目標:虛擬用戶數、每秒點擊次數、每秒事務數,每分鐘頁面數或事務響應時間。

4.應用在網絡上的性能測試:優化性能;預測系統響應時間;肯定網絡帶寬需求;定位應用程序和網絡故障。

5.作網絡故障分析須要的信息:

       一、監控不一樣探針之間的鏈接狀態、傳輸的字節數以及通訊往返行程次數;

       二、會話性能概要,監控哪段網絡延遲大,帶寬對網絡雙向性能的影響,節點用於處理和用於傳輸的時間等;

       三、服務器與客戶端之間幀傳輸狀況統計,能夠監控到與應用相關的幀的分佈,對每個幀能夠與相關的數據包慣性力,而且能夠對幀解碼;

       四、服務器與客戶端之間傳送包信息統計,監控包的詳細信息,而且能夠將包與幀與線程相關聯;

       五、線程信息統計,監控線程的內容和生產週期,以及線程與數據包的關係;

       六、負載的高峯時刻,監控到負載的平均值以及高峯值,而且高峯時刻能夠與相關的線程、數據包、幀相關聯。

       七、故障錯誤總結

6.用戶關心網絡監控的問題:

       一、分析關鍵應用程序的性能;

       二、定位問題的根源是在客戶端、服務器、應用程序仍是網絡;

       三、哪些應用程序佔用大量帶寬;

       四、哪些用戶產生了最大的網絡流量。

7.負載壓力測試實施步驟:

   測試計劃->測試需求分析->測試案例制定->測試環境、工具、數據準備->測試腳本錄製、編寫與調試->場景制定->測試執行->獲取測試結果->結果評估與測試報告。

 

11章.安全測試與評估

1.測試與評估的內容:

       1.1 用戶認證機制

       1.2 加密機制

       1.3 安全防禦策略

       1.4 數據備份與恢復手段

       1.5 防病毒系統

       1.6

2.用戶認證機制的種類:數字證書,智能卡,雙重認證,安全電子交易(SET)協議

3.安全防禦策略主要有:安全日誌,入侵檢測,隔離防禦,漏洞掃描。

4.數據備份與恢復技術一般包括:存儲設備,存儲優化,存儲保護,存儲管理。

5.殺毒軟件中經常使用的兩種管理方式:以策略爲中心,以服務器爲中心。

6.防病毒技術包含:

       6.1 集中式管理,分佈式殺毒

       6.2 數據庫技術、LDAP技術的應用

       6.3 多引擎支持

       6.4 不一樣操做系統的防禦

       6.5 遠程安裝或分發安裝

7.基本安全防禦策略:防火牆,入侵檢測,漏洞掃描,安全審計,病毒防治,web信息防篡改,物理安全。

8.安全體系主要的7個層次:實體安全,平臺安全,數據安全,通訊安全,應用安全,運行安全,管理安全。

9.安全性測試策略針對的7個層次:

       9.1 證書業務服務系統測試

       9.2 證書查詢驗證服務系統測試

       9.3 密鑰管理系統測試

       9.4 密碼服務系統測試

       9.5 可信受權服務系統測試

       9.6 可信時間戳服務系統測試

       9.7 網絡信任域系統測試

       9.8 故障恢復與容災備份測試

       9.9 安全產品的選擇

10.安全性測試方法

       10.1 功能驗證

       10.2 漏洞掃描

       10.3 模擬攻擊試驗

10.4偵聽技術

11.負載均衡設備的做用:網絡平衡的做用,調節各應用服務器的在線人數,以避免形成單個服務器超負荷工做,合理分配工做狀態的運行狀況。

12.負載壓力測試工具主控臺的做用:負責管理各個負載生成器以及收集各負載生成器的測試數據, 負載生成器負責模擬虛擬用戶加壓,在每次併發性能測試中,只有一臺主控臺,但能夠有多個負載生成器。由於網上報名系統的用戶原本就是分佈式的,因此這個項目須要採用分佈式部署負載生成器。

13.隨併發用戶數遞增,交易執行成功率下降的可能緣由:分析測試結果中的應用服務器資源利用數據,判斷服務器資源利用是否有瓶頸存在。隨着用戶數量的增長,用戶的會話信息增多,佔用的內存數量也會愈來愈多,致使CPU忙於在內存和外存間交換數據,所以,系統性能會降低。

14.對於Web應用系統而言,性能調優的措施有:優化服務器配置、運用緩衝機制、採起數據庫鏈接池技術、優化數據庫設計等。

15.漏洞掃描是一項重要的安全技術,它採用模擬攻擊的形式對網絡系統組成元素(服務器、工做站、路由器、防火牆和數據庫等)可能存在的安全漏洞進行逐項檢查,根據檢查結果提供詳細的漏洞描述和修補方案,造成系統安全性分析報告,從而爲網絡管理員完善網絡系統提供依據。

16.漏洞掃描器的分類,就能夠根據不一樣的角度來劃分,就有不一樣的分類。例如,

根據工做模式,漏洞掃描器分爲主機漏洞掃描器和網絡漏洞掃描器。

根據檢測對象,漏洞掃描器可分爲網絡掃描器、操做系統掃描器、WWW服務掃描器、數據庫掃描器以及最近出現的無線網絡掃描器等。

12章、兼容性測試

1.兼容性測試的目的:

       1.1 最低配置師傅可以知足系統運行的須要;

       1.2 在推薦配置下系統的響應速度;

       1.3 考察軟件對運行硬件環境有無特殊說明;

       1.4 爲了知足不一樣的使用需求,軟件系統可否運行在多種硬件配置環境下,而且系統功能和性能都能知足設計需求。

2.硬件兼容的內容: 與整機(主要有CPU、內存和硬盤)的兼容,與板卡的兼容,與打印機的兼容。

3.軟件兼容的內容:與操做系統的兼容,與數據庫的兼容,與中間件的兼容,與瀏覽器的兼容,與其餘軟件的兼容。

4.數據庫兼容性測試要點:完整性測試,應用系統測試,性能測試。

5.數據庫兼容性測試的主要內容:不一樣數據格式的兼容性,XML符合性。

6.平臺化軟件的分類:技術支撐型平臺,應用實現型平臺。

7.平臺化軟件的兼容性測試策略

       7.1 跨硬件平臺能力

       7.2 跨操做系統能力

       7.3 支持多種數據庫系統

       7.4 客戶端兼容性測試

       7.5 數據兼容性測試

14章、易用性測試

1.安裝易用性測試的方面:

       1.1 安裝手冊的評估;

       1.2 安裝的自動化程序測試;

       1.3 安裝選項和設置的測試;

       1.4 安裝過程的中斷測試;

       1.5 安裝順序測試;

       1.6 多環境安裝測試;

       1.7 安裝的正確性測試;

      1.8 修復安裝測試與卸載測試。

2.功能易用性測試

       2.1 業務符合性;

       2.2 功能定製性;

       2.3 業務模塊的集成度;

       2.4 數據共享能力;

       2.5 約束性;

       2.6 交互性;

       2.7 錯誤提示;

3.用戶界面易用性測試:

       3.1 界面總體測試:規範性測試;合理性測試;一致性測試;定製測試;

       3.2 界面元素測試:窗口測試;菜單測試;圖標測試;鼠標測試;文字測試

       3.3 輔助系統測試:幫助測試;嚮導測試;信息提示。

4.用戶界面定製性測試:

       4.1 界面元素的可定製性;

       4.2 工具欄的可定製性;

       4.3 統計檢索的可定製性;

       4.4 報表的可定製性。

15章、可靠性測試

16章、文檔測試

1.文檔的分類:

       1.1 用戶文檔:

              用戶手冊

              操做手冊

              維護修改建議

       1.2 開發文檔

              軟件需求說明書

              數據庫設計說明書

              概要設計說明書

              詳細設計說明書

              可行性研究報告

       1.3 管理文檔

              項目開發計劃

              測試計劃

              測試報告

              開發進度月報

              開發總結報告

2.用戶文檔測試要點:

       2.1 讀者羣

       2.2 術語

       2.3 正確性

       2.4 完整性   

       2.5 一致性

       2.6 易用性

       2.7 圖標與界面截圖

       2.8 樣例和示例

       2.9 語言

       2.10 印刷與包裝

3.用戶手冊的測試要點:

       3.1 準確安裝手冊的描述使用程序;

       3.2 嘗試每一條建議;

       3.3 檢查每條陳述;

       3.4 查找容易誤導用戶的內容;

4.在線幫助的測試要點:

       4.1 準確性;

       4.2 幫助索引;

       4.3 超連接;

       4.4 幫助的風格。

 

 

1、計算機系統構成及硬件基礎知識

1.計算機的構成(馮.諾依曼結構):運算器,控制器,存儲器,輸入/輸出設備.

2.控制器的組成:程序計數器(PC),指令寄存器(IR),指令譯碼器(ID),定時與控制電路,脈衝源,中斷等.

3.CPU的只要組成:指令寄存器,指令譯碼器,定時與控制電路,程序計數器,標誌寄存器,堆棧和堆棧指針

4.主振週期=時鐘週期;

  指令週期=CPU週期=機器週期= 多個 時鐘週期;

5.時序的兩種控制方式:5.1 組合邏輯控制 5.2 微過程控制

6.組合邏輯控制的實現有兩種方式:硬件接線控制和可編程邏輯陣列.

7.微程序對應一條機器指令;由多個微指令組成;微指令由多個微操做最成.

8.微指令的格式:操做控制字段+順序控制字段;

9.操做控制字段的格式有兩種:水平型微指令和垂直型微指令.

10.輸入/輸出設備只要種類:

       10.1 紙帶機、卡片機;

       10.2 鍵盤、鼠標;

       10.3 顯示器;

       10.4 外存

       10.5 打印機

       10.6 圖形圖象攝影輸入設備。

11.輸入輸出控制器的組成:數據寄存器,狀態寄存器,控制寄存器,控制電路。

12.外設的識別是經過地址總線和接口電路的地址譯碼器來實現的。

13.外設的編址方式:獨立編制方式和統一編址方式。

14.外設的4種訪問方式:程序查詢方式,中斷方式,DMA(直接存儲器存取)方式,信道方式。

15.中斷源包括:I/O設備、實時始終、故障源、軟件中斷等。

16.按照中斷源來分,中斷可分爲內部中斷和外部中斷。

16.1內部中斷分爲溢出中斷、除法錯中斷、斷點中斷,軟件中斷和單步中斷。

16.2外部中斷(中斷源來自CPU以外)按照cpu的響應能夠分爲:可屏蔽中斷和非屏蔽中斷(如掉電)。

17.中斷判斷方式:

       17.1 每一箇中斷源使用本身的中斷請求信號線和CPU相連;

       17.2 統一的中斷請求;

       17.3 硬件查詢法;

       17.4 總線仲裁;

       17.5 中斷向量表。

18.DMA傳輸過程的總線佔有方式:

       18.1 CPU中止訪問主存,只進行一些與總線無關的內部操做;

       18.2 時間輪轉片法;

       18.3 借用週期法。

19.DMA方式和中斷的最根本區別:使用中斷方式時,主存和輸入/輸出控制器之間的數據傳送仍然須要勇cpu操做,須要使用cpu的寄存器等資源,因此必須保護現場,而DMAc要暫停cpu的執行,以達到控制總線的母的,不須要保護現場。

20.常見輸入/輸出接口:

       20.1 磁盤接口(IDE,SCSI)

       20.2 串行接口和並行接口;

       20.3 PC Card接口;

       20.4 USB 接口;

       20.5 1394接口。

21.從CPU到外設,總線能夠分爲4類:CPU內部總線,部件內部總線,系統總線,外總線。

22.系統總線分爲3種:數據總線,地址總線,控制總線。

23.總線的3種仲裁方式:鏈式查詢方式,計數器定時查詢方式,獨立請求方式

24.指令流數據流的分類,

24.1按照多倍性的分類:單指令流單數據流,單指令流多數據流,多指令流單數據流,多指令流多數據流;

24.2按照程序流程機制的分類:控制流計算機,數據流計算機,歸約機。

25.存儲器經常使用的4種存取方式:順序存取,直接存取,隨機存取,相聯存取。

26.主存儲器的分類:RAM,ROM,PROM,EPROM,E2PROM,閃速存儲器,相聯存儲器   

27.輔助存儲器的分類:磁帶存儲器,磁盤存儲器,廉價磁盤冗餘陣列存儲器(即RAID,分6個級別),光盤存儲器。

28.Cache存儲器:即高速緩衝存儲器,最經常使用的3種淘汰算法:隨機淘汰法,先進先出和近期最少使用淘汰法(LRU)。

29.Cache的經常使用些操做:寫直達,寫回,標記法。

30.三大總線:PC-XT總線(也稱PC總線),ISA總線,PCI總線。

順序:PC-XT總線(也稱PC總線),PC-AX總線,ISA總線,EISA總線,PCI總線,AGP總線。

31. 在計算機中,最適合進行數字加減運算的數字編碼是補碼,最適合表示浮點數階碼的數字編碼是移碼。

 

2、程序語言基礎知識

1.彙編程序的基本工做以下:

       1.1 講每一條可執行彙編指令轉換成對應的機器指令;

       1.2 處理源程序種出現的僞指令;

2.編譯程序分紅的部分:詞法分析、語法分析和語義分析、優化代碼,代碼生成,符號表管理。

3.詞法分析:有限狀態自動機原理,正規表達式。

4.語法分析:下推自動機,自頂向下語法分析,自底向上語法分析

5.基本數據類型:

       5.1 內建數據類型

       5.2 枚舉類型

       5.3 複合數據類型

 

6.數字數據對象上的操做有:賦值操做,算術操做,關係操做,位操做,    

7.內建數據類型包括:數字數據類型,布爾類型,字符類型;

8.負荷數據類型包括:指針類型可以,字符串類型。

9.結構化數據類型有:數組,記錄(如結構體、聯合類型),其餘結構化數據(如堆棧,隊列,樹,有向圖和屬性列表和集合)

10.類型檢查的基本規則:

       10.1 算術運算符

       10.2 重載

       10.3 隱式類型轉換

       10.4 多態

11.程序語言的控制結構分爲3類:

       11.1 表達式

       11.2 用在語句見或一組語句的結構(如條件語句和循環語句)

       11.3 過程結構

12.表達式的表示方法:前綴表示法、後綴表示法,中綴表示法。

13.語句間的控制順序:跳轉結構,選擇結構,循環結構。

14.循環結構的種類:計數器循環,條件循環,基於數據的循環,不定循環。      

15.過程的參數傳遞方式:傳值調用,引用調用,傳值-結果調用。

16.按程序設計範型分類,程序語言分爲:

       16.1 過程性語言,如c

       16.2 面嚮對象語言,如Sinula,c++,Java

       16.3 邏輯型語言,如Prolog

       16.4 函數型語言,如LISP

 

3、操做系統基礎知識

1.做系統與硬件/軟件的關係

       計算機硬件->操做系統->語言處理程序->應用程序

2.引入操做系統的目的 ,4個方面的理解

       2.1 用戶觀點

       2.2 資源管理觀點

       2.3 進程觀點

       2.4 分層觀點

3.操做系統的基本類型:

       3.1 批處理操做系統

       3.2 分時操做系統

       3.3 實時操做系統

       3.4 網絡操做系統

       3.5 分佈式操做系統

4.從資源管理的觀點看,操做系統的功能分紅5部分:

       4.1 處理機管理

       4.2 存儲管理

       4.3 文件管理

       4.4 設備管理

       4.5 做業管理

5.操做系統的結構設計模式:

       5.1 模塊化結構

       5.2 層次化結構

       5.3 客戶/服務器結構

       5.4 對象模式

       5.5 對稱多處理模式

6.進程是由程序塊、進程控制塊(PCB)和數據庫3部分組成。

7.進程控制塊PCB的組成:進程標識+狀態+優先級+控制信息+隊列+訪問權限+現場。

8.進程控制的原語主要包括:建立原語,阻塞原語,撤銷原語,喚醒原語,優先級原語,調度原語。

9.操做系統中設置3種隊列:執行隊列、就緒隊列和阻塞隊列。

10.P-V 操做如何實現進程互斥?

11.P-V操做如何實現進程同步? 生產者和消費者

12.進程的同步機制之一:管程。進程能夠調用管程,且載任一時刻最多隻有一個進程可以真正進入管程,而其餘調用進程則真那個等待。

13.進程調度的兩種方式:剝奪方式和非剝奪方式。

14.進程調度的算法:

       14.1 先來先服務FCFS,即先進先出FIFO;

       14.2 優先數調度;

       14.3 輪轉法。

15.產生死鎖的必要條件:互斥條件,保持和等待條件,不剝奪條件,環路等待條件。

16.線程切換時只需保存和設置少許寄存器的內容,而不設計存儲器管理方面的操做,故線程切換的開銷要遠遠小於進程的切換。

17.存儲管理方式:

       17.1 單一連續區管理

       17.2 分區存儲管理

       17.3 頁式存儲管理

       17.4 段式存儲管理

       17.5 段頁式存儲管理

       17.6 頁面調度

18.分區存儲管理的方式:固定分區存儲管理,可變分區存儲管理,存儲分配算法管理,交換與覆蓋技術。

19.。存儲分配的4種算法:首次適應算法,循環適應算法,最佳適應算法,最差適應算法。

20.頁面調度算法:最優(OPT)算法,隨機算法,先進先出算法,最近最少使用算法(LRU),最不常用的頁面先淘汰(LFU),最近沒有使用的頁面先淘汰(NUR).

21.設備管理的功能:

       21.1 提供和進程管理系統的接口;

       21.2 進行設備分配;

       21.2 實現設備和設備,設備和CPU之間的並行操做。

       21.3 進行緩衝區管理。

22.外圍設備和內存之間的經常使用數據傳送控制方式:

       22.1 程序控制方式

       22.2 中斷方式

       22.3 直接存儲訪問方式

       22.4 通道方式

23.通道,又稱爲輸入/輸出處理器,主要有3類通道:字節多路通道,選擇通道和成組多路通道。

24.設備的分配方式:靜態分配和動態分配。

25.設備的分配策略:先請求先分配,優先級高者先分配。

26.訪問磁盤的時間決定於:查找磁道時間,旋轉等待扇區時間和數據傳輸時間。

27.磁盤調度算法:先來先服務,最短查找時間有限調度,SCAN調度(又稱電梯算法)。

28.Spooling技術,意爲外部設備同時聯機操做,又稱假脫機輸入/輸出操做。

29.記錄文件的分爲:順序文件、索引順序文件、索引那文件和直接文件。

30.經常使用的文件分配策略有:順序分配(即連續分配)、連接分配(串聯分配)、索引分配。

31.文件的3種對空閒塊的管理方法:索引法、連接法和位圖法。

32.做業的狀態:提交狀態,後備狀態,執行狀態和完成狀態。

33.處理機的調度:

       33.1 高級調度

       33.2 中級調度

       33.3 低級調度

34.做業控制塊的組成:做業名+做業狀態+資源要求+做業控制方式+做業類型+做業優先權等。

35.做業調度算法有:先來先服務,短做業優先(SJF),響應比高者優先(HRN),優先級調度。

相關文章
相關標籤/搜索