mirror of
https://github.com/PKUFlyingPig/cs-self-learning.git
synced 2026-06-24 02:16:58 +08:00
[TRANSLATION] translate CS162.md
This commit is contained in:
parent
db088e33ad
commit
d788a9c422
1 changed files with 32 additions and 0 deletions
32
docs/操作系统/CS162.en.md
Normal file
32
docs/操作系统/CS162.en.md
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
# CS162: Operating System
|
||||
|
||||
## Descriptions
|
||||
|
||||
- Offered by: UC Berkeley
|
||||
- Prerequisites: CS61A, CS61B, CS61C
|
||||
- Programming Languages: C, x86 Assembly
|
||||
- Difficulty:🌟🌟🌟🌟🌟🌟
|
||||
- Class Hour: 200 hours+
|
||||
|
||||
The course impressed me for two aspects:
|
||||
|
||||
Firstly, the textbook: *Operating Systems: Principles and Practice (2nd Edition)*Four volumes, written in great depth, but easy to understand, well compensated for the little blank in the theoretical knowledge of MIT6.S081, I highly recommend you to read this book. Relevant resources will be shared in this book's `Book Recommendations` module.
|
||||
|
||||
Secondly, the project for this course - Pintos. Pintos is an instructional operating system framework for the x86 instruction set architecture written by Ben Pfaff and others, and Ben Pfaff even published a [paper](https://benpfaff.org/papers/pintos.pdf) to explain the design principles of Pintos.
|
||||
|
||||
Unlike MIT's xv6 with a small but exquisite lab design philosophy, Pintos focuses more on the Design and Implementation of the system. Pintos itself is only about 10,000 lines long and provides only the basic functions of the operating system. The 4 Projects let you add thread scheduler (Project1), system calls (Project2), virtual memory (Project3), and the file system (Project4) to this extremely simple operating system. All projects leave a lot of room for students to design, with a total of about 2000 lines of code. Based on [feedback](https://www.quora.com/What-is-it-like-to-take-CS-140-Operating-Systems-at-Stanford) from Stanford students, the latter two projects take over 40 hours per person even in teams of 3-4 people.
|
||||
|
||||
Although it is tough, Stanford, Berkeley, JHU and many other top U.S. Schools have adopted Pintos for their OS courses. If you're really interested in operating systems, Pintos will greatly improve your ability to write and debug the underlying system code. It is an invaluable experience at the undergraduate level to design, implement, and debug a large system on your own.
|
||||
|
||||
Pintos will also be introduced as a course project for the first time in Peking University's OS Lab class in the Spring 2022 semester. [Another teaching assistants]((https://www.quora.com/What-is-it-like-to-take-CS-140-Operating-Systems-at-Stanford)) of the course and I have compiled and perfected the experimental documentation of Pintos, and configured a cross-platform [experimental environment](https://alfredthiel.gitbook.io/pintosbook/) using Docker, if you want to learn on your own, you can follow the documentation. In the last semester before graduation, I hope to use such an attempt to make more people fall in love with the field of systems and to contribute to the research of systems of China.
|
||||
|
||||
## Course Resources
|
||||
|
||||
- Course Website: <https://cs162.org/>
|
||||
- Lecture Videos:<https://www.youtube.com/watch?v=YfHY0pvpRkk>, videos for each lecture can be found on the course website.
|
||||
- Textbook:[Operating Systems: Principles and Practice (2nd Edition)](http://ospp.cs.washington.edu/)
|
||||
- Assignments: <https://cs162.org/>, 6 Homework, 3 Projects, the course website has specific requirements
|
||||
|
||||
## Personal Resources
|
||||
|
||||
Since PKU Operating System Course uses the course's Project, my code implementation is not open source to prevent code plagiarism.
|
||||
Loading…
Reference in a new issue