計算機(jī)專業(yè)面試問題_計算機(jī)面試常問問題
在求職面試中,計算機(jī)專業(yè)的求職者要學(xué)會做好面試準(zhǔn)備,了解面試常見問題很有必要。下面小編已經(jīng)為你們整理了計算機(jī)專業(yè)面試問題,一起來看看吧。
計算機(jī)專業(yè)面試問題一
1. 什么是程序局部性,為什么會有程序的空間局部性?
程序局部性是指程序在運(yùn)行時呈現(xiàn)出局部性規(guī)律,在一段時間間隔內(nèi),程序的執(zhí)行是局限在某個部份,所訪問的存儲空間也只局限在某個區(qū)域。 空間局部性是指若一個存儲單元被訪問,那么它附近的單元也可能被訪問,這是由于程序的順序執(zhí)行引起的。
2. 比較TCP與UDP
TCP與UDP都是傳輸層的協(xié)議,且都用端口號標(biāo)識數(shù)據(jù)所達(dá)的進(jìn)程。 TCP提供的是面向連接服務(wù),提供可靠交付。且具有流量控制和擁塞控制。可用于可靠要求高的場合如:SMTP,FTP,HTTP等 。
UDP提供的是無連接服務(wù),提供不可靠交付,且無確認(rèn)機(jī)制。主要用于即時強(qiáng)的場合如:視頻聊天,語音電話等。
3. 網(wǎng)絡(luò)協(xié)議的三個核心要素,及概念 .各起什么作用?
語法,定義了數(shù)據(jù)與控制信息的格式;
語義,定義了需要發(fā)出何種控制信息,完成何種響應(yīng)動作以及作出何種響應(yīng); 同步,定義了事件實(shí)現(xiàn)順序的詳細(xì)說明;
4. 關(guān)系數(shù)據(jù)庫都有那些操作,特點(diǎn)是什么?
查詢:選擇、投影、連接、除、并、交、差
數(shù)據(jù)更新:插入、刪除、修改
關(guān)系操作的特點(diǎn):集合操作方式,即操作的對象和結(jié)果都是集合。
5. 解釋一下網(wǎng)絡(luò)體系結(jié)構(gòu),它得實(shí)現(xiàn)和理論有什么區(qū)別?
是指通信系統(tǒng)的整體設(shè)計,它為網(wǎng)絡(luò)硬件、軟件、協(xié)議、存取控制和拓?fù)涮峁?biāo)準(zhǔn)。 網(wǎng)絡(luò)體系統(tǒng)結(jié)構(gòu)采用分層結(jié)構(gòu),各層之間相互獨(dú)立、較易維護(hù)、靈活性好。 國際標(biāo)準(zhǔn)化組織制定了OSI/RM標(biāo)準(zhǔn),該標(biāo)準(zhǔn)采用了七層結(jié)構(gòu)應(yīng)用層、表示層、會話層、傳輸層、網(wǎng)絡(luò)層、數(shù)據(jù)鏈路層、物理層。七層協(xié)議體系結(jié)構(gòu)既復(fù)雜又不實(shí)用,但其概念清楚,體系結(jié)構(gòu)理論較完整。而TCP/IP卻成為了事實(shí)上的標(biāo)準(zhǔn),它采用了四層結(jié)構(gòu)即應(yīng)用層、傳輸層、網(wǎng)絡(luò)層和網(wǎng)絡(luò)接口層。
計算機(jī)專業(yè)面試問題二
1. 為了實(shí)現(xiàn)重定位需要哪些硬件?
最簡單的方式是在系統(tǒng)中增設(shè)一個重定位寄存器,用來存放正在執(zhí)行作業(yè)的內(nèi)存地址,每次訪問數(shù)據(jù)時,由硬件自動將相對地址與重定位寄存器中的起始地址相加,形成實(shí)際的特理地址。 當(dāng)然在分頁式與分段式系統(tǒng)中,具地址變換機(jī)構(gòu),以及快表等硬件。
2. 數(shù)據(jù)庫保護(hù)(訪問)的內(nèi)容有哪些?
利用權(quán)限機(jī)制,利用完整性約束防止法數(shù)據(jù)進(jìn)入數(shù)據(jù)庫,提供故障恢復(fù)能力,提供并發(fā)訪問控制
3. 在交互式系統(tǒng)中,非剝奪是不是一個好的策略?為什么?
非剝奪方式:分派程序一旦把處理機(jī)分配給某進(jìn)程后便讓它一直運(yùn)行下去,直到進(jìn)程完成或發(fā)生某事件而阻塞時,才把處理機(jī)分配給另一個進(jìn)程。 剝奪方式:當(dāng)一個進(jìn)程正在運(yùn)行時,系統(tǒng)可以基于某種原則,剝奪已分配給它的處理機(jī),將之分配給其它進(jìn)程。剝奪原則有:優(yōu)先權(quán)原則、短進(jìn)程、優(yōu)先原則、時間片原則。
在分時系統(tǒng)中不剝奪并不是一個好的策略。因?yàn)?在分時系統(tǒng)中,除了交互性以外,及時性是很重要的性能因素。當(dāng)一個作業(yè)被阻塞后,CPU就完全空閑了,別的用戶的及時性就無法保證了,而完全可以把這些時間分配給別的作業(yè)運(yùn)行。以提高整體的吞吐量。
4. DBA的職責(zé)是什么?
DBA則是這個機(jī)構(gòu)的一個(組)人員,負(fù)責(zé)全面管理和控制數(shù)據(jù)庫系統(tǒng).職責(zé)有:
(1)決定數(shù)據(jù)庫中的信息內(nèi)容和結(jié)構(gòu):數(shù)據(jù)庫中要存放哪些信息
(2)決定數(shù)據(jù)庫的存儲結(jié)構(gòu)和存取策略:獲得較高的存取效率和存儲空間利用率
(3)約定義數(shù)據(jù)的安全性要求和完整性約束條件:負(fù)責(zé)確定各個用戶對數(shù)據(jù)庫的存取權(quán)限、數(shù)據(jù)的保密級別和完整性約束條件
(4)監(jiān)控數(shù)據(jù)庫的使用和運(yùn)行:轉(zhuǎn)儲數(shù)據(jù)、維護(hù)日志文件、故障恢復(fù)
(5)數(shù)據(jù)庫的改進(jìn)和重組重構(gòu):對運(yùn)行情況進(jìn)行記錄、統(tǒng)計分析,以此來不斷改進(jìn)數(shù)據(jù)庫設(shè)計
計算機(jī)專業(yè)面試問題三
1. 舉例解釋一下同步和互斥
同步表現(xiàn)為直接制約,如管道通信,一個進(jìn)程寫,一個進(jìn)程讀,它們是相互制約的。 互斥表現(xiàn)為間接制約,比如多個進(jìn)程同時請求打印機(jī)(沒使用SPOOLing技術(shù))、多個進(jìn)程同時請求一張網(wǎng)卡發(fā)送數(shù)據(jù)包等。
2. 解釋一下管程
管程是由一組局部變量、對局部變量進(jìn)行操作的一組過程和對局部變量進(jìn)行初始化的語句序列組成。引入它的目的是因?yàn)閃ait/Singal操作太過分散,對它的維護(hù)很麻煩且容易造成死鎖。管程的特點(diǎn)是:管程的過程只能訪問管程的局部變量,管程的局部變量只能由其過程來訪問;任何時刻只能有一個進(jìn)程進(jìn)入管程執(zhí)行;進(jìn)程只能通管程提供的過程入口進(jìn)入管程;
3. 在可變分區(qū)管理中,需要哪些硬件機(jī)制
采用可變分區(qū)方式管理時,一般均采用動態(tài)重定位方式裝入作業(yè)。地址變換要靠硬件支持,主要是兩個寄存器:基址寄存器和限長寄存器,限長寄存器存放作業(yè)所占分區(qū)的長度,基址寄存器則存放作業(yè)所占分區(qū)的起始地址,這兩個值確定了一個分區(qū)的位置和大小。
轉(zhuǎn)換時根據(jù)邏輯地址與限長值比較,如果不有超過這個值,表示訪問地址合法,再加上基址寄存器中的值就得到了絕對地址了,否則形成“地址越界”中斷。
4. 中斷和陷入有什么異同?
外中斷時指來自處理機(jī)和內(nèi)存外部的中斷,如I/O中斷、定時器中斷、外部信號中斷等。狹義上也叫中斷; 內(nèi)中斷主要指在處理機(jī)和內(nèi)存內(nèi)部產(chǎn)生的中斷,也稱陷入,如校驗(yàn)錯、頁面失效、溢出、除數(shù)為零等;
中斷和陷阱的主要區(qū)別:
(1)陷入通常由處理機(jī)正在執(zhí)行的現(xiàn)行指令引起,而中斷則是由與現(xiàn)行指令無關(guān)的中斷源引起的。
(2) 陷阱處理程序提供的服務(wù)為當(dāng)前進(jìn)程所用,而中斷處理程序提供的服務(wù)則不是為了當(dāng)前進(jìn)程的。
(3) CPU在執(zhí)行完一條指令之后,下一條指令開始之前響應(yīng)中斷,而在一條指令執(zhí)行中也可以響應(yīng)陷阱。
5. 數(shù)據(jù)庫系統(tǒng)和文件系統(tǒng)相比有什么優(yōu)點(diǎn)?
文件系統(tǒng) 數(shù)據(jù)庫管理系統(tǒng) 某一應(yīng)用
6. 計算機(jī)網(wǎng)絡(luò)和分布式計算機(jī)系統(tǒng)的區(qū)別?
兩者在計算機(jī)硬件連接、系統(tǒng)拓樸結(jié)構(gòu)和通信控制等方面基本都是一樣的,它們都具有通信和資源共享的功能。 區(qū)別關(guān)鍵在于:分布式計算機(jī)系統(tǒng)是在分布式計算機(jī)操作系統(tǒng)支持下,進(jìn)行分布式數(shù)據(jù)庫處理的,也就是說各互聯(lián)的計算機(jī)可以互相協(xié)調(diào)工作,共同完成一項(xiàng)任務(wù),多臺計算機(jī)上并行運(yùn)行。且具有透明性,用戶不知道數(shù)據(jù)、資源的具體位置,整個網(wǎng)絡(luò)中所有計算機(jī)就像是一臺計算機(jī)一樣;而計算機(jī)網(wǎng)絡(luò)卻不具備這種功能,計算機(jī)網(wǎng)絡(luò)系統(tǒng)中的各計算機(jī)通常是各自獨(dú)立進(jìn)行工作的。
7. 為什么引入多道程序技術(shù)?
因?yàn)橐攵嗟莱绦蚣夹g(shù)后,可以進(jìn)一步提高了CPU利用率(阻塞),提高內(nèi)存和I/O設(shè)備利用率(小作業(yè)把內(nèi)存浪費(fèi)了),增加系統(tǒng)吞吐量(兩都提高后的必然)。
看了“計算機(jī)專業(yè)面試問題”