成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

波蘭極客用一張軟盤運行Linux系統,用的還是最新內核

運維 系統運維
用軟盤啟動Linux系統曾經很“家常便飯”,當然那都是90-00年代的事了。有年紀(bushi)的同學可能熟悉。但現在,即使你還有一張能用的3.5英寸軟盤,可1.44MB的容量遠遠裝不下一個現代linux內核,更不用說還得加上所有支持軟件了。

用軟盤啟動Linux系統曾經很“家常便飯”,當然那都是90-00年代的事了。有年紀(bushi)的同學可能熟悉。但現在,即使你還有一張能用的3.5英寸軟盤,可1.44MB的容量遠遠裝不下一個現代linux內核,更不用說還得加上所有支持軟件了。

但奇人有招,波蘭一位游戲開發小哥只用一張軟盤就把現代Linux操作系統嵌進去了!

盤上還有幾百KiB的剩余空間!而且用的都是最新“組件”,包括今年5.16號才發布的5.13.0-rc2版本的Linux內核。 

[[409621]]

一張軟盤裝下現代Linux系統 

小哥把這個系統命名為Floppinux,在它的官網上帶大家走了整個過程,包括從下拉(pull down)、編譯源代碼到創建最終的磁盤映像的所有命令。

而之所以做這么一件事情,是因為小哥覺得自己用了好多年Linux,也用過很多Live-CD(能夠在不安裝到硬盤的前提下,體驗Linux操作系統的東西)。

但他對其背后的基本原理知之甚少,所以決定動手研究一下。

小哥的第一個目標是運行Nomad Diskmag程序。

Diskmag這個遠古東西不知道有人了解嗎?

它的全稱叫disk magazine,也就是磁盤雜志,是一種在上世紀80-90年代,以軟盤形式發行的電子雜志。90年代后就被在線出版物所取代了。

小哥已經用bash腳本搞定了前端界面,就差封面、目錄和cat每個文件的正文了。

為了運行他寫的腳本,需要一個可用的Linux 發行版,也就是一個可以在軟盤上運行的系統。

動手!

因為在64位系統上編譯32位代碼有點棘手。為了更簡單,小哥用他的32位CPU的舊筆記本來做這一切。

可以使用32位系統的VirtualBox,如果要用64位,添加命令“ARCH=x86”,例如:make ARCH=x86 tinyconfig。

下面就是把現代Linux操作系統裝進一張1.44MB軟盤的大概過程:

  • 創建并進入你想要保存文件的目錄
  • 配置和構建定制內核

使用最新Linux內核(版本5.13.0-rc2):

  • git clone --depth=1 https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
  • 進行最小配置:make tinyconfig
  • 添加額外配置:make menuconfig

從菜單中選擇以下選項:

將設置保存并退出,等待編譯完成,最后內核將在arch/x86/boot/bzImage中構建,把它移到主目錄。

3、 添加工具

如果沒有工具,內核只會啟動,無法執行任何操作。小哥使用BusyBox(最流行的輕量級工具之一),下載并解壓:

  • wget https://busybox.net/downloads/busybox-1.33.1.tar.bz2
  • 進入目錄,進行啟動配置:make allnoconfig
  • 然后選擇你想要的工具:make menuconfig

每個菜單項都顯示各工具需占用多少KB,合理選擇哦。

小哥的選擇:

保存配置并退出,編譯完成后_install目錄下會創建一個包含所有文件的文件系統,把它移到主目錄。

4、添加目錄結構

有了內核和基本工具,仍然需要一些額外的目錄結構: 

  1. cd ../filesystem  
  2. mkdir -pv {dev,proc,etc/init.d,sys,tmp}  
  3. sudo mknod dev/console c 5 1  
  4. sudo mknod dev/null c 1 3 

接下來創建幾個配置文件,啟動后顯示歡迎消息: 

  1. cat >> welcome  
  2. EOF 

然后配置處理啟動、退出和重啟的Inittab文件&實際的初始化腳本,并使初始化腳本可執行,并將所有文件的所有者設置為root。(限于篇幅命令已省略,具體可查看文末鏈接[1])

最后,將此目錄壓縮為一個文件。

可通過從主目錄運行QEMU(在GNU/Linux 平臺上廣泛使用的模擬處理器)對以上所有內容進行測試。

5、下面就是把這一切放進軟盤了

創建指向內核和文件系統的Syslinux引導文件(boot file): 

  1. cat >> syslinux.cfg  
  2. LABEL linux  
  3. SAY [ BOOTING FLOPPINUX VERSION 0.1.0 ]  
  4. KERNEL bzImage  
  5. APPEND initrd=rootfs.cpio.gz  
  6. EOF  
  7. chmod +x syslinux.cfg 

創建空軟盤映像: 

  1. dd if=/dev/zero of=floppinux.img bs=1k count=1440  
  2. mkdosfs floppinux.img  
  3. syslinux --install floppinux.img 

