忙忙碌碌接近一個月,從用一周刷完書,再用一周刷完課本知識題,到每天200-300道題連續肝一周多,最后兩天一天兩套試題,慢慢對相關知識內容有了一定的理解。
考試前兩天通知由于疫情原因本期取消,不知道是幸運還是悲哀,相反我可平靜,有七十的把握可以通過,但是最后用兩三周的時間突擊還是太匆忙了,取消了也已經成為定局,沒必要想這想那了。收拾心情準備下一場挑戰。
前趨圖
先理清楚前趨圖中的邏輯關系:P1沒有前驅,P2的前驅是P1,P3的前驅是P1、P2,P4的前驅是P2,P5的前驅是P3、P4。
前驅就是指只有在前驅進程完成后,該進程才能開始執行。由圖可知,這里進程之間有6條有向弧,分別表示為P1→P2,P1→P3,P2→P3,P2→P4,P3→P5,P4→P5,
各個進程間的邏輯關系,那么我們需要設定6個信號量(S1、S2、S3、S4、S5、S6),利用PV操作來控制這些過程。
對于第一個空,P1執行完成之后,需要通知P2、P3可以開始,此處需要V(S1)、V(S2)操作分別喚醒P2、P3進程,已有V(S1),此處需要填寫V(S2)。
對于第二個空,P2執行之前,需要檢查P1進程是否完成,因此需要通過P(S1)操作來判定,P1是否完成。
對于第三個空,在P3執行之前,需要檢查P1、P2進程是否完成,因此需要通過P(S2)、P(S3)操作來判定P1、P2是否完成,已有P(S2),此處填寫P(S3)。
對于第四空,P3執行完成后,需要通知P5進程可以開始,此處需要通過V(S5)操作喚醒P5進程;
對于第五空,P4進程完成后,需要通知P5進程可以開始,此處需要通過V(S6)操作喚醒P5進程;
對于第六空,P5進程開始之前,需要檢查P3、P4進程是否已完成,因此需要P(S5)、P(S6)操作來判斷P3、P4是否完成。
面向對象基本概念
動態綁定支持多態
開發階段
每個階段以達到里程碑為結束的標準。
初啟階段:用戶溝通,制定用戶計劃,里程碑是生命周期目標
精化階段:創建與設計架構, 里程碑是生命周期架構
構建階段:將設計實現,并進行測試,里程碑是初始運作功能
移交階段:交由用戶測試并迭代完善, 里程碑是產品發布
產生階段:監測產品使用,并生成缺陷報告
面向對象分析與設計方法
本題考查采用統一建模語言(UML)進行面向對象建模的基本知識。 UML2.0中狀態圖主要用于描述對象、子系統、系統的生命周期。通過狀態圖可以了解到一個對象所能到達的所有狀態以及對象收到的事件(消息、超時、錯誤、條件滿足等)對對象狀態的影響等。針對具有可標記的狀態和復雜的行為的對象構建狀態圖。狀態可能有嵌套的子狀態,且子狀態可以是一個狀態圖。 本題圖示狀態圖中,ON是一個超狀態,它有3個子狀態:Idle、Rewinding和Playing, 這三個子狀態之間在相關事件發生時狀態之間進行遷移。
多態分為兩種:通用的多態和特定的多態。兩者的區別是前者對工作的類型不加限制,允許對不同類型的值執行相同的代碼;后者只對有限數量的類型有效,而且對不同類型的值可能要執行不同的代碼。
通用多態又分為參數多態(parametric)和包含多態(Inclusion Polymorphism);特定多態分為過載多態(overloading)和強制多態(coercion)。
強制多態(coercion):編譯程序通過語義操作,把操作對象的類型強行加以變換,以符合函數或操作符的要求。程序設計語言中基本類型的大多數操作符,在發生不同類型的數據進行混合運算時,編譯程序一般都會進行強制多態。程序員也可以顯示地進行強制多態的操作(Casting)。舉個例子,比如,int+double,編譯系統一般會把int轉換為double,然后執行double+double運算,這個int-》double的轉換,就實現了強制多態,即可是隱式的,也可顯式轉換。
過載多態(overloading):同一個名(操作符﹑函數名)在不同的上下文中有不同的類型。程序設計語言中基本類型的大多數操作符都是過載多態的。通俗的講法,就是c++中的函數重載。在此處中“overload”譯為“過載”,其實就是所謂的“重載”,也許“overload”就應翻譯為“過載,重載”吧,那“override”就只能是“覆蓋”了。
包含多態(Inclusion Polymorphism):同樣的操作可用于一個類型及其子類型。(注意是子類型,不是子類。)包含多態一般需要進行運行時的類型檢查。
需要注意的地方:包含多態的操作存在著逆單調(Anti-mornotonic)。即一個類型t上的操作,當其定義域縮小成t的一個子類型時,其值域應不小于t.
參數多態(parametric),采用參數化模板,通過給出不同的類型參數,使得一個結構有多種類型。(類似模板類吧!)
改正性維護:修改錯誤。 適應性維護:外部環境發生變化(比如硬件改變),重點在外部環境變化。 預防性維護:為了將來有可能發生的事做的準備工作,重點在未來。 完善性維護:擴充功能和改善性能,重點在擴充和改善
海明碼
海明碼的檢驗位:
2^r >= n + r +1;
浮點數能表示的范圍由階碼的位數決定,精確度有尾數的位數決定。
數據庫設計
1 第一范式(1NF) 在任何一個關系數據庫中,第一范式(1NF)是對關系模式的基本要求,不滿足第一范式(1NF)的數據庫就不是關系數據庫。 所謂第一范式(1NF)是指數據庫表的每一列都是不可分割的基本數據項,同一列中不能有多個值,即實體中的某個屬性不能有多個值或者不能有重復的屬性。如果出現重復的屬性,就可能需要定義一個新的實體,新的實體由重復的屬性構成,新實體與原實體之間為一對多關系。在第一范式(1NF)中表的每一行只包含一個實例的信息。 2 第二范式(2NF) 第二范式(2NF)是在第一范式(1NF)的基礎上建立起來的,即滿足第二范式(2NF)必須先滿足第一范式(1NF)。第二范式(2NF)要求數據庫表中的每個實例或行必須可以被惟一地區分。為實現區分通常需要為表加上一個列,以存儲各個實例的惟一標識。 第二范式(2NF)要求實體的屬性完全依賴于主關鍵字。所謂完全依賴是指不能存在僅依賴主關鍵字一部分的屬性,如果存在,那么這個屬性和主關鍵字的這一部分應該分離出來形成一個新的實體,新實體與原實體之間是一對多的關系。為實現區分通常需要為表加上一個列,以存儲各個實例的惟一標識。簡而言之,第二范式就是非主屬性非部分依賴于主關鍵字。 3 第三范式(3NF) 滿足第三范式(3NF)必須先滿足第二范式(2NF)。簡而言之,第三范式(3NF)要求一個數據庫表中不包含已在其它表中已包含的非主關鍵字信息。例如,存在一個部門信息表,其中每個部門有部門編號(dept_id)、部門名稱、部門簡介等信息。那么員工信息表中列出部門編號后就不能再將部門名稱、部門簡介等與部門有關的信息再加入員工信息表中。如果不存在部門信息表,則根據第三范式(3NF)也應該構建它,否則就會有大量的數據冗余。簡而言之,第三范式就是屬性不依賴于其它非主屬性。
計算機網絡
ipconfig ( linux: ifconfig) (顯示TCP/IP網絡配置值,如:IP地址,MAC地址,網關地址等)。 tracert(linux: traceroute):用于確定 IP數據包訪問目標所采取的路徑,若網絡不通,能定位到具體哪個結點不通。 netstat:用于顯示網絡連接、路由表和網絡接口信息。 nslookup(查詢DNS記錄)。
進程管理
系統中有R類資源m個,現有n個進程互斥使用。若每個進程對R資源的最大需求為w,那么當m、n、w分別取下表中的值時,對于表中的①?⑥種情況,( )可能會發生死鎖。若將這些情況的m分別加上( ),則系統不會發生死鎖。
答案:2、4、5 解析:
每個進程所需資源-1)進程+ 1 = 系統提供的最少資源數 死鎖:m<n(w-1)+1 、
軟件工程概述
體系結構設計(概要 詳細)
設計方法(結構化 面相對象)
SQL語言
WITH CHECK OPTION 表示對 UODATE 、 UBSERT 、 DELETE操作時保證更新、插入或刪除的行滿足視圖定義的謂詞條件
網絡協議
算法分析及常用算法
壓縮前,若要表示5個不同的字符,用二進制編碼至少需要3位二進制,即每位字符占據空間3bit,平均字符長度為340%+310%+320%+316%+314%=3。 壓縮后,這5個字符的編碼長度分別為1、3、3、3、3,平均編碼長度為140%+310%+320%
系統的測試與維護
分析:
改正性維護:修改錯誤。 適應性維護:外部環境發生變化(比如硬件改變),重點在外部環境變化。 預防性維護:為了將來有可能發生的事做的準備工作,重點在未來。 完善性維護:擴充功能和改善性能,重點在擴充和改善
指令系統和計算機體系結構
指令中的地址碼字段就是操作數本身 立即尋址為操作數直接在指令中。(指令中地址碼字段直接給出操作數本身,而不是其訪存地址,不需要訪問任何地址) 直接尋址為操作數的地址在指令中。 間接尋址為存有操作數的地址的地址在指令中(就是地址內容還是一個地址)。
樹
二叉樹的順序存儲,就是用一組連續的存儲單元存放二叉樹中的結點;把二叉樹的所有結點安排成為一個恰當的序列,反映出節點中的邏輯關系;用編號的方法從樹根起,自上層至下層,每層自左至右地給所有結點編號。
系統設計
如果一個模塊訪問另一個模塊時,彼此之間是通過數據參數(不是控制參數、公共數據結構或外部變量)來交換輸入、輸出信息的,則稱這種耦合為數據耦合;如果一組模塊通過數據結構本身傳遞,則稱這種耦合為標記耦合;若一組模塊都訪問同一個公共數據環境,則它們之間的耦合就稱為公共耦合;若一個模塊直接訪問另一個模塊的內部數據、一個模塊不通過正常入口轉到另一個模塊內部、兩個模塊有一部分程序代碼重疊或者一個模塊有多個入口,上述幾個情形之一發生則說明兩個模塊之間就發生了內容耦合。
線性結構
采用順序表和單鏈表存儲長度為n的線性序列,根據序號查找元素,其時間復雜度分別為:O(1)、O(n)
多媒體計算機
數字語音的采樣頻率定義為8kHz,這是因為 語音信號定義的頻率最高值為4kHz
1、傳輸媒體:用以傳輸數據的物理設備的介質,如電纜、光纖、無線電波等。 2、表示媒體:說明交換信息的類型,定義信息的特征,一般以編碼的形式描述,如聲音編碼和文本編碼。 3、感覺媒體:是人們的感覺器官所能感覺到的信息的自然種類,如音樂、語音、圖形、圖像、文字、氣味等。 4、表現媒體:又叫為呈現媒體,是獲取信息、再現信息的物理手段,一般包括計算機的輸入輸出設備,如顯示器、打印機和音響等輸出設備,鍵盤、鼠標等輸入設備。
知識產權
合理使用:不需許可,不需支付報酬,需指明著作人 許可使用:要經過許可,要支付 強制許可使用:不需許可,要支付 法定許可:不需許可,要支付,需指明著作人
軟件過程管理
統一過程UP
CMMI
C5(優化的):關鍵詞優化改進。 C4(管理的):關鍵詞軟件過程,產品質量的度量 C3(定義的):關鍵詞標準化,文檔化。 C2(管理的):關鍵詞管控。 C1(執行的):關鍵詞輸入產品轉輸出產品
結構化分析與設計
倉庫風格是一種軟件體系結構,其中包含一個數據倉庫和若干個其他構件。數據倉庫位于該體系結構的中心,其他構件訪問該數據倉庫并對其中的數據進行增、刪、改等操作。數據庫系統、超文本系統和黑板系統都屬于倉庫風格。 該體系結構的優點包括: ①對可更改性和可維護性的支持; ②可復用的知識源; ③支持容錯性和健壯性
缺點包括: ①測試困難; ②不能保證有好的解決方案; ③難以建立好的控制策略; ④低效; ⑤昂貴的開發工作; ⑥缺少對并行機制的支持。
考點:結構化分析設計 外部實體一般為組織機構、人員、第三方系統,試題不是外部實體。
輸入輸出系統
設計模式
知識點
自底向上的集成測試策略的優點包括()。
不需要寫樁程序
漸近記號Θ、Ο、o、Ω、ω關系 記號 含義 通俗理解 (1)Θ(西塔) 緊確界。 相當于”=” (2)O (大歐) 上界。 相當于”<=” (3)o(小歐) 非緊的上界。 相當于”<” (4)Ω(大歐米伽) 下界。 相當于”>=” (5)ω(小歐米伽) 非緊的下界。 相當于”>”
在面向對象分析與設計中,( 實體類 )是應用領域中的核心類,一般用于保存系統中的信息以及提供針對這些信息的相關處理行為;( 邊界類 )是系統內對象和系統外參與者的聯系媒介;( 控制類 )主要是協調上述兩種類對象之間的交互。
結構化設計主要包括: ①體系結構設計:定義軟件的主要結構元素及其關系。 ②數據設計:基于實體聯系圖確定軟件涉及的文件系統的結構及數據庫的表結構。 ③接口設計:描述用戶界面,軟件和其他硬件設備、其他軟件系統及使用人員的外部接口,以及各種構件之間的內部接口。 ④過程設計:確定軟件各個組成部分內的算法及內部數據結構,并選定某種過程的表達形式來描述各種算法。
CIFc視頻格式的圖像分辨率為352*288
排他鎖 寫鎖 共享鎖 讀鎖
mttf/(1+mttf)可靠性和可用性 1/(1+mttr)可維護性
位圖與矢量圖相比,位圖 占用空間了較大,處理側重于獲取和復制,顯示速度快
數據耦合:一個模塊訪問另一個模塊時,彼此之間是通過簡單數據參數 (不是控制參數、公共數據結構或外部變量) 來交換輸入、輸出信息的。 公共耦合:若一組模塊都訪問同一個公共數據環境,則它們之間的耦合就稱為公共耦合。公共的數據環境可以是全局數據結構、共享的通信區、內存的公共覆蓋區等。 外部耦合:一組模塊都訪問同一全局簡單變量而不是同一全局數據結構,而且不是通過參數表傳遞該全局變量的信息,則稱之為外部耦合。 標記耦合 :一組模塊通過參數表傳遞記錄信息,就是標記耦合。這個記錄是某一數據結構的子結構,而不是簡單變量。
可靠性 MTTF平均無故障時間 子特性包括:成熟性、容錯性、易恢復性 可用性 MTBF平均失效間隔時間 可維護性 MTTR平均修復時間 評價指標:可理解性、可測試性、可修改性
可靠性:MTTF/(1+MTTF) MTTF:平均無故障時間 可用性:MTBF/(1+MTBF) MTBF:平均失效間隔時間 可維護性:1/(1 + MTTR) MTTR:平均修復時間
深度優先:棧 廣度優先:隊列
裝飾模式:提供額外的行為 外觀模式:簡化其接口
有向圖 e 無向圖 2e
CPU首先從程序計數器(PC)獲得需要執行的指令地址,從內存(或高速緩存)讀取到的指令則暫存在指令寄存器(IR),然后進行分析和執行。
配置數據庫一般包括開發庫、受控庫、產品庫
適配器模式既是類結構模式,有時對象結構模式
軟件產品必須能夠在3秒內對用戶 請求做出相應屬于軟件需求中的非功能需求 --- > 性能需求屬于非功能需求
數據流圖建模應遵循 自頂向下、從抽象到具體的原則
保密通信(公匙體系):公匙加密和認證,私匙解密和簽名 數字簽名(私匙體系):公匙解密和簽名,私匙加密和認證。
IPSec工作于網絡層,為IP數據報文進行加密。 PP2P工作于數據鏈路層,用于鏈路加密。 HTTPS是HTTP與SSL的結合體,為傳輸層以上層次數據加密。 TLS安全傳輸層協議用于在兩個通信應用程序之間提供保密性和數據完整性。
無效的ip地址 169.254.X.X(windows) 和 0.0.0.0(linux)
TCP使用的流量控制協議時:可變大小的滑動窗口協議
路由器收到多個有路由協議轉發的,關于某個目標的多個路由,則比較各個路由的管理距離,并采用管理距離最小的路由源來源提供的路由信息
中繼器 物理層 路由器 網絡層 交換機,網橋 數據鏈路層
黑盒:等價類劃分、邊界值分析、錯誤猜測、因果圖報告 白盒:邏輯覆蓋、基本路徑測試
管道過濾器體系結構是一種傳統的體系結構風格,該體系結構由一組稱為過濾器的構件以及連接構件的管道組成,管道將數據從一個過濾器傳送到另一個過濾器。 該風格具有以下優點: ①軟件構件具有良好的隱蔽性和高內聚、低耦合的特點; ②允許設計者將整個系統的輸入輸出行為看成是多個過濾器的行為的簡單合成; ③支持軟件復用; ④系統維護和增強系統性能簡單; ⑤允許對一些如吞吐量、死鎖等屬性的分析; ⑥支持并行執行。
SMTP傳輸的郵件報文需采用ASXII進行編碼
①時間內聚:把需要同時執行的動作組合在一起形成的模塊。 ②過程內聚:指一個模塊完成多個任務,這些任務必須按指定的過程執行。 ③信息內聚:指模塊內的所有處理元素都在同一個數據結構上操作,或者各處理使用相同的輸入數據或產生相同的輸出數據。 ④功能內聚:指模塊內的所有元素共同作用完成一個功能,缺一不可。
如果要使得兩個IPv6結點可以通過現有的IPv4網絡進行通信,則應該使用隧道技術,如果要使得純IPv6結點可以與純IPv4結點進行通信,則需要使用翻譯技術。
概要設計包括系統構架、模塊劃分、系統接口、數據設計
OLAP:在線分析程序 OLTP:在線事務程序,主要用來寫入數據 ETL:數據轉存
中國自主研發的3G通信標準時(TD-SCDMA)
smtp郵件傳輸協議:默認的端口號為25 http超文本傳輸協議,80 pop3郵局:110 FTP:20數傳 21 控制
對稱加密算法:DES、3DES、AES 非對稱加密算法:RSA、ECC 摘要算法:SHA、MD5
軟件配置管理主要包括:版本控制、配置支持、變更支持、過程支持、團隊支持、變化報告和審計支持(注意:不包括質量支持)
總線復用方式可以減少總線中信號線的數量
極限編程由價值觀、原則、實踐和行為四個部分組成,其中價值觀包括溝通、簡單性、 反饋和勇氣
采用補碼表示數據的時候,可以將符號位和其他位同意處理,減法也可以按加法來處理,從而簡化運算部件的設計
PEERT 可以描述各任務間的依賴關系 GANTT 可以描述個任務間的并行關系
在cpu內外常需要設置多級高速緩存cache,主要目的是 提高cpu訪問主存數據或指定的效率
常見的中間代碼有后綴式、三元式、四元式、樹
風險的優先級通常是根據風險暴露設定的
定義風險參照水準是(風險評估)活動常用的技術
共同封閉原則:包中的所有類對于同一種性質的變化應該是共同封閉的。一個變化若對一個封閉的包產生影響,則將對該包中的所有類產生影響,而對于其他包則不造成任何影響。面向對象設計的原則之一。 共同重用原則:面向對象編程術語,指一個包中的所有類應該是共同重用的。如果重用了包中的一個類,那么也就相當于重用了包中的所有類。 開放-封閉原則:對擴展開放,對修改封閉。 接口隔離原則:使用多個專門的接口比使用單一的總接口要好。
虛擬儲存體系由主存-輔存兩級存儲器構成的
需求分析 ---> 確定系統邊界 邏輯設計 --> 關系規范化
不同類的對象通過消息進行相互通信
應用級網關內部網和外部網的隔離點,它可對應用層的通信數據流進行監控和過濾
建立連接可靠通信是在傳輸層
在計算機系統中采用總線結構,便于實現系統的積木化構造,同時可以減少信息傳輸線的數量
DHCP協議的功能是:自動分配IP地址,FTP協議的作用是文件傳輸,使用的傳輸層協議位TCP。
采用UML進行面向對象開發時,部署圖通常在 (實施)階段使用。
在微機系統中,BIOS(基本輸入輸出系統)保存在(主板的ROM)中
在移臂調度算法中, (先來先服務和最短尋找時間優先 ) 算法可能會隨時改變移動臂的運動方向
中間代碼生成和代碼優化并不是每個編譯器都必須的
面向對象分析的第一步 :確定問題域
面向對象過程中,組合關系表示: 整體與部分之間的一種關系
軟件開發過程中,需求分析階段模型包括 數據流圖、實體練習圖、狀態遷移圖和數據字典
在發送電子郵件附加多媒體數據時需采用 MIME 協議來支持郵件傳輸
霍夫曼編碼方案是基于 貪心 策略的
建立連接進行可靠通信在TCP/IP網絡中,應該在傳輸 層完成,在OSI/RM同樣在傳輸層完成
裝飾模式主要的目的是在無法生成子類的情況下給一個對象動態地增加新的職責;
享元設計模式是共享大量細粒度的對象;適配器設計模式則是將已有的接口轉換為系統希望的接口形式。