但奇人有招,波兰一位游戏开发小哥只用一张软盘就把现代Linux操作系统嵌进去了!
盘上还有几百KiB的剩余空间!而且用的都是最新“组件”,包括今年5.16号才发布的5.13.0-rc2版本的Linux内核。
一张软盘装下现代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软盘的大概过程:
1、创建并进入你想要保存文件的目录
2、配置和构建定制内核
使用最新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、添加目录结构
有了内核和基本工具,仍然需要一些额外的目录结构:
cd ../filesystem
mkdir -pv {dev,proc,etc/init.d,sys,tmp}
sudo mknod dev/console c 5 1
sudo mknod dev/null c 1 3
接下来创建几个配置文件,启动后显示欢迎消息:
cat >> welcome
EOF
然后配置处理启动、退出和重启的Inittab文件&实际的初始化脚本,并使初始化脚本可执行,并将所有文件的所有者设置为root。(限于篇幅命令已省略,具体可查看文末链接[1])
最后,将此目录压缩为一个文件。
可通过从主目录运行QEMU(在GNU/Linux 平台上广泛使用的模拟处理器)对以上所有内容进行测试。
5、下面就是把这一切放进软盘了
创建指向内核和文件系统的Syslinux引导文件(boot file):
cat >> syslinux.cfg
LABEL linux
SAY [ BOOTING FLOPPINUX VERSION 0.1.0 ]
KERNEL bzImage
APPEND initrd=rootfs.cpio.gz
EOF
chmod +x syslinux.cfg
创建空软盘映像:
dd if=/dev/zero of=floppinux.img bs=1k count=1440
mkdosfs floppinux.img
syslinux --install floppinux.img
Mount it !并将syslinux、内核和文件系统复制到软盘映像:
sudo mount -o loop floppinux.img /mnt
sudo cp bzImage /mnt
sudo cp rootfs.cpio.gz /mnt
sudo cp syslinux.cfg /mnt
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!
开发者介绍
文中的主角“小哥”叫Krzysztof Jankowski,来自波兰,85后,是一名专业的游戏开发者和数字艺术家。
25年前就开始用QBASIC编程,喜欢FOSS、像素画(pixel art)、树莓派,、游戏引擎等。
去年,他创办了自己的公司Cyfrowy Nomada,与beffio签订了高级游戏引擎开发合同。他成为一名专业的游戏开发商的梦想成为现实。
京东创始人刘强东和其妻子章泽天最近成为了互联网舆论关注的焦点。有关他们“移民美国”和在美国购买豪宅的传言在互联网上广泛传播。然而,京东官方通过微博发言人发布的消息澄清了这些传言,称这些言论纯属虚假信息和蓄意捏造。
日前,据博主“@超能数码君老周”爆料,国内三大运营商中国移动、中国电信和中国联通预计将集体采购百万台规模的华为Mate60系列手机。
据报道,荷兰半导体设备公司ASML正看到美国对华遏制政策的负面影响。阿斯麦(ASML)CEO彼得·温宁克在一档电视节目中分享了他对中国大陆问题以及该公司面临的出口管制和保护主义的看法。彼得曾在多个场合表达了他对出口管制以及中荷经济关系的担忧。
今年早些时候,抖音悄然上线了一款名为“青桃”的 App,Slogan 为“看见你的热爱”,根据应用介绍可知,“青桃”是一个属于年轻人的兴趣知识视频平台,由抖音官方出品的中长视频关联版本,整体风格有些类似B站。
日前,威马汽车首席数据官梅松林转发了一份“世界各国地区拥车率排行榜”,同时,他发文表示:中国汽车普及率低于非洲国家尼日利亚,每百户家庭仅17户有车。意大利世界排名第一,每十户中九户有车。
近日,一项新的研究发现,维生素 C 和 E 等抗氧化剂会激活一种机制,刺激癌症肿瘤中新血管的生长,帮助它们生长和扩散。
据媒体援引消息人士报道,苹果公司正在测试使用3D打印技术来生产其智能手表的钢质底盘。消息传出后,3D系统一度大涨超10%,不过截至周三收盘,该股涨幅回落至2%以内。
9月2日,坐拥千万粉丝的网红主播“秀才”账号被封禁,在社交媒体平台上引发热议。平台相关负责人表示,“秀才”账号违反平台相关规定,已封禁。据知情人士透露,秀才近期被举报存在违法行为,这可能是他被封禁的部分原因。据悉,“秀才”年龄39岁,是安徽省亳州市蒙城县人,抖音网红,粉丝数量超1200万。他曾被称为“中老年...
9月3日消息,亚马逊的一些股东,包括持有该公司股票的一家养老基金,日前对亚马逊、其创始人贝索斯和其董事会提起诉讼,指控他们在为 Project Kuiper 卫星星座项目购买发射服务时“违反了信义义务”。
据消息,为推广自家应用,苹果现推出了一个名为“Apps by Apple”的网站,展示了苹果为旗下产品(如 iPhone、iPad、Apple Watch、Mac 和 Apple TV)开发的各种应用程序。
特斯拉本周在美国大幅下调Model S和X售价,引发了该公司一些最坚定支持者的不满。知名特斯拉多头、未来基金(Future Fund)管理合伙人加里·布莱克发帖称,降价是一种“短期麻醉剂”,会让潜在客户等待进一步降价。
据外媒9月2日报道,荷兰半导体设备制造商阿斯麦称,尽管荷兰政府颁布的半导体设备出口管制新规9月正式生效,但该公司已获得在2023年底以前向中国运送受限制芯片制造机器的许可。
近日,根据美国证券交易委员会的文件显示,苹果卫星服务提供商 Globalstar 近期向马斯克旗下的 SpaceX 支付 6400 万美元(约 4.65 亿元人民币)。用于在 2023-2025 年期间,发射卫星,进一步扩展苹果 iPhone 系列的 SOS 卫星服务。
据报道,马斯克旗下社交平台𝕏(推特)日前调整了隐私政策,允许 𝕏 使用用户发布的信息来训练其人工智能(AI)模型。新的隐私政策将于 9 月 29 日生效。新政策规定,𝕏可能会使用所收集到的平台信息和公开可用的信息,来帮助训练 𝕏 的机器学习或人工智能模型。
9月2日,荣耀CEO赵明在采访中谈及华为手机回归时表示,替老同事们高兴,觉得手机行业,由于华为的回归,让竞争充满了更多的可能性和更多的魅力,对行业来说也是件好事。
《自然》30日发表的一篇论文报道了一个名为Swift的人工智能(AI)系统,该系统驾驶无人机的能力可在真实世界中一对一冠军赛里战胜人类对手。
近日,非营利组织纽约真菌学会(NYMS)发出警告,表示亚马逊为代表的电商平台上,充斥着各种AI生成的蘑菇觅食科普书籍,其中存在诸多错误。
社交媒体平台𝕏(原推特)新隐私政策提到:“在您同意的情况下,我们可能出于安全、安保和身份识别目的收集和使用您的生物识别信息。”
2023年德国柏林消费电子展上,各大企业都带来了最新的理念和产品,而高端化、本土化的中国产品正在不断吸引欧洲等国际市场的目光。
罗永浩日前在直播中吐槽苹果即将推出的 iPhone 新品,具体内容为:“以我对我‘子公司’的了解,我认为 iPhone 15 跟 iPhone 14 不会有什么区别的,除了序(列)号变了,这个‘不要脸’的东西,这个‘臭厨子’。