很多人都在考計算機四級嵌入式,為的是有一個更好的工作,嵌入式四級四級,聽名字就知道他不簡單,對于嵌入式四級來說,包含的知識點比較多,有編程開發(fā)方向的,有操作系統(tǒng)方面的都是這種有難度的題型,介于這個,我總結(jié)出了一些嵌入式四級題,計算機四級考試的可以來參考哦。
一、編程開發(fā)能力方向:
1、用預處理指令#define聲明一個常數(shù),用以表明一年中有多少秒(忽略閏年問題);寫一個“標準”宏MIN函數(shù),這個宏輸入兩個參數(shù)并返回較小的一個。
2、用變量a給出下面的定義:
(1)一個整型數(shù)(An integer);
(2)一個指向整型數(shù)的指針(A pointer to an integer);
(3)一個指向指針的指針,它指向的指針是指向一個整型數(shù)(A pointer to a pointer to an integer);
(4)一個有10個整型數(shù)的數(shù)組(An array of 10 integers);
(5)一個有10個指針的數(shù)組,該指針是指向一個整型數(shù)的(A array of 10 pointers to integers);
(6)一個指向有10個整型數(shù)組的指針(A pointer to an array of 10 integers);
(7)一個指向函數(shù)的指針,該函數(shù)有一個整型參數(shù)并返回一個整型數(shù)(A pointer to a function that takes an integer as an argument returns an integer);
(8)一個有10個指針的數(shù)組,該指針指向一個函數(shù),該函數(shù)有一個整型參數(shù)并返回一個整型數(shù)(An array of 10 pointers to functions that take an integer argument and return an integer);
3、關鍵字volatile有什么含義?并舉出三個不同的例子。
4、嵌入式系統(tǒng)總是要用戶對變量或寄存器進行位操作,給定一個整型變量a,寫兩段代碼,第一個設置a 的bit 3,第二個清除a 的bit 3,在以上操作中,要保持其他位不變。
5、嵌入式系統(tǒng)經(jīng)常具有要求程序員去訪問某特定的內(nèi)存位置的特點,在某工程中,要去設置一絕對地址為0x67a9的整型變量的值為0xaa66。編譯器是一個純粹的ANSI編譯器,寫代碼去完成這一任務。
6、中斷是嵌入式系統(tǒng)中的重要組成部分,這導致了很多編譯開發(fā)商提供一種擴展——讓標準C支持中斷,具有代表性的是,產(chǎn)生一個新的關鍵字:__interrupt,下面的代碼就使用了__interrupt去定義了一個中斷子程序(ISR),請評論下這段代碼的__interrupt,
double compute_area(double radius) {
double area=PI*radius*radius; print f(" Area"=%f,area); return area; }
7、盡管不像非嵌入式計算機那樣常見,嵌入式系統(tǒng)還是有從堆(heap)中動態(tài)分配內(nèi)存的過程的,那么嵌入式系統(tǒng)中,動態(tài)分派內(nèi)存可能發(fā)生的問題是什么?
8、關鍵字static 的作用是什么?
9、#include 與#include "file.h"的區(qū)別? 10、請說出const 與#define 相比,有何優(yōu)點?
二、嵌入式系統(tǒng)編程:
1、進程與線程有什么區(qū)別?
2、操作系統(tǒng)有哪幾個特征?最主要的特征是什么?虛擬存儲器有哪幾個特征?
其最本質(zhì)的特征是什么?
3、庫函數(shù)的調(diào)用和系統(tǒng)調(diào)用的區(qū)別?
4、Linux進程間通行方式有哪幾種以及各自的特點?
5、Linux中四層網(wǎng)絡模型?IP的各種類型的范圍?
6、在Linux系統(tǒng)中,造成死鎖的原因有哪些?
7、Linux網(wǎng)絡編程中主要使用的API有哪些以及網(wǎng)絡服務器模型的種類? 8、簡述對Linux的認識(特點,優(yōu)勢)。
三、嵌入式平臺開發(fā)
1、bootloader 是什么?bootloader的stage1和stage2分別做的工作有哪些? 2、Linux內(nèi)核版本命名的規(guī)則? 3、Linux設備文件有哪幾類?
4、Linux文件系統(tǒng)的種類有哪些以及使用特點? 5、嵌入式系統(tǒng)移植的主要工作步驟是什么?
四、編程能力實測
1、編寫一個C函數(shù),將“I am from shanghai”倒置為“shanghai from am I”即將句子中的單詞位置倒置,并不改變單詞內(nèi)部結(jié)構。
2、請編寫一個C函數(shù),該函數(shù)可以實現(xiàn)將一個整數(shù)轉(zhuǎn)為任意進制的字符串輸出。
五、操作系統(tǒng)方向
1.異步環(huán)境下的一組并發(fā)的進程因為直接制約而相互發(fā)送消息,進行相互合作,相互等待,使得各進程按照一定的速度執(zhí)行的過程稱為進程間的同步。
2.P,V操作可以實現(xiàn)進程同步,進程互斥,進程的前驅(qū)關系,進程共享是屬于進程間大量信息的交換
3.在民航訂票系統(tǒng)中,每個訂票點在票務服務器上發(fā)起了請求訂票進程,這些進程的關系是互斥關系
4.進程間的相互制約關系如下:
相互感知程度 交互關系 一個進程對其他進程的影響 潛在的控制問題
相互不感知 競爭關系 一個進程的操作對其他進程的結(jié)果無影響 互斥,死鎖,饑餓
間接感知 通過共享進行協(xié)作 互斥,死鎖,饑餓,數(shù)據(jù)一致性
直接感知 通過通信進行協(xié)作
其中間接感知 共享進行協(xié)作 進程死鎖,互斥,饑餓,數(shù)據(jù)一致性
5.不同的用戶在同一臺游戲機上玩踢足球的電子游戲的時候既有同步關系又有互斥關系
6.用P,V操作管理臨界區(qū)的時候,把信號量mutex的初值設定為1,。當有k(k>1 )個進程在mutex的等待隊列中,信號量的值為-k
7.進程間通信時,已經(jīng)滿的郵件槽,發(fā)送進程不能再申請互斥鎖
8.共享內(nèi)存適合傳送大量的信息,是非高效
9.對信號量的操作有:初始化,等信號,給信號,清理
10.在訪問前必須先調(diào)用進入?yún)^(qū)代碼,然后執(zhí)行臨界區(qū)代碼,最后執(zhí)行退出區(qū)代碼
11.管道通信時同步的
12.信息緩沖通信機制包括:信息緩沖區(qū),消息隊列首地址,同步互斥信號量,發(fā)送接收信息原語
六、最重要的:算機嵌入式四級考試易錯題
1.進程由多個線程組成,有一個線程被調(diào)度程序選入投入運行(占用CPU),則該進程就為運行狀態(tài)。
2.pthread_join: 等待一個特定的線程退出。
pthread_yield:表示線程讓出CPU。(yield:讓位,退位)
pthread_mutex_init:創(chuàng)建一個互斥量。
pthread_create:創(chuàng)建線程后運行該線程。
pthread_exit:運行后主動退出。
沒調(diào)用這些函數(shù)時,也沒有出錯指令,線程執(zhí)行完指令后退出。
3.有CPU資源讓出來的不一定能發(fā)生調(diào)度,但沒有CPU資源讓出,則一定不會發(fā)生進程調(diào)度。
4.同步關系:異步環(huán)境下的一組并發(fā)的進程因直接制約而相互發(fā)送消息、進行相互合作、相互等待,使得各進程按一定的速度執(zhí)行的過程(流水線,無競爭);競爭關系:公共資源,導致競爭。
5.有K個進程在mutex(初始為1)的等待隊列,當前需要訪問臨界區(qū)的進程有k+1個,此時mutex=-k。
6.p_v操作。
7.虛擬頁式存儲管理:在進程開始運行之前不是裝入全部頁面,而是裝入一個或零個頁面,之后根據(jù)進程運行的需要,動態(tài)轉(zhuǎn)入其他頁面。當內(nèi)存空間已滿,而又需要裝入新的頁面時,根據(jù)某種算法置換頁面,裝入新的頁面。
將內(nèi)存等分成大小為2的冪次方的內(nèi)存塊,成為頁框
系統(tǒng)將虛擬地址空間等分為若干頁面,大小與頁框相同
虛擬頁面在物理空間上不要求連續(xù)存放
硬件機制實現(xiàn)邏輯地址到物理地址的動態(tài)轉(zhuǎn)換
虛擬頁式存儲技術的基本思想就是利用大容量的外存來擴充內(nèi)存。(使用交換技術)
8.在成功打開一個文件系統(tǒng)調(diào)用后,系統(tǒng)會給用戶返回一個文件描述符。
系統(tǒng)描述符在形式上是一個非負整數(shù)。(實際上是一個索引值,指向內(nèi)核為每一個進程所維護的該進程打開文件的記錄表)。當程序打開一個現(xiàn)有文件或者創(chuàng)建一個新文件時,內(nèi)核向進程返回一個文件描述符。(文件描述符只在UNIX,LINUX提到)
9.指令流水線中,最大吞吐率是指:流水線達到穩(wěn)定狀態(tài)后可以獲得的吞吐率。
指令流水線中的吞吐率是指:單位時間內(nèi)流水線上所完成的指令或輸出結(jié)果的數(shù)量。
10.光磁記錄型可擦寫光盤的存取原理:熱磁效應。
11.8086CPU在響應INTR中斷時,為了得到指向存放中斷向量的內(nèi)存的實際物理地址,將I/O給的中斷類型碼乘以4。
中斷類型碼→中斷向量(左移)
中斷向量→中斷類型碼(右移)
其實也不只是這些,還有很多,這是我總結(jié)的一部分,計算機四級嵌入式考試的人都快來看看,為自己以后的考試做好充分的準備。