Lenshood

Software Developer @ThoughtWorks

0%

In this chapter, we are going to explore the cpu virtualization, also known as process, in the xv6.

I'm really excited about writing this chapter, because process is one of the fundamental concepts of the operating system. Process is very useful for multiple tasks, and in the design wise, its abstraction is also very elegant.

Read more »

We have learnt how to setup risc-v in rust, and also initialized risc-v to be able to print format strings, in this chapter we are taking the first look of the OS kernel, and will try to figure out the memory management in xv6.

Read more »

With the help of the previous article, right now we have a good foundation for running rust on risc-v platform.

In the second episode, we are going to jump into some real code of xv6, and take care of the initialize from machine level to supervisor level, and finally, make the printf!() macro available in our code!

Read more »

Xv6 is one of the best operating systems for teaching. It’s a great way to learn about how an OS works with basic functions and few line of code.

Originally, xv6 was written in C, which is awesome for students to get hands-on experience with such a classic programming language. But now that Rust is gaining traction—especially since rust-for-linux is becoming a part of the main line Linux—wouldn’t it be fun to run xv6 using Rust?

As a perfect way to kill time, I have migrated most of xv6 from C to Rust. You can check it out here. During this migration process, I encountered many sorts of issues and tricky stuff, nothing brings me more satisfaction than successfully resolving a problem!

Therefore, I believe it would be cool for me to share my experiences through a series of articles detailing how I did this, complete with a more structured approach and clear procedures.

All right, let's get started...

Read more »

当今的汽车与数年前的汽车相比,虽然作为载具的主要目的变化不大,但不论是在驾乘体验、智能化水平还是交互方式上,都发生了质的飞跃。

为了能支撑新一代汽车所提供的这种智能化服务水平,显而易见,需要将软件平台与硬件平台相互分离和抽象以提升灵活性,这种被称为软件定义汽车(Software Defined Vehicle,下文简称 SDV)的设计方法基于更加灵活和易于扩展的软件作为汽车的核心,将传统的汽车升级为拥有诸如智能驾驶、深度娱乐、个性化人机交互能力的 “第三空间”。

SDV 带来了一系列汽车设计的革命性跨越,同时也引入了各种新的困难。诸如性能、可靠性、安全性、易用性等在软件领域长期存在的跨领域、跨业务型挑战,随着 SDV 被一并引入了汽车领域。

Read more »

性能工程,是指通过设计、构建工具链和工作流,从而对系统性能进行持续改善和守护的一类实践方法。

本文将从起源开始探寻性能工程出现的必然性,进而以软件研发流程中处理性能问题和实施性能优化时所遇到的挑战为出发点,来讨论性能工程的定义以及企业实践性能工程的目标。

Read more »