當前位置:才華齋>計算機>計算機四級>

2015年嵌入式系統開發工程師模擬試題

計算機四級 閱讀(3.04W)

  一.綜合程式設計題。

2015年嵌入式系統開發工程師模擬試題

要求:

1、完成需求,程式執行正確。

2、工作原理文件,使用文件完整。

3、程式碼規整優美。註釋得當。

4、執行速度足夠快。

5、用工具分析出是哪些程式碼或函式造成速度瓶頸。

1、———————————————————–

編寫一個排序程式。被排序的檔案有8MB大小,一行一個隨機整數(ASCII格式)。要求對這些整數進行排序,並計算平均值,打印出排序所需的時間。(20分)

2、———————————————————–

用dummy header技巧實現一個連結串列DEMO。要求具有create, insert, delete, search功能。編寫一個應用程式,使用上面的函式。使用dummy header技巧有什麼優點。(20分)

3、———————————————————–

用heapsort演算法實現優先佇列。要求具有create, insert, delete功能。

編寫一個應用程式,使用上面的函式。使用heapsort演算法有什麼優點。(20分)

用trie(一種多叉樹)實現一個字典。要求具有create, insert, delete, search功能。

編寫一個應用程式,使用上面的函式。使用trie樹有什麼優點。(20分)

  二.問答題

1、———————————————————–

寫一些程式碼。如何用檔案實現訊號燈?要求如果程式崩潰了,這個檔案也將自動被刪除。

為什麼可以這樣實現訊號燈?(5分)

傳統的signal函式訊號處理為什麼是不可靠的,訊號和系統呼叫有何關係?(5分)

在圖形庫系統中往往提供timer的功能,除了使用ALARM訊號外,你還可以使用什麼系統呼叫來實現timer?(5分)

2、———————————————————–

寫一些程式碼,演示如何正確使用write系統呼叫。注意看好手冊再回答。(2分)

如果一個檔案以rw模式開啟,在進行read/write操作轉換時,需要進行什麼操作。(2分)

3、———————————————————–

解釋終端結構termios.c_cc的MIN/TIME數值變化的帶來read/write的特性。(5分)

如何理解終端、控制終端、虛擬終端、控制檯、tty等類同的概念?(5分)

4、———————————————————–

解釋計算機中Copy-On-Write的概念。(2分)

呼叫fork之後,子程序沒有繼承父程序的屬性有哪些?(5分)

解釋為什麼每個程式在裝入執行之後,總是已經預先打開了stdout、stdin、stderr?(2分)

在fork之前,父程序打開了一個檔案。在fork之後,如果子程序移動了檔案指標,父程序的`檔案指標有什麼變化;如果子程序關閉了檔案,父程序有什麼變化?為什麼會這樣?(5分)

標準輸入、輸出和錯誤輸出分別是什麼型別的緩衝,這些緩衝在使用者空間還是在核心空間?

怎樣關閉他們的緩衝?如果父程序關閉了緩衝,在fork之後建立的子程序是否也關閉了緩衝?(5分)

vfork和fork相比,有什麼特色?(2分)

system函式是否等同於fork+exec?(2分)

wait系統呼叫有多少種條件可以退出?(2分)

5、———————————————————–

系統呼叫和庫函式呼叫有什麼區別。(2分)

在linux2.4.x上的glibc和newlib(一種嵌入式C庫)的系統呼叫有什麼不同?(2分)

在linux2.4.x上,對系統呼叫execve如果呼叫成功,它返回的值是多少。(2分)

6、———————————————————–

列出你所知道的2個記憶體跟蹤庫。(2分)

設計一個記憶體跟蹤方案,為什麼選擇這個方案(5分)