Mount it !并將syslinux、內核和文件系統復制到軟盤映像: 

  1. sudo mount -o loop floppinux.img /mnt  
  2. sudo cp bzImage /mnt  
  3. sudo cp rootfs.cpio.gz /mnt  
  4. sudo cp syslinux.cfg /mnt  
  5. sudo umount /mnt 

完成!

現在你就有了自己的發行版映像floppinux.img,你可以燒錄到軟盤,然后在真正的硬件上啟動它了!

啟動耗時1分多

小哥花了不到3分鐘燒錄成功,然后開始了首次啟動:

成功!大概只花了1分多鐘。

啊,從屏幕上看了小哥似乎不年輕,頭發也禿得讓人落淚。

小哥(老哥)表示,在這種裸機的現代硬件上,唯一能阻止啟動速度的就是軟驅的實際速度。它們最大原始速度為125KB/s。實際上可能會更慢。

下面是軟盤占有空間總結,可以看到還剩272KiB。

網友熱議:“92年的時候我可是需要兩張5.25”的軟盤”

硬件開源項目網站 Hackaday對小哥的創造進行了報道,并點評道:

當然,為了將最新的Linux內核和BusyBox構建到大約1MB的空間,必須做出一些讓步,所以Floppinux肯定不是任何人所說的日常驅動程序。一旦系統啟動,除了編寫一些shell腳本之外,就沒有什么可做的了。

即使你沒有軟盤,也值得跟著他的教程,在QEMU中啟動映像,看看如何從零開始正式構建一個Linux系統。這事不僅可以用來吹牛,這樣一個最小安裝的所有組件如何組合在一起的知識,對學習嵌入式Linux設備也很有用。

而在Hacker News 論壇上很多人紛紛對小哥豎起大拇指,有人表示最令他驚訝的就是用的最新版的Linux內核和BusyBox。而且這對其他嵌入式系統也很有用。

有人說,92年的時候我可是需要兩張5.25英寸的軟盤來運行Linux!

開發者介紹

[[409622]]

文中的主角“小哥”叫Krzysztof Jankowski,來自波蘭,85后,是一名專業的游戲開發者和數字藝術家。

25年前就開始用QBASIC編程,喜歡FOSS、像素畫(pixel art)、樹莓派,、游戲引擎等。

去年,他創辦了自己的公司Cyfrowy Nomada,與beffio簽訂了高級游戲引擎開發合同。他成為一名專業的游戲開發商的夢想成為現實。

 

責任編輯:未麗燕 來源: 量子位
相關推薦

2016-01-05 11:38:59

Linux內核運行

2019-05-31 08:54:46

Linux內核操作系統

2021-01-01 09:04:44

Linux內核變量

2015-06-04 12:53:18

2019-09-11 10:12:12

華為

2021-02-09 17:21:55

SQL數據庫存儲

2021-07-07 08:00:00

Linux開發虛擬機

2019-01-31 08:06:45

隱私車票密碼

2021-02-19 08:13:44

SQL日期維度表

2022-03-31 11:41:02

DDoS網絡安全關鍵信息基礎設施

2022-11-27 11:00:15

2009-03-09 19:57:05

2012-03-19 09:17:38

2014-09-09 09:46:03

Linux性能診斷

2014-04-01 10:38:09

Linux操作系統

2021-02-07 09:01:10

Java并發編程

2009-07-27 08:50:29

2019-12-06 10:44:53

Vue 3.0響應式系統前端

2015-07-23 10:05:24

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日韩成人av在线播放 | 精品视频一区二区三区在线观看 | 91视频进入 | 日韩国产中文字幕 | 久久久国产精品一区 | 精品视频在线免费观看 | 久久精品高清视频 | va精品 | 国产精品美女一区二区 | 中文字幕在线视频免费观看 | 狠狠干影院 | 久久久国产一区二区三区四区小说 | 日本一道本视频 | 91看国产 | a级黄色毛片免费播放视频 国产精品视频在线观看 | 91精品国产一区二区三区 | 人人插人人 | 国产欧美一区二区三区国产幕精品 | 久草中文网 | 国产福利资源在线 | 亚洲精品性视频 | 亚洲日韩中文字幕一区 | 男女网站在线观看 | 国产欧美日韩二区 | 国产精品亚洲欧美日韩一区在线 | 欧美一二三四成人免费视频 | 国产大片一区 | 久久夜夜 | 日韩一二区 | 亚洲精品在线免费播放 | 欧美日韩免费在线 | www.99热.com | 亚洲综合精品 | 蜜桃视频成人 | 成人日b视频| 欧美视频在线一区 | 国产999精品久久久久久 | 中文在线视频 | 国产 欧美 日韩 一区 | 在线观看你懂的网站 | 精品国产不卡一区二区三区 |