Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 36 additions & 0 deletions source/_posts/os-camp-blog.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
---
title: os-camp-blog
date: 2025-11-10 16:04:18
tags:
- author:Matr1xjt
---

## 总结

### rust编程语言
第一阶段由于原先有C/C++的编程基础,基础语法上手还是比较快的,但在rust语言在内存管理方面的特性还是需要适应一段时间。但学习rust的经历中,也是能学到很多,能看到很多其他编程语言的影子,但也有rust自身的特性,如内存管理方面。多方面多语言融会贯通,收获颇丰。

## rcore
由于在操作系统方面是0基础,在进入第二阶段的学习之前,我先去学习了Mit的xv6课程,有了这方面的基础,后续的学习会简单很多。

在实验上第一次尝试用rust写内核,体验挺奇妙的,在内存管理上给人与C语言完全不同的体验。
1. ch3 熟悉系统调用
2. ch4 内存映射出问题,调试比较麻烦
3. ch5 熟悉进程调度算法
4. ch6 挺麻烦的要自己实现一些接口
5. ch8 死锁检测,耗费时间比较多,走了一些弯路,好在最后调试发现问题所在

## arceos
作业难度比上一阶段简单一些,但模块化的设计思路很巧妙,体验比较新奇。

在实验上

1. [print_with_color] 仿照原有代码的color包装即可完成
2. [alt_alloc_bump] 内存分配算法 这里的测试文件是不很全部
3. [ramfs_rename] 动手实现一个处理函数
4. [sys_map] 花费的时间比较多,后续调试才发现是访问权限的问题
5. [simple_hv] 解析指令,修改上下文即可


### 综上
总的来说,训练营的学习收获还是挺多的,也尝试了用rust编写内核,这是我从未涉猎的领域,希望在后续的学习中能学的更多,后续希望能写出自己的内核,尝试在操作系统中加入自己的想法。