新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > uclinux內(nèi)核配置與裁減

uclinux內(nèi)核配置與裁減

作者: 時(shí)間:2018-08-31 來源:網(wǎng)絡(luò) 收藏

本文引用地址:http://m.butianyuan.cn/article/201808/388125.htm

如果要進(jìn)一步裁減根文件系統(tǒng),可以修改和刪除vender/HHTech/BF533-HHBF/目錄下的相關(guān)文件,具體操作不再詳述。

的多進(jìn)程處理

沒有mmu管理存儲(chǔ)器,在實(shí)現(xiàn)多個(gè)進(jìn)程時(shí)(fork調(diào)用生成子進(jìn)程)需要實(shí)現(xiàn)數(shù)據(jù)保護(hù)。 的fork和vfork:uClinux的fork等于vfork。實(shí)際上uClinux的多進(jìn)程管理通過vfork來實(shí)現(xiàn)。這意味著 uClinux系統(tǒng)fork調(diào)用完程后,要么子進(jìn)程代替父進(jìn)程執(zhí)行(此時(shí)父進(jìn)程已經(jīng)sleep)直到子進(jìn)程調(diào)用exit退出,要么調(diào)用exec執(zhí)行一個(gè)新的進(jìn)程,這個(gè)時(shí)候?qū)a(chǎn)生可執(zhí)行文件的加載,即使這個(gè)進(jìn)程只是父進(jìn)程的拷貝,這個(gè)過程也不能避免。當(dāng)子進(jìn)程執(zhí)行exit或exec后,子進(jìn)程使用 wakeup把父進(jìn)程喚醒,父進(jìn)程繼續(xù)往下執(zhí)行。   uClinux的這種多進(jìn)程實(shí)現(xiàn)機(jī)制同它的內(nèi)存管理緊密相關(guān)。 uClinux針對(duì)nommu處理器開發(fā),所以被迫使用一種flat方式的內(nèi)存管理模式,啟動(dòng)新的應(yīng)用程序時(shí)系統(tǒng)必須為應(yīng)用程序分配存儲(chǔ)空間,并立即把應(yīng)用程序加載到內(nèi)存。缺少了MMU的內(nèi)存重映射機(jī)制,uClinux必須在可執(zhí)行文件加載階段對(duì)可執(zhí)行文件reloc處理,使得程序執(zhí)行時(shí)能夠直接使用物理內(nèi)存。


上一頁(yè) 1 2 3 下一頁(yè)

關(guān)鍵詞: 內(nèi)核配置 uClinux

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