今天在某啟動盤制作論壇閑逛時突然發(fā)現(xiàn)一個叫firadisk的驅(qū)動,此驅(qū)動可以讓系統(tǒng)識別grub引導(dǎo)程序用map指令在內(nèi)存上映射的仿真磁盤(即iso或img等光盤及磁盤鏡像文件),。而只有win98之前的系統(tǒng)才能支持grub的這個功能,。 當(dāng)時我兩眼就發(fā)亮了~~~這是我夢寐以求的功能~~因為這樣的話就可以先用grub將磁盤鏡像載入內(nèi)存后啟動內(nèi)存上的磁盤鏡像上的系統(tǒng)。這樣就成了romos,。其實winpe就是差不多這樣的原理,。但是winpe太簡單了,很多驅(qū)動都不能裝,。網(wǎng)上查了一下有用ntldr引導(dǎo)磁盤鏡像做romos的,,但是ntldr引導(dǎo)的鏡像有大小限制,鏡像體積不能超過約400多m(不過貌似有破解的ntldr能支持大體積鏡像),。 網(wǎng)上也有通過grub+firadisk成果啟動romos的例子,,但是不多。
廢話不多,,先看成果,,待會放操作過程
機器內(nèi)存4g,32位xp只能認(rèn)3.25g,,所以xp系統(tǒng)硬是被精簡到了1.5g以內(nèi),。。。
這個firadisk就是xp所在的內(nèi)存上的虛擬磁盤
系統(tǒng)盤測試,,平均讀取將近900m/s,隨機存儲時間=0ms,。。,。
系統(tǒng)盤測試2
內(nèi)存當(dāng)系統(tǒng)盤,,感受我就不多說了,大家能體會到的,。,。。比現(xiàn)在最好的固態(tài)硬盤都要快好幾倍以上,。推薦大內(nèi)存的tx可以試試,,2g以下的就不用試了。,。,。3g以上的可以體驗以下,唯一的缺點就是C盤不能保存,重啟后就恢復(fù)原樣,,這樣也好可以當(dāng)影子系統(tǒng),,什么病毒和木馬都不怕了。 今天晚了就不寫下去了,。如果大家有興趣的話我改天寫個詳細(xì)的過程,,有能力的同學(xué)可以先試試~~~ 一 準(zhǔn)備工作 1.Winimage:用于制作磁盤鏡像 下載地址:http://ydsoft.//200910/WinImagePortable.rar 2.grub for dos:在內(nèi)存上映射磁盤鏡像以及引導(dǎo)內(nèi)存系統(tǒng) 下載地址:http://ncu.dl./project/grub4dos/GRUB4DOS/grub4dos%200.4.4/grub4dos-0.4.4.zip(操作之前強烈建議對grub不熟悉的同學(xué)先熟悉一下grub(至少學(xué)會map和chainloader等常用指令)) 安裝grub for dos:xp下將grldr.mbr,grldr和menu.lst三個文件拷貝到C盤根目錄,在boot.ini最后一行添加c:\grldr.mbr="Grub for DOS" 3.Firadisk驅(qū)動:識別grub映射的磁盤鏡像 下載地址:http://www./grub4dos/FiraDisk/firadisk-driver-0.0.1.16.zip
二 制作系統(tǒng)磁盤鏡像 1. 備份原來系統(tǒng)(如果安裝新xp到非第一分區(qū)則略過,,推薦安裝到非第一分區(qū),,安裝后不會引導(dǎo)到非第一分區(qū)的可以先學(xué)grub) 2. 安裝新xp:可以用精簡版的xp,也可以完全安裝后自己精簡,,精簡程度視自己的內(nèi)存大小決定,,差不多系統(tǒng)鏡像載入內(nèi)存后留個500m-1g足已。然后裝好驅(qū)動和常用軟件 3. 安裝firadisk驅(qū)動: 在新安裝的系統(tǒng)上添加新硬件
手動安裝
添加scsi和raid控制器
從磁盤安裝
選擇firadisk驅(qū)動所在的文件夾
設(shè)備管理器里看到scsi和raid控制器里的firadisk virtual disk enumerator后說明驅(qū)動安裝成功
4.打開注冊表編輯器,,進入HKEY-LOCAL-MACHINE\SYSTEM,,刪除其下的MountedDevices,否則內(nèi)存系統(tǒng)盤無法掛載為C盤,。 5.如果是將新xp安裝到**硬盤的需要修改boot.ini里的multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" 這一行,,確保partition(1)括號里面為1,這個很重要,,因為系統(tǒng)磁盤鏡像掛載到內(nèi)存后在bios里會映射為第一個硬盤的第一個分區(qū),,如果此處不是1的話會出現(xiàn)無法引導(dǎo)的狀況(當(dāng)時我就在這邊耗了很久,都快放棄了,。,。。),新xp安裝到第一個分區(qū)的沒有這個問題,。 6. 備份新xp(安裝到第一分區(qū)以外的不需要備份了):備份之前可以先測試一下firadisk驅(qū)動是否安裝成功,,方法是在menu.lst里添加 title winxp #顯示標(biāo)題 隨便添 map --mem (hdx,y)/任意磁盤鏡像路徑 (hd32) #此鏡像為測試用,iso格式img或ima格式均可 map --hook chainloader (hdm,n)+1 啟動后發(fā)現(xiàn)有新磁盤或新光驅(qū)的說明安裝成功 7.還原或重啟到原來操作系統(tǒng)(或進入winpe) 用winimage新建磁盤鏡像,,選擇自定義映像格式
扇區(qū)總數(shù)按需分配(如新xp占用1g空間則設(shè)差不多3000000個扇區(qū)也就是1500000kb,,這個大小就是內(nèi)存系統(tǒng)上的C盤的總?cè)萘浚粤魝€500mb左右的空間比較合適),,其余默認(rèn)值,。設(shè)置之后保持為ima或img格式,將新xp所在的硬盤上的所有文件直接拖進去就行了(用ghost之類備份的同學(xué)先用ghost鏡像瀏覽器解壓之后再拖進去),,此處還可以設(shè)置磁盤卷標(biāo)和設(shè)置文件是否隱藏,,到此位置系統(tǒng)盤鏡像以及制作完畢。(也可使用fat32系統(tǒng)格式,,要比fat16更省空間) 用UltraISO也可制作磁盤鏡像,,此處省略 另外,grub的map指令是支持gzip壓縮文件的,,因此還可以用gzip將此鏡像文件壓縮,,壓縮過后體積約為原來的三分之一大小。推薦使用gzip壓縮,,gzip用法很簡單,可以自學(xué),。 三 加載內(nèi)存系統(tǒng) 1. 在記事本打開menu.lst添加以下內(nèi)容: title RomOS(winxp) #顯示標(biāo)題 隨便添 find --set-root /romos.ima #此命令為搜索磁盤鏡像并設(shè)置為根目錄,推薦將磁盤鏡像放任意分區(qū)根目錄 map --mem /romos.ima (hd0) #映射為第一分區(qū) map (hd0) (hd1)
map --hook chainloader (hd0,0)/ntldr #如果無法啟動可以改成chainloader (hd0,0)+1試試
2. 重啟后在grub選擇菜單里選RomOS(winxp)就行了,,等待硬盤鏡像加載到內(nèi)存完畢后就能進入內(nèi)存上的xp系統(tǒng)了。 以上就是我制作內(nèi)存系統(tǒng)的全過程了,,希望這篇文章對大家有用,。有建議或者有問題的同學(xué)們可以在這里盡情的交流~~同樣的原理還可以制作win7的內(nèi)存系統(tǒng),但是這個估計要8g內(nèi)存才合適,。,。。而且只能裝64位的,,32位的沒法認(rèn)全8g內(nèi)啊,。。,。如果真做成了win7的內(nèi)存系統(tǒng),,不知道能不能看到磁盤評分7.9的奇觀呢? 最后感謝這篇文章(http://os.yesky.com/371/11205371.shtml)的作者,,大家有問題的還可以參考這篇文章,,我就是結(jié)合這篇文章后才成功的引導(dǎo)進入內(nèi)存系統(tǒng)的,感謝此文作者! |