以下就是初學(xué)者嵌入式linux學(xué)習(xí)的步驟:
學(xué)習(xí)步驟:
信號量與互斥鎖的區(qū)別?
(1)、互斥量用于線程的互斥,信號量用于線程的同步。互斥:是指某一資源同時只允許一個訪問者對其進行訪問,具有性和排它性。但互斥無法限制訪問者對資源的訪問順序,即訪問是無序的。
同步:是指在互斥的基礎(chǔ)上(大多數(shù)情況),通過其它機制實現(xiàn)訪問者對資源的有序訪問。在大多數(shù)情況下,同步已經(jīng)實現(xiàn)了互斥,特別是所有寫入資源的情況必定是互斥的。少數(shù)情況是指可以允許多個訪問者同時訪問資源。
(2)、互斥量值只能為0/1,信號量值可以為非負(fù)整數(shù)。也就是說,一個互斥量只能用于一個資源的互斥訪問,它不能實現(xiàn)多個資源的多線程互斥問題。信號量可以實現(xiàn)多個同類資源的多線程互斥和同步。當(dāng)信號量為單值信號量是,也可以完成一個資源的互斥訪問。
(3)、互斥量的加鎖和解鎖必須由同一線程分別對應(yīng)使用,信號量可以由一個線程釋放,另一個線程得到。
學(xué)習(xí)第二步驟:
簡述memcpy和strcpy的區(qū)別?
(1)、兩者的復(fù)制方法不同。strcpy不需要指定長度,它遇到被復(fù)制字符的串結(jié)束符""才結(jié)束,所以容易溢出。memcpy則是根據(jù)其第3個參數(shù)決定復(fù)制的長度。
(2)、兩者的復(fù)制內(nèi)容不同。strcpy只能復(fù)制字符串,而memcpy可以復(fù)制任意內(nèi)容,例如字符數(shù)組、整型、結(jié)構(gòu)體、類等。
(3)、兩者的用途不同。通常在復(fù)制字符串時用strcpy,而需要復(fù)制其他類型數(shù)據(jù)時則一般用memcpy。
學(xué)習(xí)第三步驟:簡述程序編譯的過程?
預(yù)處理:可以把預(yù)處理當(dāng)于成根據(jù)預(yù)處理命令組裝成新的C程序,不過它一般都是以i為擴展名。
編譯: 把得到的i文件翻譯成匯編代碼s文件。
匯編:把匯編文件翻譯成機器指令,然后打包成可重定位目標(biāo)程序的O文件。這個文件是二進制文件。
鏈接:引用其他O文件并入到我們程序所在的o文件中,處理得到終的可執(zhí)行文件。
對于初學(xué)者來說,想要學(xué)習(xí)好嵌入式linux技術(shù)的話,只要找到一個好的嵌入式linux培訓(xùn)機構(gòu)和做好真的要認(rèn)真學(xué)習(xí)的心理準(zhǔn)備的話,那么學(xué)習(xí)嵌入式linux技術(shù)肯定是沒有問題的。想要了解更多關(guān)于嵌入式linux學(xué)習(xí)方面的內(nèi)容可以咨詢我們的在線講師,或者是點擊下面的獲取試聽資格按鈕來獲取我們的嵌入式linux免費課程學(xué)習(xí)。