Redox OS 发布 0.5 版
Redox OS 是一个几乎完全以 Rust 语言编写的通用操作系统及周围生态(例如文件系统、显示服务器及 Rust 版本的 libc)。其遵循微内核架构,在一定程度上兼容于 POSIX。
该项目于日前发布了 Redox 0.5 版本。自上次发布 Redox OS 以来已经过去了一年零四天。在此期间,Redox 团队一直在努力改善 Redox 生态系统。大部分努力集中于 relibc,这是一个用 Rust 编写并由 Redox OS 项目维护的新 C 库;此外,cookbook 添加了新的软件包。现在,relibc 的能力已经超过了 Redox 此前依赖的 C 库 newlib。这一版本新增了许多重要的库和程序。
粗略看来,此版本 ISO 镜像与上一个正式发布的版本 0.3.5 无甚区别——拥有相同的登录屏幕以及相同的默认背景和应用程序。但这本身就是一项成就。因为关于 relibc 的工作很密集,几乎触及了系统的每个部分。
一旦深入了解,就会发现变化明显。事件系统经过重新设计,为 select
和 poll
提供了正确的支持,并实现了完整的内存映射支持。实现了 pthreads
,以及一些与信号相关的系统调用。所有这些变化都为 LLVM 提供了更好的支持。
此外,还有基于 coreboot 和 EFI 的新引导加载程序的新镜像文件。Redox 已经做了大量工作来为 EFI Rust 开发提供库以及在 Rust 中开发 coreboot payloads。这些 bootloader 项目可以根据需要改作它用。请参阅以下项目:
- bootloader-coreboot : 可以引导 Redox 的 Coreboot payload
- bootloader-efi : Redox 的 EFI bootloader
- coreboot-table : coreboot 表的解析器
- uefi : UEFI协议定义
- uefi_alloc : UEFI分配器
- uefi_std : UEFI运行时
更多变化信息载于其发布通告。
Redox 是编写一个完整、功能齐全的通用操作系统的尝试,关注于安全性、自由性、可靠性、正确性和实用性。
该项目团队希望能够在没有障碍的情况下使用它作为 Linux 的替代品。它一定程度上兼容于 POSIX,因而应该能够在无需大量修改的情况下运行大多数 Linux 程序。
该项目旨在建立一个完整、安全的 Rust 生态系统。这是一种设计选择,有望提高正确性和安全性。
与其他类 Unix 内核相比,Redox 项目希望通过使用安全默认值并在可能的情况下禁止不安全配置来改进安全性设计。
除了仅 16000 行代码的内核之外,Redox 项目还维护了诸多直接相关的周边项目,这些项目大多是 Redox 操作系统的一部分。例如,
- TFS: 文件系统,受 ZFS 启发;
- Ion: Redox shell;
- Orbital: Redox 显示服务器;
- OrbTK: A widget toolkit.
- pkgutils: Redox 包管理库及其命令行前端;
- Sodium: 类似 Vi 的编辑器;
- ralloc: 内存分配器;
- libextra: libstd 的补充,在 Redox 代码中广泛使用;
- games-for-redox: 一系列小游戏(类似 BSD-games);
- 以及一些其它项目(链接)。
需要说明的是,Redox 目前还处于起步阶段,距离实际应用还有很远的距离。但是,Redox 已经有了可用的图形化界面支持,并能够在虚拟机中运行。
Redox OS 主页:
https://www.redox-os.org/ 。
Redox OS 发布 0.5 版的更多相关文章
- RaisingStudio.SessionFactory 发布 0.1版
功能描述: 1. 支持Orchard中方便使用自定义数据库连接. 2. 连接信息可配置. 用法: 1. 构造函数中添加IRepositoryFactory引用 private readonly IRe ...
- 将 ASP.NET Core 1.0 应用作为 docker 镜像发布 (Linux版)
var appInsights=window.appInsights||function(config){ function r(config){t[config]=function(){var i= ...
- RapidJSON 1.0 正式版发布,C++的JSON开发包
分享 <关于我> 分享 [中文纪录片]互联网时代 http://pan.baidu.com/s/1qWkJfcS 分享 <HTML开发MacOSAp ...
- Apache DolphinScheduler 3.0.0 正式版发布!
点亮 ️ Star · 照亮开源之路 GitHub:https://github.com/apache/dolphinscheduler 版本发布 2022/8/10 2022 年 8 ...
- Redis 3.0正式版发布,正式支持Redis集群
Redis是一个开源.基于C语言.基于内存亦可持久化的高性能NoSQL数据库,同时,它还提供了多种语言的API.近日,Redis 3.0在经过6个RC版本后,其正式版终于发布了.Redis 3.0的最 ...
- Moon.Orm 5.0(MQL版)使用指南及代码生成器新版发布
相关博文1)Moon.Orm 5.0 (MQL版) 配置说明; 2)Moon.Orm 5.0 (MQL版) 版本维护及下载(跟踪发布); 3)Moon.Orm 5.0系列文章; 4)Moon.Orm ...
- 【6年开源路】海王星给你好看!FineUI v4.0正式版暨《FineUI3to4一键升级工具》发布!
去年10-28号,我发布了一篇文章<海王星给你好看!FineUI v4.0公测版发布暨<你找BUG我送书>活动开始>,标志着FineUI开始向4.0版本迈进.经过4个月3个公测 ...
- Appium路线图及1.0正式版发布
Appium更新的速度极快,从我试用时候的0.12到1.0(0.18版本后就是1.0),完全符合移动互联网的节奏. 更新可能会慢,可以多试几次 整理了testerhome上思寒发表的帖子,让我们来看下 ...
- [Android应用]《花界》V1.0 正式版隆重发布!
http://www.cnblogs.com/qianxudetianxia/archive/2012/04/05/2433669.html 1. 软件说明(1). 花界是一款看花软件:“看花,议花, ...
随机推荐
- tomcat 日志拆分
一.用cronolog分割tomcat的catalina.out文件 1.编译安装cronologwget http://cronolog.org/download/cronolog-1.6.2.ta ...
- 左值引用&右值引用实践【TODO】
这篇文章写的很好,下半部分还未完全理解,后续还需要回头来看看20190706(): https://www.cnblogs.com/likaiming/p/9045642.html 简单实践如下: # ...
- 浏览器端-W3School-JavaScript-HTML DOM:HTML DOM Event 对象
ylbtech-浏览器端-W3School-JavaScript-HTML DOM:HTML DOM Event 对象 1.返回顶部 1. HTML DOM Event 对象 实例 哪个鼠标按钮被点击 ...
- webshell 常见 Bypass waf 技巧总结
在渗透学习的过程中,总会遇到各种情况,例如 php 大马被 waf 拦截的时候,那么如何制作免杀 php webshell 呢,接下来就由我带各位小伙伴们一起踏上大马免杀之路,不喜勿喷. 一篇好的文章 ...
- Selenium 2自动化测试实战6(异常)
一.异常 python用异常队形(exception object)来表示异常情况,遇到错误后,会引发异常.如果异常对象并未被处理和捕捉,则程序就会用所谓的回溯(Traceback,一种错误信息)来终 ...
- zabbix_server调优
调整zabbix_server参数 /usr/local/zabbix/etc/zabbix_server.conf StartPollers=160 StartPollersUnreachea ...
- git 新建项目提交本地项目代码
git init git remote add origin ssh://git@42.123.127.93:10022/tyshawn/sdap1.git git add . git commit ...
- Unity中的动画系统和Timeline(3) 混合树和动画匹配
混合树 前面我们通过在Animation界面添加单独的动作来控制动画,这样做比较麻烦,每个单独的属性,比如站立,奔跑等,都需要单独的代码来控制.现在我们可以通过使用混合树,其基本思想是将相近的动画混合 ...
- BZOJ3129方程(SDOI2013)
https://blog.csdn.net/Maxwei_wzj/article/details/80152116 对变量有上界限制及下界限制.对于下界,可以从总数中减去即可,对于上界,容斥定理.
- oracle创建表示例
create table wf_message_weixinqun(dizhi VARCHAR2(200) not null, weixinnicheng VARCHAR2(6) not null,w ...