-
Notifications
You must be signed in to change notification settings - Fork 452
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* add reports of hxingjie --------- Co-authored-by: hxingjie <[email protected]>
- Loading branch information
Showing
2 changed files
with
94 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
--- | ||
title: 2024秋冬季开源操作系统训练营第一阶段总结报告-hxingjie | ||
date: 2024-11-06 15:17:06 | ||
categories: | ||
- summary report | ||
tags: | ||
- author:hxingjie | ||
- repo:https://github.com/LearningOS/rust-rustlings-2024-autumn-hxingjie | ||
--- | ||
|
||
|
||
## 一、前言 | ||
|
||
在过去两周,我学习了Rust编程语言的相关知识。通读了一遍《Rust程序设计语言》书籍并完成了训练营的Rustlings练习。经过两周的学习,我对Rust有了初步的认识和掌握。以下是我对这两周学习过程的总结。 | ||
|
||
|
||
## 二、学习内容 | ||
|
||
1. Rust基础知识 | ||
|
||
- Rust编程语言的基本语法,包括变量、数据类型、运算符、控制流等。 | ||
- Rust的所有权系统,包括所有权、借用、生命周期等概念。 | ||
|
||
2. Rustlings练习 | ||
|
||
- 通过完成一系列练习,巩固对Rust基础知识的理解和应用。 | ||
- 练习涵盖了Rust的所有权、借用、生命周期、错误处理、宏、模式匹配等方面的内容。 | ||
|
||
|
||
## 三、学习心得 | ||
|
||
非常感谢训练营的老师和助教帮助,让我能够在两周的时间快速入门rust这门优秀的语言。印象最深的还是最后的算法部份,尤其是前两道关于链表的题目,其实之前一直是使用c++做算法题,对链表也较为熟悉了,但是由于对rust的特性不熟悉以及对链表没有深刻理解,让我有一种有力使不出的感觉,后面通过阅读题目的框架,以及对书本知识的巩固,终于是对rust中的链表有了初步的认识,写完链表的题目后,后续的题目也很快完成了。rust语言的特性让我对编程和计算机有了更深的理解,尽管现在还是写得磕磕绊绊,和编译器打架,但是相信通过不断学习和时间,将来我也能够编写出优秀的rust代码。 | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
--- | ||
title: 2024秋冬季开源操作系统训练营第二阶段总结报告-hxingjie | ||
date: 2024-11-06 15:18:43 | ||
categories: | ||
- summary report | ||
tags: | ||
- author:hxingjie | ||
- repo:https://github.com/LearningOS/2024a-rcore-hxingjie | ||
--- | ||
|
||
|
||
## 一、前言 | ||
|
||
在过去两周,我学习了rCore操作系统。通过阅读实验指导书,我跟着操作系统的发展历程,学习了批处理系统、多道程序与分时多任务、虚拟地址空间、进程管理、文件系统、进程通信和并发等核心概念,并对rCore的实现有了更深入的认识。以下是我对这两周学习过程的总结。 | ||
|
||
|
||
## 二、学习内容 | ||
|
||
1. 搭建执行环境: | ||
|
||
学习了平台与目标三元组,理解了应用程序执行环境。 | ||
|
||
2. 批处理系统: | ||
|
||
学习了批处理系统的基本原理,包括作业调度、作业执行过程。 | ||
|
||
3. 多道程序与分时多任务: | ||
|
||
掌握了多道程序设计的基本概念,以及如何实现分时多任务调度。 | ||
|
||
4. 虚拟地址空间: | ||
|
||
理解了虚拟内存的概念,包括页表、地址映射。 | ||
|
||
5. 进程管理: | ||
|
||
学习了进程的管理、调度,更加深入的理解了fork+exec。 | ||
|
||
6. 文件系统: | ||
|
||
掌握了文件系统的基本结构,包括目录、文件。 | ||
|
||
7. 进程通信: | ||
|
||
学习了父子进程之间的通信机制——管道。 | ||
|
||
8. 并发: | ||
|
||
学习了线程管理机制的设计与实现,理解了同步互斥的实现,包括锁、信号量、条件变量。 | ||
|
||
|
||
## 三、学习心得 | ||
|
||
Rust语言的安全性和性能在rCore开发中得到了充分体现,经过阅读系统的源码以及作业的编写,对rust语言在内存安全和并发控制方面的优势有了更深的理解,第一阶段学习rust的很多疑问也得到了解答。 | ||
|
||
通过学习rCore,我对操作系统的原理有了更深入的理解,虽然考研的时候较为系统的学习了操作系统的知识,但是基本上还是停留在理论知识方面。这次rCore学习之旅,我获取PCB对进程进行操作、实现课本上学习过的系统调用、深入汇编代码理解什么是 '陷入' ,让我对操作系统的设计理念、计算机的体系结构有了具象化的认识。 | ||
|
||
在学习过程中,我也遇到了许多挑战,包括环境搭建遇到报错、Rust基础不够牢固导致代码编写举步维艰等,但通过不断解决这些问题,我的编程能力和问题解决能力得到了显著提升。 | ||
|
||
两周的rCore学习之旅让我受益匪浅。通过学习rCore,我对操作系统的设计和实现有了更深刻的认识,同时也提升了我的编程技能。我相信,这些知识和经验将对我未来的学习和职业发展产生积极影响。 | ||
|