Many readers have asked me how to learn an operating system. How many books do you recommend for your operating system? What do YOU need to learn about operating systems? Are there any videos I can watch? Below, I will make my own elaboration on these problems.
Learning operating systems is not so you can design an operating system, but so you can better understand how it works.
If you find the operating system a bit difficult, I highly recommend taking a look at my PDF.
Programmers must know the core basics
This PDF gives you a basic introduction to computer hardware and how it works.
This PDF can be said to be applicable to any small white, if you can read, you have a certain basis, can formally enter the operating system.
I learn operating system is according to the China Machine Press “modern operating system” the fourth edition of learning. I read it according to the Combination of Chinese and English, you may be confused after reading it, but it doesn’t matter, just one sentence is very important.
Take 200-300 hours to get started on a subject, and then review the essence of it at intervals throughout your career
Operating system learning journey
The following is an outline of the operating system
To get an impression of the operating system outline above, I will put my article and study focus on each chapter
Chapter 1 Overview of operating system
In this chapter, you need to know
- What is an operating system? What is a computer system? What does an operating system do? What requirements does the operating system meet? What are kernel-mode and user-mode?
- What kind of hardware does a computer have? What are their respective roles? What is the hierarchical model of memory? The relationship between multithreading and multi-core chips? Why caching? What is the structure of the disk? What are the three ways of I/O? Interrupt handling process? What is a bus?
- What operating systems are there?
- What kinds of abstractions do operating systems have? What is the process? What is an address space? What is a file? What is a shell?
- What is a system call? Classification of system calls
- What is the structure of an operating system? What do monolithic systems, layered systems, microkernels, client-server patterns all mean?
You can find the answer in my article below
An operating system for busy people
Chapter 2 Processes and threads
Here’s what you need to know in this chapter
- Process model? How many ways can processes be created? How does the process terminate? Is Unix the same architecture as Windows? What is context switching? What kinds of implementations do processes have?
- Is parallelism the same as concurrency?
- Are threads the same as processes? Why do you have threads when you have processes? What are POXIS threads? How many ways can threads be implemented?
- How many ways are there to communicate between processes? What are race conditions? What is the critical region?
- How does the operating system schedule? What does a process do? What are the scheduling algorithms? Classification of scheduling?
You can find the answer in my article below
Processes and threads written for busy people
Chapter 3 Memory Management
Here’s what you need to know in this chapter
- What is memoryless abstraction?
- What is stored abstraction? What is the concept of address space? How do I manage free memory space? What are the management algorithms?
- What are the page replacement algorithms? Page replacement algorithm of the pros and cons of comparison? How to choose?
- What is virtual memory? Why can I run programs with more memory than the system? What are pages and page tables? How does memory load data? What is the structure of the page table? How to optimize/speed up the paging process? If the page table is particularly large, which way should you tune it?
You can find the answer in my article below
Operating system memory management
Chapter 4 File System Management
Here’s what you need to know in this chapter
- What is a file? Is a file an abstraction? What is the name of the file? What is the structure of the file? What are the types of files? How are files accessed? What are the attributes? How to operate the file?
- What is the level 1 quotation system? What is the pathname?
- What is the layout of the file system? What are the ways to implement a file system? What is an inode?
- What is file system management and optimization? How is disk space managed? What is a file backup? How do I back up files?
- How can I optimize file system performance?
You can find the answer in my article below
Not too hard! This article will take you through the file system
Chapter 5 I/O Management
Here’s what you need to know in this chapter
- What are the categories of I/O devices? What are their strengths and weaknesses? What is memory-mapped I/O, and what are its advantages and disadvantages? What is DMA? How does DMA work? What is an interrupt? What are the classifications of interrupts? What do they mean? How to explain them?
- What is the software goal of I/O? What are the types of I/O?
- How is the I/O hierarchy divided?
- How does the disk work? Disk construction? What are the disk scheduling algorithms? How does the disk handle errors?
- What is a clock? Explain the clock hardware, software, and timer, respectively?
You can find the answer in my article below
Liver for a long time! Learn about operating system I/O
Chapter 6 Deadlock details
- How does the operating system define resources? What are preemble resources and non-preemble resources?
- Deadlock models. What are the types of deadlocks?
- What is the Ostrich algorithm?
- How are deadlocks detected? In what ways can deadlocks be restored?
- How do I avoid deadlocks?
- How do I break deadlocks?
- What is a resource deadlock? What other deadlocks are there?
You can find the answer in my article below
To busy people see deadlock details
Operating system concepts and questions
If you’re still struggling with the basics of what computers need to know, take a look at my list of core operating system concepts
I wrote an operating system dictionary for you!
And the operating system interview questions for you
By the end of this article, you’ll have no problem arguing with the interviewer
Operating system learning materials
The open source project
First of all, I recommend a very good open source project
Teach yourself Computer Science
Not only will you find resources related to the operating system, but you will also find other resources related to the computer black book
One sentence in it was very refreshing
If you are a self-taught engineer or graduated from a programming class, it is essential that you study computer science. Fortunately, you don’t have to spend years and money on a degree: you can get a world-class education on your own.
Why do some people say it is not necessary to learn computer basics? Now it seems impossible
There are two kinds of software engineers: those who understand computer science well enough to be able to tackle challenging creative work; The other makes do with mere familiarity with some advanced tools.
Both groups call themselves software engineers, and both earn similar salaries early in their careers. Over time, however, the first type of engineer grows and does more meaningful and better-paid work, whether it’s valuable commercial work, breakthrough open source projects, technical leadership, or high-quality personal contributions.
Learning video
In addition, I also found some learning videos for you on B website
Machine industry black book series B station video
“Modern operating systems” : www.bilibili.com/video/av955…
“Introduction to algorithms: www.bilibili.com/video/av489…
The deep understanding of computer systems: www.bilibili.com/video/av312…
The computer network: the top-down approach: www.bilibili.com/video/av414…
The construction and interpretation of computer programs: www.bilibili.com/video/av851…
The compiling principle: www.bilibili.com/video/av176…
The concept of database system: www.bilibili.com/video/BV1PJ…
Operating system books are recommended
- “Introduction to Operating Systems” strongly recommended, foreign classic textbook “Operating Systems:Three Easy Pieces” Chinese version
- The Essence and Design Principles of operating Systems
- Understanding Computer Systems in Depth
- Modern Operating Systems
- Operating System Design and Implementation
- Linux Kernel Design and Implementation
- Deep Understanding of the Linux Kernel
- Linux Device Drivers
- Linux Kernel Complete Anatomy
- UNIX Operating System Design
Recommended on the operating system website
I’d like to recommend some of the websites that I refer to a lot in the course of operating systems
Generally few people recommend operating system websites… These sites are from my usual learning summary, and some are from excellent answers on the Internet. I hope these sites can help you have a deeper understanding of the operating system.
studytonight
Studytonight is awesome!! Studytonight will include the Operationg system, but it is not to say that studyTonight is a pure OS learning website, it is a basic tutorial website, its home page is not limited to OS, It also includes Java, C, CSS, OS, Computer Network, etc.
This page fell in love with a look, and a lot of domestic pages do hard style is different, such a tutorial is not so stiff and annoying. There are all kinds of tutorials in all the materials
We recommend the operating system, so just go to the operating system home page, and that’s what it looks like
Studytonight is a friendly site for beginners to learn operating systems.
The course art is mainly divided into three parts, from easy to difficult, which are the basic part, the medium part and the improving part respectively. We click on the first part of the basic part
Use simple descriptions and pictures to make it clear and purposeful, and these topics can also be used as interview questions
Ll: That’s right. Studytonight does have interview questions
We’ll find a lot of interview questions under the Test TAB
After we choose Operating System, we will find many tests
Is an integrated learning platform, suitable for novices, I roughly looked over, there is more basic things, a wide audience, is a necessary website for everyone to learn.
udacity
Udacity is a video learning site with a clean-looking interface.
There is also an introduction to the course below, and you can also start the free course. This interface is a Chinese version, which is very impressive
My courses are all the courses you’ve taken, and you can search for specific courses in all the courses, so there’s a lot of different kinds
Let’s take the operating system as an example and look at the specific course
On the left side is the list of specific courses, and on the right side is the lecturers teaching part. The video is very clear, and the lecturers speak clearly, which can practice English. Some friends said that they could not understand English, and retreated to the English network, which is not a good habit. The importance of English in the programming world is self-evident. So English is a language you must learn well.
The lecturer still has specific practice link after finishing the course, consolidate as study, very good.
Udacity is a little deeper than StudyTonight. The operating system course is divided into 22 classes, with many sections in each class. It’s a great site. I am writing an article now, I have to write, study at once! . Or hold back, that finished writing immediately to see!!
tutorialspoint
Tutorialspoint this site is also a resource tutorial network, this site’s search index is very high, basically any search questions have tutorialspoint explanation.
After we click into Library, we find that this is a treasure trove of tutorials, listed very clearly
Tutorialspoint also offers video tutorials, though most charge for them.
There are many tutorials, not only for programming, but also for Excel, SAP, etc.
Tutorialspoint also has e-book tutorials, but most of them are also charged, should be tutorialspoint’s own production of PDF, I do not know how to write, if interested in friends can pay to download, remember to send me a copy of oh, hey hey.
With all that said, we haven’t even looked at the home page of the tutorialspoint operating system
Left is the navigation bar, right is the specific tutorial, this style feels a little old, but the classification is very clear, inside the content is worse than StudyTonight, is also a very good start tutorial network
classcentral
The classcentral website is a bit of a strong one
We found a Chinese tutorial, a look is the tutorial of Nanjing University, Nanjing University is also a very cool school, xiaobian also has gay friends in The South University in film and television, in fact, I am a programming delay director, dog head to save life.
All right, let’s take a look at the nTU course
The discovery of so many excellent courses in Chinese universities also shows the status of Chinese universities in the world. Overview is an Overview of the OS.
After registration, we click “Start the course” and enter the lecture page
The course is divided into 6 weeks in the form of video and we begin with an overview of computer systems.
Finally can see the operating system that compatriots speak!!
On the right side, you can take notes and view them at any time. The course also supports downloading, which is very nice!
Well, it’s time for us to quit. I can’t help listening again!
nptel
As if to see a great website, the name of this website faint feeling a little cattle force. Let’s see where it is, and then why it is
Can you tell it’s awesome?
Each of these directories is a fucking book, and it’s not a lot of pages, but it’s a real treasure.
From an operating system overview to file systems, process management, file management, I/O management, and much more. This is not the most awesome, the most awesome is the right side can download for free, you said annoying people
You can download PDF versions of each chapter.
With curiosity, we clicked On About Us.
Then came the following
That is to say, it is an Indian National Enhanced Learning program, that is, a free learning program jointly offered by the major universities in India, which explains why Indians are getting better at electricity, programming, communication.
This is a site you have to check out. I think it’s on a par with the black book series.
codescracker
Codescracker is another awesome website, after reading this website, I think low-key is the best awesome show off…
The categories are pretty thorough and the explanations are pretty good, but Codescracker isn’t just an OS site, it’s a one-stop platform for learning a programming language, but it’s pretty simple
You can see that there are a variety of tutorials, and there are test classes below, covering almost all the languages used by the enterprise.
A website you must treasure.
sciencedirect
This website, ScienceDirect, is awesome. Baidu’s explanation of ScienceDirect
However, most of scienceDirect’s PDF downloads are available for a fee. Interested parties can purchase them
homepage
What does a Homepage do
This is a computer science and statistics website, and then we click on Search to search OS directly to the OS website
Then hehe hehe, this website is quite strange, it has no back and forward button, that how to access?
I was directly through the url to access, the home page is homepage.cs.uri.edu/faculty/wol…
But the site is too hardcore, a good learning material.
computer.howstuffworks.com
Computer.howstuffworks.com is a computer web site, it covers all aspects of software and hardware.
Computer knowledge includes Computer hardware, networks, Computer software, Computer secrets, and so on
These are very well written articles. It’s an encyclopedia of computers.
As usual, if we click on the topic of COMPUTER OPERATING SYSTEMS, we can see that there are some very good articles
Add favorites!
tldp.org
This site is another awesome site for learning operating systems, I don’t know how many times I’ve said this tonight, hahaha.
Let’s see what the home page looks like
This looks like a great site, don’t ask me why, OS page is like this
Without any embellishment or decoration, adult life is so unpretentious.
bilibili
Speaking of tutorials, how can there be no big B station for me?
YouTube says, “Bilibili, stand up,” and Bilibili reluctantly says, “Why?” “You stand up,” YouTube says, and Bilibili reluctantly stands up. Youbute then says: “Nothing personal, everyone here is rubbish!”
Put forward the errata
Finally, a few errata that I personally and readers have found. To err is human, but there are mistakes or to point out, so as not to encounter the same problem nonsense, both a waste of time and no effect, not to see the original English words it is difficult to find problems.
Note: If you find any errata in the process of learning, please add my wechat lX252279279, I can help you feedback.
The last
Finally, AT the end of this article, I would like to recommend the OPERATING system PDF compiled by myself, which can be viewed offline. It is 306 pages in total, with about 50W words, beautifully typeset and very clear. I typed the words one by one and drew the pictures one by one.
In addition, yesterday, a university teacher also approved my PDF, which is also a recognition of me. I didn’t expect it would have such a great social effect.
You can follow my official account Java Builder or scan the qr code below and reply to OS to obtain this valuable PDF.