在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁(yè) > 手機(jī)與無(wú)線(xiàn)通信 > 設(shè)計(jì)應(yīng)用 > 基于USB接口的微型桌面Linux系統(tǒng)設(shè)計(jì)方案

            基于USB接口的微型桌面Linux系統(tǒng)設(shè)計(jì)方案

            作者: 時(shí)間:2012-07-27 來(lái)源:網(wǎng)絡(luò) 收藏

            SquashFS 壓縮是只讀的,從而避免了對(duì)磁盤(pán)不必要的擦寫(xiě),但同時(shí)也造成了修改數(shù)據(jù)不能保存的問(wèn)題。

            AUFS 的出現(xiàn)正好解決了上述問(wèn)題,它管理一個(gè)基本文件(即本文中的Squashfs 鏡像,保持原只讀狀態(tài))和一個(gè)讀寫(xiě)存儲(chǔ)文件系統(tǒng)(必須具有讀寫(xiě)權(quán)限)。通過(guò)AUFS,用戶(hù)可以虛擬地修改基本文件系統(tǒng)上的文件,但修改后的結(jié)果卻保存在讀寫(xiě)存儲(chǔ)文件系統(tǒng)中,從而實(shí)現(xiàn)了數(shù)據(jù)的透明修改。

            3.5 Initrd 初始化內(nèi)存盤(pán)

            Initrd(boot loader Initialized RAM Disk 的縮寫(xiě)),由boot loader 初始化。本系統(tǒng)使用的boot loader 為GNU GRUB 0.97.如果Grub 已配置Initrd, 內(nèi)核在啟動(dòng)前,會(huì)把存儲(chǔ)設(shè)備中的Initrd 文件加載到內(nèi)存,作為一個(gè)臨時(shí)根文件系統(tǒng);內(nèi)核啟動(dòng)時(shí)通過(guò)先執(zhí)行Initrd 中的init 文件,完成設(shè)備驅(qū)動(dòng)模塊和squashsf、aufs 文件系統(tǒng)模塊的加載,并完成真正的根文件系統(tǒng)的掛載,然后執(zhí)行系統(tǒng)中的/sbin/init 進(jìn)程。

            與普通IDE、SATA 硬盤(pán)相比, 存儲(chǔ)設(shè)備從驅(qū)動(dòng)模塊加載到設(shè)備可用,比較慢,需要幾秒鐘。

            因此內(nèi)核在掛載 存儲(chǔ)設(shè)備時(shí),會(huì)出現(xiàn): 設(shè)備沒(méi)有初始化完成,真正根文件系統(tǒng)掛載失敗的問(wèn)題。為了解決此問(wèn)題,筆者在Initrd 中修改init 可執(zhí)行文件,當(dāng)加載USB 驅(qū)動(dòng)后,系統(tǒng)將休眠5 秒,讓USB 設(shè)備初始化完成后再掛載USB 存儲(chǔ)設(shè)備中的根文件系統(tǒng)。本系統(tǒng)的init 文件配置如下:

            本系統(tǒng)Initrd 中的最小化根文件系統(tǒng)由BusyBox創(chuàng)建,包含bin、dev、etc、lib、mnt、proc、sbin、sys這些必須的目錄和相關(guān)文件。由于BusyBox 生成的modprobe 命令不能正常執(zhí)行,所以需要復(fù)制宿主系統(tǒng)中的modprobe 命令并替換Initrd 中的sbin 目錄中的同名文件,同時(shí)通過(guò)ldd 查看modprobe 依賴(lài)的庫(kù)文件,并復(fù)制到Initrd 中的lib 目錄。

            最后在宿主機(jī)器上通過(guò)命令:

            find . | cpio –o –H newc | gzip > /boot/initrd.img-2.6.27.27 制作Initrd 鏡像文件。

            3.6 Grub 啟動(dòng)引導(dǎo)器

            GNU GRUB (GNU GRand Unified Bootloader 的縮寫(xiě)),是GNU 項(xiàng)目中一個(gè)多操作系統(tǒng)啟動(dòng)引導(dǎo)程序,也是 系統(tǒng)中最常用引導(dǎo)工具之一。為了讓系統(tǒng)從USB 設(shè)備啟動(dòng),必須將GRUB 程序安裝在USB 存儲(chǔ)設(shè)備的主引導(dǎo)記錄(MBR)中。

            以GRUB 0.9X 的安裝步驟如下:

            安裝grub 程序在U 盤(pán)的/boot/grub 目錄下,確保其目錄存在menu.lst,stage1,stage2 三個(gè)文件。

            進(jìn)入grub 命令窗口,運(yùn)行以下命令安裝到U 盤(pán)的MBR:

            grub>root(hd1,0) #假定 系統(tǒng)所在盤(pán)符為第二塊硬盤(pán)的第一個(gè)分區(qū)

            grub>setup(hd1)

            實(shí)際操作時(shí)根據(jù)硬盤(pán)分區(qū)不同作相應(yīng)修改。

            修改/boot/grub/menu.lst 文件,本文的menu.lst 如下:

            3.7 Xfce 環(huán)境

            Xfce 是一款適用于多種*NIX 系統(tǒng)上運(yùn)行的輕量級(jí)環(huán)境,它的目的是在節(jié)省系統(tǒng)資源的情況下能夠快速加載并執(zhí)行應(yīng)用程序。與Gnome 和KDE等比較臃腫的環(huán)境相比,Xfce 占用的系統(tǒng)資源少,同時(shí)它擁有很小的依賴(lài)性和很好的模塊性。本系統(tǒng)所用的Xfce 4.6.2 主要由實(shí)用工具libxfce4util、微件庫(kù)libxfcegui4、擴(kuò)展庫(kù)exo、菜單庫(kù)libxfce4menu、窗口管理xfwm4、桌面管理xfdesktop、面板xfce4-panel、會(huì)話(huà)管理xfce4-session、設(shè)置管理xfce4-settings、配置管理xfconf、文件管理thunar、實(shí)用程序xfce-utils、應(yīng)用程序查找xfce4-appfinder 等部件構(gòu)成。

            4 具體實(shí)現(xiàn)

            4.1 系統(tǒng)在USB 盤(pán)上的實(shí)現(xiàn)

            在宿主系統(tǒng)上構(gòu)建好整個(gè)Linux 桌面系統(tǒng)后,按前所述配置好只讀文件系統(tǒng)鏡像system.squashfs、初始化內(nèi)存盤(pán)Initrd、內(nèi)核鏡像vmlinuz、Grub 中的menu.lst 文件、USB 盤(pán)標(biāo)志文件LABEL,然后按以下步驟將系統(tǒng)移植進(jìn)USB 盤(pán)。

            ①準(zhǔn)備一個(gè)8G 的USB 盤(pán),分為兩個(gè)區(qū):一個(gè)分區(qū)作為系統(tǒng)區(qū),文件系統(tǒng)為EXT2,并激活為啟動(dòng)分區(qū),作為L(zhǎng)inux 系統(tǒng)使用;一個(gè)分區(qū)為數(shù)據(jù)區(qū),文件系統(tǒng)為FAT32,平時(shí)作為與Windows 系統(tǒng)交互的分區(qū),保存移動(dòng)辦公數(shù)據(jù)。

            ②將system.squashfs、Initrd、vmlinuz、LABEL 和Grub 相關(guān)文件復(fù)制到系統(tǒng)區(qū),并在系統(tǒng)區(qū)中新建system_ro( 用于掛載squashfs 只讀文件系統(tǒng)) 、system_rw(用于掛載aufs 文件系統(tǒng)時(shí)的修改文件存儲(chǔ)目錄)、system(用于最終文件系統(tǒng)的掛載目錄)三個(gè)目錄。

            ③運(yùn)行g(shù)rub 程序中的root、setup 命令將啟動(dòng)引導(dǎo)信息寫(xiě)入U(xiǎn)SB 盤(pán)的系統(tǒng)區(qū)的MBR.

            4.2 系統(tǒng)啟動(dòng)過(guò)程

            USB 桌面Linux 系統(tǒng)的啟動(dòng)過(guò)程如圖2 如示。

            計(jì)算機(jī)開(kāi)機(jī)自檢, BIOS 引導(dǎo)到USB 的磁盤(pán)設(shè)備,通過(guò)啟動(dòng)引導(dǎo)管理器Grub,加載Linux 內(nèi)核文件vmlinuz,內(nèi)核將初始化內(nèi)存盤(pán)initrd.img-2.6.27.27加載到內(nèi)存,形成一個(gè)臨時(shí)根文件系統(tǒng),通過(guò)執(zhí)行Initrd 中的init 可執(zhí)行文件,進(jìn)行sysfs、proc 文件系統(tǒng)的加載,并對(duì)硬件進(jìn)行初始化,相關(guān)硬件驅(qū)動(dòng)、squashfs、aufs 模塊的加載后,掛載系統(tǒng)只讀鏡像system.squashfs,并通過(guò)聯(lián)合文件系統(tǒng)aufs 使其可寫(xiě),然后轉(zhuǎn)到真正的根文件系統(tǒng)執(zhí)行命令/sbin/init,完成桌面Linux 系統(tǒng)的啟動(dòng)。

            圖2 系統(tǒng)啟動(dòng)過(guò)程

            圖2 系統(tǒng)啟動(dòng)過(guò)程

            5 實(shí)驗(yàn)結(jié)果

            本文實(shí)現(xiàn)了在USB 接口的存儲(chǔ)設(shè)備上構(gòu)建桌面Linux 系統(tǒng),在具有USB 接口啟動(dòng)功能的各種主流品牌臺(tái)式計(jì)算機(jī)、筆記本和兼容機(jī)上都能成功運(yùn)行,并且在硬件配置比較低的老式486、586 等機(jī)器也能流暢地運(yùn)行,根據(jù)機(jī)器硬件配置的不同,一般啟動(dòng)時(shí)間為20 秒至50 秒,具有很好的實(shí)用價(jià)值,真正實(shí)現(xiàn)了便捷、高效的移動(dòng)辦公需要。本系統(tǒng)成功啟動(dòng)圖形桌面系統(tǒng)后的效果如圖3 所示。

            linux操作系統(tǒng)文章專(zhuān)題:linux操作系統(tǒng)詳解(linux不再難懂)

            linux相關(guān)文章:linux教程




            評(píng)論


            相關(guān)推薦

            技術(shù)專(zhuān)區(qū)

            關(guān)閉