回忆那段传奇的历史:如何真的在你的电脑上跑起Unix
- 内容介绍
- 文章标签
- 相关推荐
Release Note
2026.4.3
加入了其他Unix版本,例如Unix V6,同时加入了更合适的小标题,还有相关知识背景,润色了文章。
回忆那段传奇的历史:如何真的在你的电脑上跑起Unix
摘要
现在我们生活中,不可或缺的就是各种操作系统,有运行在PC上的Windows和macOS,运行在服务器上的FreeBSD和Linux等等。这些操作系统大多有一个共同的祖先:Unix。这是美国电话电报公司贝尔实验室(AT&T Bell Labs)在1970s初开发的计算机操作系统。为了致敬这个传奇的操作系统,我们将在我们的计算机上运行Unix模拟器,体验那个时代的计算机。
相关历史
懒得介绍了,大家自己去看看豆包咋说的吧:
image989×966 312 KB
工具介绍
SimH "Classic"
我们可以用这个玩意来模拟PDP-11计算机(关于啥是PDP-11还有Unix的历史我就不过多介绍了。可以看一本书:《Unix传奇:历史与回忆》,我只知道厦门市图书馆文化艺术中心的编码:TP316.81/342),从而在PDP-11上运行Unix或BSD系统。
下载和编译模拟器
https://simh.trailing-edge.com/sources/simhv312-5.zip
前往此网址下载SimH模拟器。下载完之后这是源码包还不能直接使用,需要先编译。
进入你解压后的文件夹,首先查看目录结构:
image1316×917 75.9 KB
这个源码的C版本有点老,所以我们要执行一个命令修正一下一些小问题。执行:
sed -i '274c\ if (tmxr_get_packet_ln (&ch_lines[0], (const uint8 **)&p, &count) != SCPE_OK) {' PDP11/pdp11_ch.c
然后编译:
make
于是我们便得到了:
image1316×917 95.8 KB
这些二进制文件。其中pdp11是我们需要的。拷贝pdp11二进制文件到你的工作目录。
image1316×917 42.6 KB
非常干净啊。
2.11BSD(1992)
这是一个相对现代一些的Unix版本。我们要下载2.11BSD的系统镜像文件。参见:
pdp11:211bsd [Serge.V Lumber Barn]
下载:
https://sergev.org/_media/pdp11/211bsd/211bsd.dsk.gz
到你的工作目录并解压,我们得到:
屏幕截图_20260402_2117411316×917 44 KB
首先我们最好对工作目录进行一些整理:
屏幕截图_20260403_2054471316×911 54.6 KB
这将有效避免之后的混乱。然后我们创建启动配置文件:
屏幕截图_20260403_2058501316×911 63.6 KB
set cpu 11/70 1M
attach rp0 211bsd/211bsd.dsk
boot rp0
现在可以启动了:
屏幕截图_20260403_2100211316×911 51.2 KB
此时回车:
屏幕截图_20260403_2100211316×911 51.2 KB
然后输入Ctrl+D进入常规交互模式:
屏幕截图_20260403_2101171316×911 113 KB
输入root以登录账户。
此时可以开始操作了!比如我测试下C语言的“Hello, world”是否正常:
成功!
顺便说一句,你可以使用Ctrl+E退出模拟器。
Unix V6(1975)
这个版本就要老很多了。我们可以从:
GitHub - retux/unix-v6-on-simh: These are the files to run unix 6th Edition from...
These are the files to run unix 6th Edition from 1975 by using simh.
获取别人已经编译好的镜像。如图:
屏幕截图_20260403_2113281316×911 52.5 KB
然后要做一些小小的修改,加入正确的路径:
image1124×717 47.9 KB
此时再启动:
./pdp11 unix_v6/boot.ini
屏幕截图_20260403_2118361316×911 51.4 KB
在这个界面输入unix:
屏幕截图_20260403_2118361316×911 51.4 KB
再输入root:
屏幕截图_20260403_2120221316×911 69.8 KB
成功进入系统。相关的像啥C语言测试啊的就不再展开了,大家可以自行尝试。
说明
我是新人,也没啥经验,写的难免或多或少会有一些问题,也希望大家多多指出!
网友解答:--【壹】--:
Linux就是没人看的
硬核的更是没人看
只有和生活/工作相关的硬核才有人看,比如逆向cc啦什么的,逆向反重力啊
--【贰】--:
摄像头和蓝牙确实
我的笔记本电脑22年买的 24年才有我这个电脑的摄像头驱动
linux在这方面确实不太行
服务器上面倒是还好
--【叁】--: Leo Lee:
Unix和BSD
image1460×658 146 KB
诺,FreeBSD也是BSD
虽然跑在虚拟机里
--【肆】--:
FreeBSD的驱动支持太差了,不然我就用了
--【伍】--:
来看看我的物理机freebsd
图片2560×1400 456 KB
一个多余的电脑安装的 安装好了发现bsd当服务器的生态也不咋地
我没了docker就不会部署服务了
--【陆】--:
好吧这为什么没人看啊,难道是我初次更新时间不对?我没啥经验。
--【柒】--:
哈哈这个论坛cc一般指Claude Code,他们对这个十分有兴趣
Linux相关一般只有报菜名环节有人,稍微深入一点就没人了
比如
GNU/Linux systemd-nspawn 容器用法(替代 docker) 文档共建是什么 systemd 管理的容器 能做什么 提供完全的隔离环境,和宿主机共用内核,但是具有自己隔离的进程、用户,网络,文件命名空间 隔离级别可定制 允许绑定挂载,overlay 挂载 性能和 docker 持平 使用场景 运行隔离环境,取代大多数 docker 使用场景 运行无头桌面 特点 默认就是容器内写入持久化模式,但也可修改为易失模式(重启后修改丢失) 不能做什么 如果容…
这也许是一种曲高和寡吧
--【捌】--: Leo Lee:
你觉得Claude code对比那些啥opencode或者openclaw啊有啥优势没有啊?
我没深入用过cc,我大部分时间都在用opencode,我觉得这个我就满足了
我是觉得没有太大优势,尤其是用第三方模型的时候
但是mcp、skills这种都是a社提出的,自己的模型和Agent肯定理解独到一点
--【玖】--:
好吧
感觉linux do应该改名 linux.do is not linux
--【拾】--:
不能把 什么稀奇的电脑linux都没驱动
笔记本?
--【拾壹】--:
我也喜欢在多余的机器上安装各种操作系统
只是我那些电脑驱动知识都太差了,连Linux都没有完整的驱动支持
--【拾贰】--:
话说cc是啥?Claude Code?还是C Compiler?
--【拾叁】--:
话说您还有什么能让计算机使用更高效的工具吗?现在感觉我对计算机的研究遇到了瓶颈啊,实在是找不到什么非常好用的工具了
--【拾肆】--:
图片640×360 21.4 KB
--【拾伍】--:
对对对,这也是一个很大很大的问题。
其实我现在遇到一个非常尴尬非常尴尬的问题,朋友送我一颗英伟达显卡,但我是笔记本,没有台式机根本装不进去啊
--【拾陆】--: NumPy:
这个论坛cc一般指Claude Code
哈哈哈我还以为他们说的cc是像这个:
$ cc hello.c
$ ./a.out
Hello, world
$
我还说嘛我说gcc还有clang都是开源的为啥还要逆向。
对了,据说claude code源代码泄露了?你觉得Claude code对比那些啥opencode或者openclaw啊有啥优势没有啊?
--【拾柒】--:
ThinkPad T430U
我是主力一台ThinkPad X1,装的系统是arch,但是那台X1有一个非常大的问题就是他的ipu6网络摄像头完全没有办法正常工作(这个我记得b站上有问题的描述可以去搜一搜)
那台老笔记本也面临着类似的问题,但是无法正常工作的硬件不是摄像头,而是蓝牙
其实我也不确定他是不是因为我的操作不当没有正确安装驱动导致的,但是我感觉他确实不太适合继续用了,不仅只有4g的内存,而且设备严重老化
--【拾捌】--:
嗯嗯嗯,是啊,其实驱动还有专有软件,就是Linux和bsd系统没有办法被大规模应用的最大的障碍
--【拾玖】--:
确实啊……
Release Note
2026.4.3
加入了其他Unix版本,例如Unix V6,同时加入了更合适的小标题,还有相关知识背景,润色了文章。
回忆那段传奇的历史:如何真的在你的电脑上跑起Unix
摘要
现在我们生活中,不可或缺的就是各种操作系统,有运行在PC上的Windows和macOS,运行在服务器上的FreeBSD和Linux等等。这些操作系统大多有一个共同的祖先:Unix。这是美国电话电报公司贝尔实验室(AT&T Bell Labs)在1970s初开发的计算机操作系统。为了致敬这个传奇的操作系统,我们将在我们的计算机上运行Unix模拟器,体验那个时代的计算机。
相关历史
懒得介绍了,大家自己去看看豆包咋说的吧:
image989×966 312 KB
工具介绍
SimH "Classic"
我们可以用这个玩意来模拟PDP-11计算机(关于啥是PDP-11还有Unix的历史我就不过多介绍了。可以看一本书:《Unix传奇:历史与回忆》,我只知道厦门市图书馆文化艺术中心的编码:TP316.81/342),从而在PDP-11上运行Unix或BSD系统。
下载和编译模拟器
https://simh.trailing-edge.com/sources/simhv312-5.zip
前往此网址下载SimH模拟器。下载完之后这是源码包还不能直接使用,需要先编译。
进入你解压后的文件夹,首先查看目录结构:
image1316×917 75.9 KB
这个源码的C版本有点老,所以我们要执行一个命令修正一下一些小问题。执行:
sed -i '274c\ if (tmxr_get_packet_ln (&ch_lines[0], (const uint8 **)&p, &count) != SCPE_OK) {' PDP11/pdp11_ch.c
然后编译:
make
于是我们便得到了:
image1316×917 95.8 KB
这些二进制文件。其中pdp11是我们需要的。拷贝pdp11二进制文件到你的工作目录。
image1316×917 42.6 KB
非常干净啊。
2.11BSD(1992)
这是一个相对现代一些的Unix版本。我们要下载2.11BSD的系统镜像文件。参见:
pdp11:211bsd [Serge.V Lumber Barn]
下载:
https://sergev.org/_media/pdp11/211bsd/211bsd.dsk.gz
到你的工作目录并解压,我们得到:
屏幕截图_20260402_2117411316×917 44 KB
首先我们最好对工作目录进行一些整理:
屏幕截图_20260403_2054471316×911 54.6 KB
这将有效避免之后的混乱。然后我们创建启动配置文件:
屏幕截图_20260403_2058501316×911 63.6 KB
set cpu 11/70 1M
attach rp0 211bsd/211bsd.dsk
boot rp0
现在可以启动了:
屏幕截图_20260403_2100211316×911 51.2 KB
此时回车:
屏幕截图_20260403_2100211316×911 51.2 KB
然后输入Ctrl+D进入常规交互模式:
屏幕截图_20260403_2101171316×911 113 KB
输入root以登录账户。
此时可以开始操作了!比如我测试下C语言的“Hello, world”是否正常:
成功!
顺便说一句,你可以使用Ctrl+E退出模拟器。
Unix V6(1975)
这个版本就要老很多了。我们可以从:
GitHub - retux/unix-v6-on-simh: These are the files to run unix 6th Edition from...
These are the files to run unix 6th Edition from 1975 by using simh.
获取别人已经编译好的镜像。如图:
屏幕截图_20260403_2113281316×911 52.5 KB
然后要做一些小小的修改,加入正确的路径:
image1124×717 47.9 KB
此时再启动:
./pdp11 unix_v6/boot.ini
屏幕截图_20260403_2118361316×911 51.4 KB
在这个界面输入unix:
屏幕截图_20260403_2118361316×911 51.4 KB
再输入root:
屏幕截图_20260403_2120221316×911 69.8 KB
成功进入系统。相关的像啥C语言测试啊的就不再展开了,大家可以自行尝试。
说明
我是新人,也没啥经验,写的难免或多或少会有一些问题,也希望大家多多指出!
网友解答:--【壹】--:
Linux就是没人看的
硬核的更是没人看
只有和生活/工作相关的硬核才有人看,比如逆向cc啦什么的,逆向反重力啊
--【贰】--:
摄像头和蓝牙确实
我的笔记本电脑22年买的 24年才有我这个电脑的摄像头驱动
linux在这方面确实不太行
服务器上面倒是还好
--【叁】--: Leo Lee:
Unix和BSD
image1460×658 146 KB
诺,FreeBSD也是BSD
虽然跑在虚拟机里
--【肆】--:
FreeBSD的驱动支持太差了,不然我就用了
--【伍】--:
来看看我的物理机freebsd
图片2560×1400 456 KB
一个多余的电脑安装的 安装好了发现bsd当服务器的生态也不咋地
我没了docker就不会部署服务了
--【陆】--:
好吧这为什么没人看啊,难道是我初次更新时间不对?我没啥经验。
--【柒】--:
哈哈这个论坛cc一般指Claude Code,他们对这个十分有兴趣
Linux相关一般只有报菜名环节有人,稍微深入一点就没人了
比如
GNU/Linux systemd-nspawn 容器用法(替代 docker) 文档共建是什么 systemd 管理的容器 能做什么 提供完全的隔离环境,和宿主机共用内核,但是具有自己隔离的进程、用户,网络,文件命名空间 隔离级别可定制 允许绑定挂载,overlay 挂载 性能和 docker 持平 使用场景 运行隔离环境,取代大多数 docker 使用场景 运行无头桌面 特点 默认就是容器内写入持久化模式,但也可修改为易失模式(重启后修改丢失) 不能做什么 如果容…
这也许是一种曲高和寡吧
--【捌】--: Leo Lee:
你觉得Claude code对比那些啥opencode或者openclaw啊有啥优势没有啊?
我没深入用过cc,我大部分时间都在用opencode,我觉得这个我就满足了
我是觉得没有太大优势,尤其是用第三方模型的时候
但是mcp、skills这种都是a社提出的,自己的模型和Agent肯定理解独到一点
--【玖】--:
好吧
感觉linux do应该改名 linux.do is not linux
--【拾】--:
不能把 什么稀奇的电脑linux都没驱动
笔记本?
--【拾壹】--:
我也喜欢在多余的机器上安装各种操作系统
只是我那些电脑驱动知识都太差了,连Linux都没有完整的驱动支持
--【拾贰】--:
话说cc是啥?Claude Code?还是C Compiler?
--【拾叁】--:
话说您还有什么能让计算机使用更高效的工具吗?现在感觉我对计算机的研究遇到了瓶颈啊,实在是找不到什么非常好用的工具了
--【拾肆】--:
图片640×360 21.4 KB
--【拾伍】--:
对对对,这也是一个很大很大的问题。
其实我现在遇到一个非常尴尬非常尴尬的问题,朋友送我一颗英伟达显卡,但我是笔记本,没有台式机根本装不进去啊
--【拾陆】--: NumPy:
这个论坛cc一般指Claude Code
哈哈哈我还以为他们说的cc是像这个:
$ cc hello.c
$ ./a.out
Hello, world
$
我还说嘛我说gcc还有clang都是开源的为啥还要逆向。
对了,据说claude code源代码泄露了?你觉得Claude code对比那些啥opencode或者openclaw啊有啥优势没有啊?
--【拾柒】--:
ThinkPad T430U
我是主力一台ThinkPad X1,装的系统是arch,但是那台X1有一个非常大的问题就是他的ipu6网络摄像头完全没有办法正常工作(这个我记得b站上有问题的描述可以去搜一搜)
那台老笔记本也面临着类似的问题,但是无法正常工作的硬件不是摄像头,而是蓝牙
其实我也不确定他是不是因为我的操作不当没有正确安装驱动导致的,但是我感觉他确实不太适合继续用了,不仅只有4g的内存,而且设备严重老化
--【拾捌】--:
嗯嗯嗯,是啊,其实驱动还有专有软件,就是Linux和bsd系统没有办法被大规模应用的最大的障碍
--【拾玖】--:
确实啊……

