linux嵌入式面试300问,经典嵌入式Linux面试题3问
題一:
簡述memcpy和strcpy的區別?
題二:
信號量與互斥鎖的區別?
題三:
簡述程序編譯的過程?
題一答案:
(1)、復制的內容不同。strcpy只能復制字符串,而memcpy可以復制任意內容,例如字符數組、整型、結構體、類等。
(2)、復制的方法不同。strcpy不需要指定長度,它遇到被復制字符的串結束符"0"才結束,所以容易溢出。memcpy則是根據其第3個參數決定復制的長度。
(3)、用途不同。通常在復制字符串時用strcpy,而需要復制其他類型數據時則一般用memcpy
題二答案:
(1)、互斥量用于線程的互斥,信號量用于線程的同步。互斥:是指某一資源同時只允許一個訪問者對其進行訪問,具有唯一性和排它性。但互斥無法限制訪問者對資源的訪問順序,即訪問是無序的。
同步:是指在互斥的基礎上(大多數情況),通過其它機制實現訪問者對資源的有序訪問。在大多數情況下,同步已經實現了互斥,特別是所有寫入資源的情況必定是互斥的。少數情況是指可以允許多個訪問者同時訪問資源。
(2)、互斥量值只能為0/1,信號量值可以為非負整數。也就是說,一個互斥量只能用于一個資源的互斥訪問,它不能實現多個資源的多線程互斥問題。信號量可以實現多個同類資源的多線程互斥和同步。當信號量為單值信號量是,也可以完成一個資源的互斥訪問。
(3)、互斥量的加鎖和解鎖必須由同一線程分別對應使用,信號量可以由一個線程釋放,另一個線程得到。
題三答案:
預處理:預處理相當于根據預處理命令組裝成新的C程序,不過常以i為擴展名。
編譯: 將得到的i文件翻譯成匯編代碼.s文件。
匯編:將匯編文件翻譯成機器指令,并打包成可重定位目標程序的O文件。該文件是二進制文件。
鏈接:將引用的其他O文件并入到我們程序所在的o文件中,處理得到最終的可執行文件。
總結
以上是生活随笔為你收集整理的linux嵌入式面试300问,经典嵌入式Linux面试题3问的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: sql附加服务器数据库文件,批量附加sq
- 下一篇: linux 其他常用命令