freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

王雨晴-嵌入式系統(tǒng)論文-資料下載頁(yè)

2025-01-17 00:28本頁(yè)面
  

【正文】 25 root = /dev/hda2 other = /dev/hda1 label = dos 添加一新配置需添加 image,label,root 及配合 VESA frame buffer 的 vga等四項(xiàng) : boot = /dev/hda2 timeout = 50 prompt readonly image = /boot/ label = linux root = /dev/hda2 image = /boot/ (新編譯的支持 Frame Buffer 內(nèi)核) label = linuxfb (啟動(dòng)標(biāo)號(hào),可自定) root = /dev/hda2 (你的根文件系統(tǒng),具體會(huì)有不同) vga = 0x314 (顯示模式,參照下表) other = /dev/hda1 label = dos 顯示模式參照表 640x480 800x600 1024x768 1280x1024 256 0x301 0x303 0x305 0x307 32k 0x310 0x313 0x316 0x319 64k 0x311 0x314 0x317 0x31A 16M 0x312 0x315 0x318 0x31B 更新啟動(dòng)程序 運(yùn)行 lilo 重啟,出現(xiàn) lilo: 時(shí)鍵入 linuxfb (或自定的標(biāo)號(hào))。 這時(shí)如果 linux切換成圖形模式,并有一小企鵝 logo出現(xiàn),那就大功告成一半。 配置 frame buffer Server 修改 /etc/X11/XF86Config 這個(gè)配置文件。 26 vi /etc/X11/XF86Config 查找一下字符 Screen 在 Screen sections的開(kāi)始增加如下幾行 Section Screen Driver fbdev Device My Video Card Monitor My Monitor Subsection Display Depth 16 (色彩深度,必須與前面所選的顯示模式的色彩深度一致,必須 !) Modes default ViewPort 0 0 EndSubsection EndSection 讓 X 指向 XF86_FBDev cd /etc/X11 rm f X ln snf /usr/X11R6/bin/XF86_FBDev X Linux 下創(chuàng)建和使用 RamDisk 的技巧 先 介紹一下什么是 RamDisk。 RamDisk實(shí)際是從內(nèi)存中劃出一部分作為一個(gè)分區(qū)使用,換句話說(shuō),就是把內(nèi)存一部分當(dāng)做硬盤使用,你可以向里邊存文件。那么為什么要用 RamDisk呢?假設(shè)有幾個(gè)文件要頻繁的使用,你如果將它們加到內(nèi)存當(dāng)中,程序運(yùn)行速度會(huì)大副提高,因?yàn)閮?nèi)存的讀寫(xiě)速度遠(yuǎn)高于硬盤。況且內(nèi)存價(jià)格低廉,一臺(tái) PC 有 128M 或 256M 已不是什么新鮮事。劃出部分內(nèi)存提高整體性能不亞于更換新的 CPU。何樂(lè)而不為呢?象 WEB 服務(wù)器這樣的計(jì)算機(jī),需要大量的讀取和交換特定的文件,因此,在 WEB服務(wù)器上建立 RamDisk會(huì) 大大提高網(wǎng)絡(luò)讀取速度。 ( 1) 創(chuàng)建和使用 RamDisk的方法。 使用 RamDisk 非常方便,缺省安裝的 就支持 RamDisk。你所要作的就是格式化 RamDisk并把它裝載到一個(gè)目錄下。要想查看 RamDisk的數(shù)目,用命令 ls al /dev/ram*,它會(huì)給出所有當(dāng)前情況下可用的 RamDisk。這些 RamDisk 只有使用的時(shí)候才占用內(nèi)存。下面是使用 RamDisk的幾個(gè)命令: #創(chuàng)建裝載點(diǎn) mkdir /tmp/ramdisk0 27 創(chuàng)建一個(gè)文件系統(tǒng) mke2fs /dev/ram0 裝載 ramdisk: mount /dev/ram0 /tmp/ramdisk0 這三個(gè)命令將會(huì)為 RamDisk 創(chuàng)建一個(gè)目錄、格式化 RamDisk(創(chuàng)建文件系統(tǒng))并把 RamDisk 裝載到目錄 /tmp/ramdisk0中。現(xiàn)在,你就可以把它作為一個(gè)磁盤分區(qū)使用了。 如果格式化 RamDisk 失敗,可能是因?yàn)槟銢](méi)有把對(duì) RamDisk 的支持編譯進(jìn)內(nèi)核中去。內(nèi)核中對(duì) RamDisk 的配置選項(xiàng)是 CONFIG_BLK_DEV_RAM。 缺省的 RamDisk 為 4M。使用 mke2fs 命令可以 查知你所獲 RamDisk 的大小。命令 mke2fs /dev/ram0 會(huì)產(chǎn)生以下信息: mke2fs , 9Jan1999 for EXT2 FS , 95/08/09 Linux ext2 filesystem format Filesystem label= 1024 inodes, 4096 blocks 204 blocks (%) reserved for the super user First data block=1 Block size=1024 (log=0) Fragment size=1024 (log=0) 1 block group 8192 blocks per group, 8192 fragments per group 1024 inodes per group 使用命令 df k /dev/ram0 可以查到你實(shí)際能用的 RamDisk的大?。ㄎ募到y(tǒng)也占用一定空間): df k /dev/ram0 Filesystem 1kblocks Used Available Use% Mounted on /dev/ram0 3963 13 3746 0% /tmp/ramdisk0 不過(guò)要記住, RamDisk 中的數(shù)據(jù)會(huì)在機(jī)器重新啟動(dòng)后消失,因此應(yīng)把其中有用的數(shù)據(jù)及時(shí)備份到硬盤中。 ( 2) 改變 RamDisk 大小的技巧? 為使用 RamDisk,你或者要將對(duì) RamDisk 的支持編譯到內(nèi)核中去,或者把它編譯為一個(gè)可裝載模塊。編譯為一個(gè)可裝載模塊有一個(gè)好處,就是可以在裝載時(shí)任意 28 指定 RamDisk的大小。 把下面這一行加到你的 文件中去 : ramdisk_size=10000 (或?qū)蟽?nèi)核寫(xiě)作 ramdisk=10000) 這樣你鍵入 LILO 命令并重新啟動(dòng)后,缺省的 RamDisk的大小將為 10M,下面是我的 /etc/: boot=/dev/hda map=/boot/map install=/boot/ prompt timeout=50 image=/boot/vmlinuz label=linux root=/dev/hda2 readonly ramdisk_size=10000 實(shí)際上,我只獲得了 9M多一點(diǎn)的 RamDisk,其余 被文件系統(tǒng)占用。當(dāng)你編譯為一個(gè)可裝載模塊后,你可以在模塊裝載時(shí)決定 RamDisk的大小,這可以通過(guò) /etc/conf中的選項(xiàng)設(shè)置來(lái)設(shè)定。或者通過(guò)作為 ismod 命令行參數(shù)來(lái)實(shí)現(xiàn)。 options rd rd_size=10000 insmod rd rd_size=10000 ( 3)兩個(gè)例子 下面是使用模塊的例子: 卸載下上一章裝載的 RamDisk, umount /tmp/ramdisk0. 卸載模塊 rmmod rd。 裝載 RamDisk模塊并設(shè)置大小為 20M, insmod rd rd_size=20220。 創(chuàng)建文件系統(tǒng), mke2fs /dev/ram0。 裝載 RamDisk , mke2fs /dev/ram0。 在 WEB服務(wù)器上使用 RamDisk的實(shí)例? 本例介紹在 WEB服務(wù)器上使用 3個(gè) RamDisk的方法。所用的 WEB服務(wù)器是 RedHat 自帶的 Apache。 首先,把 WEB根目錄中所有文件移到其它目錄中,然后創(chuàng)建 RamDisk的裝載點(diǎn): mv /home/d/ /home/d_real 29 mkdir /home/d mkdir /home/d/cgibin mkdir /home/d/html mkdir /home/d/icons 然后,把以下命令加到你的 /etc/: 創(chuàng)建 3個(gè) RamDisk /sbin/mkfs t ext2 /dev/ram0 /sbin/mkfs t ext2 /dev/ram1 /sbin/mkfs t ext2 /dev/ram2 加載 RamDisk到開(kāi)始創(chuàng)建的 目錄中 mount /dev/ram0 /home/d/cgibin mount /dev/ram1 /home/d/icons mount /dev/ram2 /home/d/html 拷貝真正的目錄中的所用文件到 RamDisk 中 tar C /home/d_real c . | tar C /home/d x 最后,重新啟動(dòng) WEB 服務(wù)器即可生效,試一下速度是否有所改變。 后語(yǔ): 一定要記住保存 RamDisk 中有用的東西, 否則,重新啟動(dòng)后將化為烏有。你可以用 cron設(shè)定一個(gè)計(jì)劃,每隔 10分鐘掃描一下 RamDisk中的文件是否發(fā)生變化,如有,拷貝到硬盤中,這會(huì)比較安全。 最酷的應(yīng)用是如果你有 1G 的內(nèi)存,劃出 256M 來(lái)作為暫存區(qū) /tmp,如果很多程序用到 /tmp,那么你的系統(tǒng)性能會(huì)大大提高,而且重新啟動(dòng)后垃圾消失,真是一舉兩得。 LINUX 下的設(shè)備驅(qū)動(dòng)程序 ( 1) UNIX系統(tǒng)下的設(shè)備驅(qū)動(dòng)程序 UNIX下設(shè)備驅(qū)動(dòng)程序的基本結(jié)構(gòu): 在 UNIX系統(tǒng)里,對(duì)用戶程序而言,設(shè)備驅(qū)動(dòng)程序隱藏了設(shè)備的具體細(xì)節(jié),對(duì)各種不同設(shè)備提供了一 致的接口,一般來(lái)說(shuō)是把設(shè)備映射為一個(gè)特殊的設(shè)備文件,用戶程序可以象對(duì)其它文件一樣對(duì)此設(shè)備文件進(jìn)行操作。 UNIX對(duì)硬件設(shè)備支持兩個(gè)標(biāo)準(zhǔn)接口:塊特別設(shè)備文件和字符特別設(shè)備文件,通過(guò)塊(字符)特別設(shè)備文件存取的設(shè)備稱為塊(字符)設(shè)備或具有塊(字符)設(shè)備接口。塊設(shè)備接口僅支持面向塊的 I/O操作,所有 I/O 操作都通過(guò)在內(nèi)核地址空間中的 I/O緩沖區(qū)進(jìn)行,它可以支 30 持幾乎任意長(zhǎng)度和任意位置上的 I/O請(qǐng)求,即提供隨機(jī)存取的功能。 字符設(shè)備接口支持面向字符的 I/O 操作,它不經(jīng)過(guò)系統(tǒng)的快速緩存,所以它們負(fù)責(zé)管理自己的緩沖區(qū)結(jié)構(gòu)。 字符設(shè)備接口只支持順序存取的功能,一般不能進(jìn)行任意長(zhǎng)度的 I/O請(qǐng)求,而是限制 I/O請(qǐng)求的長(zhǎng)度必須是設(shè)備要求的基本塊長(zhǎng)的倍數(shù)。顯然,本程序所驅(qū)動(dòng)的串行卡只能提供順序存取的功能,屬于是字符設(shè)備,因此后面的討論在兩種設(shè)備有所區(qū)別時(shí)都只涉及字符型設(shè)備接口。 設(shè)備由一個(gè)主設(shè)備號(hào)和一個(gè)次設(shè)備號(hào)標(biāo)識(shí)。主設(shè)備號(hào)唯一標(biāo)識(shí)了設(shè)備類型,即設(shè)備驅(qū)動(dòng)程序類型,它是塊設(shè)備表或字符設(shè)備表中設(shè)備表項(xiàng)的索引。次設(shè)備號(hào)僅由設(shè)備驅(qū)動(dòng)程序解釋,一般用于識(shí)別在若干可能的硬件設(shè)備中, I/O 請(qǐng)求所涉及到的那個(gè)設(shè)備。 設(shè)備驅(qū)動(dòng)程序可以分為三個(gè)主要組成部分 : 自動(dòng)配置和初始化子程序,負(fù)責(zé)檢測(cè)所要驅(qū)動(dòng)的硬件設(shè)備是否存在和是否能正常工作。如果該設(shè)備正常,則對(duì)這個(gè)設(shè)備及其相關(guān)的、設(shè)備驅(qū)動(dòng)程序需要的軟件狀態(tài)進(jìn)行初始化。這部分驅(qū)動(dòng)程序僅在初始化的時(shí)候被調(diào)用一次。 服務(wù)于 I/O 請(qǐng)求的子程序,又稱為驅(qū)動(dòng)程序的上半部分。調(diào)用這部分是由于系統(tǒng)調(diào)用的結(jié)果。這部分程序在執(zhí)行的時(shí)候,系統(tǒng)仍認(rèn)為是和進(jìn)行調(diào)用的進(jìn)程屬于同一個(gè)進(jìn)程,只是由用戶態(tài)變成了核心態(tài),具有進(jìn)行此系統(tǒng)調(diào)用的用戶程序的運(yùn)行環(huán)境,因此可以在其中調(diào)用 sleep()等與進(jìn)程運(yùn)行環(huán)境有關(guān)的函數(shù)。 中斷服務(wù)子程序,又稱 為驅(qū)動(dòng)程序的下半部分。在 UNIX 系統(tǒng)中,并不是直接從中斷向量表中調(diào)用設(shè)備驅(qū)動(dòng)程序的中斷服務(wù)子程序,而是由 UNIX 系統(tǒng)來(lái)接收硬件中斷,再由系統(tǒng)調(diào)用中斷服務(wù)子程序。中斷可以產(chǎn)生在任何一個(gè)進(jìn)程運(yùn)行的時(shí)候,因此在中斷服務(wù)程序被調(diào)用的時(shí)候,不能依賴于任何進(jìn)程的狀態(tài),也就不能調(diào)用任何與進(jìn)程運(yùn)行環(huán)境有關(guān)的函數(shù)。因?yàn)樵O(shè)備驅(qū)動(dòng)程序一般支持同一類型的若干設(shè)備,所以一般在系統(tǒng)調(diào)用中斷服務(wù)子程序的時(shí)候,都帶有一個(gè)或多個(gè)參數(shù),以唯一標(biāo)識(shí)請(qǐng)求服務(wù)的設(shè)備。 在系統(tǒng)內(nèi)部, I/O 設(shè)備的存取通過(guò)一組固定的入口點(diǎn)來(lái)進(jìn)行,這組入口點(diǎn)是由每個(gè)設(shè)備的 設(shè)備驅(qū)動(dòng)程序提供的。一般來(lái)說(shuō),字符型設(shè)備驅(qū)動(dòng)程序能夠提供如下幾個(gè)入口點(diǎn): open入口點(diǎn)。打開(kāi)設(shè)備準(zhǔn)備 I/O操作。對(duì)字符特別設(shè)備文件進(jìn)行打開(kāi)操作,都會(huì)調(diào)用設(shè)備的 open 入口點(diǎn)。 open 子程序必須對(duì)將要進(jìn)行的 I/O 操作做好必要的準(zhǔn)備工作,如清除緩沖區(qū)等。如果設(shè)備是獨(dú)占的,即同一時(shí)刻只能有一個(gè)程序訪問(wèn)此設(shè)備,則 open子程序必須設(shè)置一些標(biāo)志以表示設(shè)備處于忙狀態(tài)。 31 close 入口點(diǎn)。關(guān)閉一個(gè)設(shè)備。當(dāng)最后一次使用設(shè)備終結(jié)后,調(diào)用 close 子程序。獨(dú)占設(shè)備必須標(biāo)記設(shè)備可再次使用。 read入口點(diǎn)。從設(shè)備上 讀數(shù)據(jù)。對(duì)于有緩沖區(qū)的 I/O操作,一般是從緩沖區(qū)里讀數(shù)據(jù)。對(duì)字符特別設(shè)備文件進(jìn)行
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1