👇👇关注后回复 “进群” ,拉你进程序员交流群👇👇
开源最前线(ID:OpenSourceTop) 猿妹编译
链接:https://github.com/FavioVazquez/ds-cheatsheets
一位来自瑞典的程序员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:壁纸支持、“顶级”程序等:
2019-02-11:第一次实现菜单!还有一个非常早期的 FileManager:
2019-02-28:ProcessManager 的早期版本(今天称为 SystemMonitor):
2019-04-11:VisualBuilder 的第一个屏幕截图,Visual Basic 启发的 GUI 设计工具:
2020-10-10:制作这个网页!
最后附上SerenityOS的项目地址:https://github.com/SerenityOS/serenity
-End-
最近有一些小伙伴,让我帮忙找一些 面试题 资料,于是我翻遍了收藏的 5T 资料后,汇总整理出来,可以说是程序员面试必备!所有资料都整理到网盘了,欢迎下载!
点击👆卡片,关注后回复【面试题
】即可获取
在看点这里好文分享给更多人↓↓