一个新西兰人用了五年业余时间开发了一个操作系统:Winix

21-06-29 banq

一外国人竟然只用五年的业余时间就开发了一个类似鸿蒙的操作系统:

Winix是用于Waikato RISC 架构微处理器 (WRAMP) 的 UNIX 风格操作系统,是一个业余爱好、教育学习和 UNIX 风格的操作系统。它是一个兼顾可用性和性能的混合内核。点击标题见Github项目

Winix主要是受Minix1的启发,作者大学时学的操作系统。这是一个业余爱好项目,作者可能会每隔一周花 1-4 小时的时间来做。最难的部分是调试并发和奇怪的调度错误。很难调试,因为无法重现它,这很令人沮丧。随着时间的推移,发现进行有根据的猜测,或者在大脑中运行代码,比调试每一行代码高效得多。

Winix 包括具有进程和内存管理的全功能内核、内存文件系统、异常控制和具有交互式命令行的用户空间 bourne shell。是的,你甚至可以通过snake在命令行中输入来玩蛇

 

特征

  • 内核内存管理:虚拟内存、页面映射
  • 进程管理:内核线程、进程创建
  • 异常控制和中断处理程序
  • 支持大部分 POSIX api 的内存文件系统
  • 支持多个管道和重定向的 Bourne shell
  • 用户内存管理:malloc() free()
  • ucontext.h支持的用户协程
  • 堆栈跟踪转储,段错误分析

 

黑客新闻网友评论

作为一个想进入系统编程的人,这是非常鼓舞人心的。

 

在操作系统研究消亡的时代 ,唯一的优势是用于操作系统管理改进的 Nix/Guix 和用于操作系统性能增强的 eBPF。就潜在的操作系统方向而言,Winix 操作系统是一股清新的空气。

可能这个项目类似于苹果的牛顿项目,里面有很多东西,但还早了几年。

Winix 以 RISC 架构为目标,在 RISC-V 飞速发展的当下,偏向 RISC 的操作系统肯定会为平台提供优势和优势,类似于 x86 对 Linux 的怪癖,而 Linux 在 x86-32 和 x86-64 时占据优势起飞。

今年当 Linus 被问及与其他操作系统相比最好的 Linux 成就时,Linus 指出了基于 Linux 的创新无锁文件系统 。默认情况下,Winix 具有内置的创新 POSIX 兼容内存文件系统 (IMFS)。想象一个带有 IMFS 的操作系统,它也与日益流行的 Arrow 和 TileDB 内存格式本机兼容。随着太字节 (TB) RAM 计算机在不久的将来成为常态,这很容易成为拥有最先进文件系统的最快操作系统。Fuschia 是另一个最新的操作系统,但通过专注于移动而不是桌面,它可能会针对前者进行优化,这与 Winix 不同。

 

操作系统研究比以往任何时候都更加重要。您应该查看在 SOSP、OSDI、EuroSys 和 HotOS 等会议上发表的论文。你会看到很多来自行业巨头的论文。我们现在正朝着专业化方向发展,为您的用例提供特定的操作系统架构。目前,操作系统研究远不止 Linux。

 

21 年前,当 Rob 发表那次演讲时,系统软件研究正在消亡。

从那时起,系统软件研究就变得非常重要,这在很大程度上要归功于 Rob 本人;排名不分先后,自 Rob 的论文以来,系统软件研究的相关发展包括 Golang、MapReduce、HTML5(包括 Web Workers、<canvas> 和 WebSockets)、Sawzall、Hadoop、Rust、wasm、Fuchsia、V8 、protobufs、Thrift、Docker、Xen、AWS、Azure、ZFS、btrfs、BitTorrent、Kafka,几乎所有谷歌的“仓库规模计算”的东西,memcached、OpenID、QEMU†、kvm、PyPy、SPARK、Julia 和几乎所有自动微分的东西,Clojure,iOS,Swift,Factor,AMQP,RabbitMQ,ZeroMQ,Jupyter,AJAX 和 Comet 的主流使用,QUIC 和 HTTP/2,Valgrind,LLVM,Kotlin,比特币,以太坊,OTR 和 Signal,Android , Dalvik, 可重复构建, seL4, Zig, Pony, CapnProto, Sandstorm.io, 等等等等。哦,是的,还有 eBPF。

 

5年是一段很长的时间。如果我没记错的话,Linus 花了一年时间来制作他的第一个可用的 Unix 克隆。我想知道为什么这个项目花费了更多的时间。这不是批评,而是真正好奇为什么基本操作系统项目如此昂贵,因为已经有这么多。此外,Linus 在一年中每天花费大部分时间,而这对你来说可能只是一个副业。

 

2
猜你喜欢