查看原文
其他

程序员辞职开发操作系统,在Github上火了!

GitHub猿 2022-07-01

来源:开源最前线(ID:OpenSourceTop) 猿妹编译 

链接:github.com/FavioVazquez/ds-cheatsheets

往期文章:推荐一个OA办公自动化系统(附源码)!


正文

大家好,我是GitHub猿。今天,推荐一个操作系统项目。猿哥第一次使用就有点上头,爱不释手,必须要推荐给大家。

上次是谁要的操作系统项目啊,猿哥帮你找到了。


这是我目前见过的操作系统项目。功能完整,代码结构清晰。值得推荐。

一位来自瑞典的程序员Andreas Kling,前不久他发表了一篇《I quit my job to focus on SerenityOS full time》文章,里面提到自己从2021年5月28日起,他结束了“打工人”的职业生涯,专注于自己一手创建的操作系统工作。



历经半年时间,从头开始写操作系统——SerenityOS,SerenityOS是一款适用于x86计算机的图形类UNIX操作系统。与此同时,基于热爱和喜欢,这款系统结合了一些传统操作系统的特性,如20世纪90年代的GUI和20年代末的UNIX命令行。



近日,猿妹发现SerenityOS已经登上Github周榜第二,一起来看看这个操作系统具体如何吧。

SerenityOS具有以下特性:
  • 抢占式多任务

  • 多线程

  • 合成窗口服务器

  • IPv4 网络支持 ARP, TCP, UDP 和 ICMP

  • ext2 文件系统

  • 类 Unix 的 libc 和 userland

  • POSIX 信号

  • 支持管道和 IO 重定向的 Shell

  • mmap()

  • /proc 文件系统

  • 本机 sockets

  • 虚拟终端 (with /dev/pts filesystem)

  • 事件循环库 (LibCore)

  • 高级 GUI 库  (LibGUI)

  • 可视化 GUI 设计工具

  • PNG 格式支持

  • 文本编辑器

  • IRC 客户端

  • DNS 查询

  • 桌面游戏:扫雷和贪吃蛇

  • 端口系统


Serenity操作系统,一开始有四个组成部分:
  • AK实用程序库

  • 一个ELF可执行加载器

  • 一个ext2文件系统解析器

  • 基于SDL的简单 GUI 工具包


Serenity开发路线如下:

2018-10-10:Serenity的第一个截图



2018-11-08:在虚拟机中运行的 Serenity:



2019-01-09:SDL 帧缓冲区中的“Widgets”测试程序:



2019-01-10:Serenity 首次启动到 GUI:



2019-01-21:测试生成多少个“guitest”进程:



2019-02-03:添加了 FontEditor 和 Clock,移植了 GNU bc:



2019-02-08:壁纸支持、“顶级”程序等:

搜索公众号GitHub猿回复“监控”,送你一份惊喜礼包。



2019-02-11:第一次实现菜单!还有一个非常早期的 FileManager:



2019-02-28:ProcessManager 的早期版本(今天称为 SystemMonitor):



2019-04-11:VisualBuilder 的第一个屏幕截图,Visual Basic 启发的 GUI 设计工具:



2020-10-10:制作这个网页!



源码获取

扫码下方二维码,后台回复【操作系统】即可获取

--END--


猿哥个人微信


添加猿哥个人微信即送一份惊喜大礼包


→ 技术资料共享

→ 技术交流社群



版权申明:内容来源网络,版权归原创者所有。除非无法确认,我们都会标明作者及出处,如有侵权烦请告知,我们会立即删除并表示歉意。谢谢!

往日文章:
推荐一套开源通用后台管理系统(附源码)
分享一个吊炸天的客户管理+电商营销系统(附源码)
955.WLB 不加班公司名单!再新增 5 家公司!
分享一套分布式秒杀系统(附源码)!

重磅推荐,可能是最简单的流程图制作工具(附源码)

强烈推荐!开箱即用,WEB 界面一键安装(附源码)


最近,GitHub猿建了一个「GitHub猿交流群」,欢迎大家一起交流优秀开源项目,也可以宣传自己的开源项目,在 「GitHub猿」公众号后台回复【加群】邀请你入群。

你点的每个赞,我都认真当成了喜欢

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存