【Rust日报】2021-01-26 太素桌面系统:基于RISC-V架构的Rust系统内核

2024-06-22 23:49

本文主要是介绍【Rust日报】2021-01-26 太素桌面系统:基于RISC-V架构的Rust系统内核,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

太素桌面系统:基于RISC-V架构的Rust系统内核(十二)

编写“太素”桌面操作系统的文章更新到第十二期。本期文章在前文成果的基础上,开始编写一个简单的桌面系统结构。这包括桌面、窗口和其中的控件,以及文字标签的显示方式。

太素OS是一个RISC-V架构、Rust编写的操作系统内核。作者在系列文章中介绍,“太素”的名字来源于道家五太之一,可以演化万物。这个项目实现了包含图形处理器在内的外部设备控制,实现了包含缓冲区的磁盘文件系统,基于进程和线程的任务系统,正在开发中的图形接口,当然也包括中断、内存页和块设备等操作系统常见的概念。

作者@大树之下制作项目的初衷是出于对编程和创造的热情。操作系统博大精深,它知识丰富的内涵吸引了作者,大树之下一做就是一年。在系列文章中,作者肯定了RISC-V在架构设计上的先进性。作者编写系列文章的初衷,是节省内核写手们查找资料的时间和精力,出于开源和共享精神,将自己整理的知识以教程的形式馈赠给网友。

文章链接: https://zhuanlan.zhihu.com/p/346692185

项目链接: https://github.com/belowthetree/TisuOS

Lemmy论坛项目发布v0.9.0版本

Lemmy是一个类似于Reddit、Lobsters的网络论坛项目,上一个版本在去年十月发布。本次更新重新编写了Lemmy的数据库结构,发布了Lemmy API的v2版本。本次的更新公告也在Lemmy论坛里发布。

更新公告给出了主要的新增内容。在Lemmy服务端方面,将数据库的表示层从裸的SQL迁移到了Diesel,提高了安全性和易用性。这次更新发布的v2版本程序接口,支持分级的数据表示对象。此外,更新优化了每次查询的延迟,并且增加了一些测试样例。在论坛维护方面,增加了封禁账户功能,修复了与发帖时标记地区有关的小错误,修复了楼层的子楼回复没有消息提示的问题。在文档和用户界面方面,也给出了若干项功能更新和优化。

论坛软件Lemmy的生态也在蓬勃发展。一个适用于多平台的Lemmy客户端Lemmur发布了第一个版本,适用于iOS的客户端Lemmer也发布了一个新版本。本次更新公告感谢了这些生态软件的维护者和支持者。

更新公告: https://lemmy.ml/post/49280

Criterion项目发布v0.3.4版本

Criterion是基于统计的Rust代码性能测试软件。现在,用户可使用Criterion测试异步函数的性能;这项更新需要启用软件的'async'特性。Criterion还针对async-std、tokio和futures等调度器和实现部分实现做了专门的支持,现在可以查看针对这些调度器的性能测试报告。

更新的其它内容包括许多优化和修复。一些已经弃用的旧函数不再被支持,开发者需要留意是否使用了这些函数。另外,作者发布了实验性的内置测试器库Iai,也包含在本次的更新公告中。

更新链接: https://bheisler.github.io/post/criterion-rs-0-3-4/

无论我去哪儿,我总是想念Rust的枚举类型

Reddit网友u/PXaZ对Rust的枚举类型做了讨论和归纳。网友指出,Rust的枚举类型设计非常优秀,他在写Typescript的时候,总是怀念Rust风格的枚举类型。

帖子链接: https://www.reddit.com/r/rust/comments/l594zl/everywhere_i_go_i_miss_rusts_enums/

rust-analyzer发布第六十一期更新公告

知名的Rust语言静态分析器发布了此次更新公告。现在,rust-analyzer项目每六周都会给出指向性的路线清单,指导下一个阶段的主要工作。补全为类型扩展函数的trait时,现在会提示trait中的函数名。当一个trait整体被标注为弃用时,补全提示中也会标记它所有的函数为弃用。在宏中给出的测试函数,现在也拥有了方便的“运行”按钮,就和在宏外面写的一样。编写函数内代码时,函数的常量范型也会出现在补全清单中。

