计算机的操作系统是一种重要的基础设施


Hello everyone, I'm Lemon Brother. Today I will be sharing some programming resources with you.

We have great resources for you, including a PDF on computer operating systems with illustrations. This PDF is accompanied by illustrations rather than large textbooks. Each point is explained with vivid images, making it easy to understand computer operating systems. The entire PDF contains over 150,000 words and 500 images. Let's take a look at the table of contents for the graphical system:

The PDF is organized and the download link is available: Computer Basics | Graphical Operating System Open Download

What do you need to learn about operating systems?

An operating system is also a kind of software. The familiar Microsoft Windows operating system as well as various distributions of the Linux system used in backend development are installed on computers as software. However, this software is different from the applications we normally use. It is special because it processes the computer hardware (as we learned in computer architecture) and provides general software for other applications and users. In simple terms, the operating system plays the role of a mediator and housekeeper in handling interactive interfaces. It helps us to do the following:

The operating system plays an important role in computer basics. So, what is computer basics?

Computer basics

Regardless of whether it's backend development or frontend development, all our software development is done for the purpose of computing. Although, when you actually start writing code, you are rarely required to solve lower-level issues of computing. Lack of direct connection doesn't mean it's not important. Computer basics are the most important.

In backend development, Java, C++, Python, and Golang are often used. These languages are called high-level programming languages. They are called high-level because they are closer to natural language used in daily communication and far from the lower levels of computing. However, all high-level languages ultimately boil down to assembly language -> machine instructions -> control flow to control computer hardware. Therefore, learning basic computer knowledge such as computer architecture, working principles, and operating systems can deepen our team's understanding of computer hardware and high-level languages.

So, what is computer basics that we've been talking about? As a professional course in computer science (CS), like other engineering courses, it has its own theoretical system. If you are a computer major, you don't need me to tell you what to study. Professors in universities teach a four-year computer science course. That's the basic knowledge. Don't underestimate the seemingly useless courses you've taken in school. Here, I arrange the structure of major courses in the undergraduate computer technology major at the University of Science and Technology of China.

If you are not in a computer-related major and want to switch careers, don't be afraid. After all, this is a four-year content. The undergraduate training goal is not only to develop a software engineer but also to provide basic training for master's and doctoral degrees. Please note, my major is computer science, and there are two "science" in my name. This article about the backend software development at BAT companies can be considered as an "engineering" direction, serving more engineering development.

If you only focus on backend development and job interviews, or if you are not a computer major and want to switch careers, with not much time to study theoretical courses in college, then help me narrow down the range of computer basics to the following four professional courses: computer architecture, computer networks, operating systems, and data structures.

Graphical System PDF

This graphical material can be used as a supplementary interview material for large companies, or as a review material for final exams in universities. This is the most lucid summary of operating systems I have seen so far. The entire PDF contains over 150,000 words and 500 images. These serious illustrations are actually simple, just to break everyone's fear of operating systems.

I have extracted some screenshots from the article to give you a feel for the quality of the images:

Instruction and memory diagram:

CPU cache reading process diagram:

Binary complement representation and binary calculation illustration:

The graphical system not only covers the content of the operating system, but also includes some computer components and Linux commands.

Of course, the content of the operating system occupies a considerable part. It basically explains the five main structures of process management, memory management, file system, device management, and network system in the operating system.

Computer architecture mainly involves CPU-related knowledge. We are not concerned with how the CPU is designed and implemented, but only with CPU knowledge that is relevant to developers.

To cater to the reading habits of different readers, the graphic system PDF is presented in two styles: "light style" and "dark style."

The PDF has been organized and is available for download:

It is suitable for students who are not firm in the knowledge of operating systems or are unable to link the key points. Simply put, the graphical system is designed to rescue students who are struggling. Moreover, the quality is very good. Many readers have said that after looking at these pictures, they can easily handle interview questions from major companies. Whenever they are asked about network and operating system questions in interviews, they have no panic and even smile secretly.