> ## Content Index
> Fetch the complete content index at: https://cms.yufeiran.com/llms.txt
> Use this file to discover other available public pages before exploring further.

# Building a Computer with Nexys4 DDR [2]: Operating System
- URL: https://cms.yufeiran.com/en-yong-nexys4ddr-zhi-zuo-yi-tai-ji-suan-ji-2-cao-zuo-xi-tong-she-ji/
- Published: 2020-08-21T06:57:03.000Z
- Updated: 2026-09-27T12:37:59.000Z
- Author: Feiran Yu
- Tags: works, #lang-en, #legacy-import

This computer needs a small operating system to complete its tasks.

## Index

This project consists of multiple parts, so this may not be the first article you read.

1. [Overview](https://yufeiran.com/en/yong-nexys4ddr-zhi-zuo-yi-tai-ji-suan-ji/?ref=cms.yufeiran.com)
2. [Hardware](https://yufeiran.com/en/yong-nexys4ddr-zhi-zuo-yi-tai-ji-suan-ji-1/?ref=cms.yufeiran.com)
3. [Operating System](https://yufeiran.com/en/yong-nexys4ddr-zhi-zuo-yi-tai-ji-suan-ji-2-cao-zuo-xi-tong-she-ji/?ref=cms.yufeiran.com)
4. Applications

## Goals

1. Near-term goal: implement a tiny operating system with interrupt handling, written in a mix of assembly and C.
2. Medium-term goal: port Snake to this tiny system.
3. Long-term goal: implement an operating system with interrupt handling, process management, memory management, file system, and device management, and compile it with my own compiler.

## Current Progress

1. Referred to the μC/OS-II material in *Write Your Own CPU* and the author’s own SimpleOS, and started implementing the near-term goal.
2. Started trying to change SimpleOS into a mixed assembly-and-C model.
3. The mixed assembly-and-C model worked.
4. The tiny system was completed.
5. Started trying to port Snake.
6. Snake was successfully ported.
7. Started learning the xv6 operating system.
8. Preparing to port the xv6 operating system.

[MIT 6.828 / 6.S081 study notes](https://yufeiran.com/en/mit6-828-6-s081-fall2020-xue-xi-ji-lu-0/?ref=cms.yufeiran.com)

## Reference Books

\[1\] Andrew S. Tanenbaum. Operating Systems: Design and Implementation. Publishing House of Electronics Industry, Beijing, 2007: 1-453.

## Links

[Developing a system kernel with C and assembly](https://www.jianshu.com/p/6d12a7689d3d?ref=cms.yufeiran.com)

[UC Berkeley CS162](https://cs162.eecs.berkeley.edu/?ref=cms.yufeiran.com)

[Operating Systems, Tsinghua University, XuetangX](https://next.xuetangx.com/course/THU08091000267/4231154?fromArray=learn%5Ftitle&ref=cms.yufeiran.com)

## Reference Videos