其它的更新内容包括若干项小修复和内部性能提升。

更新公告: https://rust-analyzer.github.io/thisweek/2021/01/25/changelog-61.html


From 日报小组 洛佳

社区学习交流平台订阅:

  • Rustcc论坛: 支持rss

  • 微信公众号:Rust语言中文社区

这篇关于【Rust日报】2021-01-26 太素桌面系统:基于RISC-V架构的Rust系统内核的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1085756

相关文章

Linux系统中查询JDK安装目录的几种常用方法

《Linux系统中查询JDK安装目录的几种常用方法》:本文主要介绍Linux系统中查询JDK安装目录的几种常用方法,方法分别是通过update-alternatives、Java命令、环境变量及目... 目录方法 1:通过update-alternatives查询(推荐)方法 2:检查所有已安装的 JDK方

Linux系统之lvcreate命令使用解读

《Linux系统之lvcreate命令使用解读》lvcreate是LVM中创建逻辑卷的核心命令,支持线性、条带化、RAID、镜像、快照、瘦池和缓存池等多种类型,实现灵活存储资源管理,需注意空间分配、R... 目录lvcreate命令详解一、命令概述二、语法格式三、核心功能四、选项详解五、使用示例1. 创建逻

使用Python构建一个高效的日志处理系统

《使用Python构建一个高效的日志处理系统》这篇文章主要为大家详细讲解了如何使用Python开发一个专业的日志分析工具,能够自动化处理、分析和可视化各类日志文件,大幅提升运维效率,需要的可以了解下... 目录环境准备工具功能概述完整代码实现代码深度解析1. 类设计与初始化2. 日志解析核心逻辑3. 文件处

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

Linux系统性能检测命令详解

《Linux系统性能检测命令详解》本文介绍了Linux系统常用的监控命令(如top、vmstat、iostat、htop等)及其参数功能,涵盖进程状态、内存使用、磁盘I/O、系统负载等多维度资源监控,... 目录toppsuptimevmstatIOStatiotopslabtophtopdstatnmon

Knife4j+Axios+Redis前后端分离架构下的 API 管理与会话方案(最新推荐)

《Knife4j+Axios+Redis前后端分离架构下的API管理与会话方案(最新推荐)》本文主要介绍了Swagger与Knife4j的配置要点、前后端对接方法以及分布式Session实现原理,... 目录一、Swagger 与 Knife4j 的深度理解及配置要点Knife4j 配置关键要点1.Spri

mysql中的服务器架构详解

《mysql中的服务器架构详解》:本文主要介绍mysql中的服务器架构,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、背景2、mysql服务器架构解释3、总结1、背景简单理解一下mysqphpl的服务器架构。2、mysjsql服务器架构解释mysql的架

linux重启命令有哪些? 7个实用的Linux系统重启命令汇总

《linux重启命令有哪些?7个实用的Linux系统重启命令汇总》Linux系统提供了多种重启命令,常用的包括shutdown-r、reboot、init6等,不同命令适用于不同场景,本文将详细... 在管理和维护 linux 服务器时,完成系统更新、故障排查或日常维护后,重启系统往往是必不可少的步骤。本文

k8s上运行的mysql、mariadb数据库的备份记录(支持x86和arm两种架构)

《k8s上运行的mysql、mariadb数据库的备份记录(支持x86和arm两种架构)》本文记录在K8s上运行的MySQL/MariaDB备份方案,通过工具容器执行mysqldump,结合定时任务实... 目录前言一、获取需要备份的数据库的信息二、备份步骤1.准备工作(X86)1.准备工作(arm)2.手

Mac系统下卸载JAVA和JDK的步骤

《Mac系统下卸载JAVA和JDK的步骤》JDK是Java语言的软件开发工具包,它提供了开发和运行Java应用程序所需的工具、库和资源,:本文主要介绍Mac系统下卸载JAVA和JDK的相关资料,需... 目录1. 卸载系统自带的 Java 版本检查当前 Java 版本通过命令卸载系统 Java2. 卸载自定