How hard is it to write an operating system kernel? What are the approximate steps?

Updated on technology 2024-02-09
17 answers
  1. Anonymous users2024-02-05

    General computer science undergraduates (freshman will be a little bit of C language, a little patience, 3 months) will be fine... There is a book written by a Japanese called "30 Days of Self-made Operating System", which takes you step by step to write an operating system kernel (you can write it to a CD, start from the CD, and the first section is called how you can implement a "hello, world"), general computer undergraduates (that is, the kind of science and engineering students who can know a little bit of C language), if you are a little patient, you can basically read it for 2 or 3 hours a day, and you can basically read it in three months, and then you can pick out an operating system kernel. There is no need for a master's level at all.

    There is no need for the documents mentioned above. In fact, the author's goal can be understood even by middle school students, and it feels like it has basically been achieved (in the end, it is only a few dozen k**). It will be very rewarding when you finish writing.

    My first computer book was "30 Days of Homemade Operating System". What mouse and keyboard input is written out,Chinese character display (the book is displayed in Japanese,Because there are Chinese characters in Japanese,So it can actually be counted as Chinese character display),Multi-process (multi-task),Segment-page memory management,Various drivers,Timer,File system (read hard disk,File directory and content reading, etc.),Windows,****,Kernel protection,API,Mini games,****,Everything。

    If the university can follow along, absolutely, you can brag about it during the graduation interview... Of course, the C language compiler in it is not written by itself (the compiler workload is really not small)。。 At the beginning, I just couldn't get used to the various works that were compared with those books in China and didn't really have the scientific research results that I could get my hands on.

    And then this one, haha, can really follow up with an operating system kernel, and,It's definitely a thing with good efficiency and a good structure.。 <>

  2. Anonymous users2024-02-04

    In the beginning, the programmers were paper tape machines or something, and the dots 0 and 1 were written on it. Later, I wrote and wrote the assembly, all of which were directly programmed for hardware. It doesn't distinguish what kernel application is, it's all a string of wires.

    The hardware followed Moore's Law for a while, and then a tendoned program had to get a lot of interrupt responses. In other words, during the execution of the program, there are more cases where the CPU needs to stop and do other more important things.

    Slowly, the program structure became more complicated, and people felt that they needed to do some basic work so that they didn't have to pay attention to multi-interrupt scheduling or anything when writing **. There are also many things to do at one time, and several things cannot be switched by external interruptions alone, but they must have an internal order. So there's task scheduling.

    Later, everyone felt that it was not enough to have the ** task scheduling. Memory management should be simpler. There are also storage devices, which are wiped after reading and writing on a block, and a specific block will hang up.

    Demands like these are constantly emerging.

    So there's memory management and device drivers. Slowly developing, everyone thinks that this part is very important. To distinguish it from the ** they serve.

    There is a distinction between kernel and application. In the early days, applications and kernels were compiled together, and later with the design of executables, they could be separated. <>

  3. Anonymous users2024-02-03

    Although many people above say that writing an operating system kernel is relatively simple, if you only have a little bit of software and a little bit of hardware foundation, then I can safely tell you that it is definitely not a very simple task. Unless you're referring to an operating system that's just something as simple as having a little bit of control over resources or a little bit of a few processes running. Before you write an operating system, you have a clear understanding of what the operating system is for.

    The operating system provides a hardware-level abstraction to the application; Responsible for managing hardware resources such as CPU, memory, disk, and IO, as well as software resources such as process tables, file opening tables, and page tables. Responsible for using the API and system calls available to the program; Responsible for protecting the access security and isolation of hardware and software resources; as well as multi-user support and more. Then before you write an operating system, you have to make sure that the operating system you write meets the requirements that must be met: robustness, scalability, efficiency, richness, security.

    Not to mention the last few requirements, just a few robust requirements can toss a programmer for a long time. <>

  4. Anonymous users2024-02-02

    It's easy to write an operating system that is completely defined and can be easily interacted with, and a skilled student can do it alone. But reaching the scale commercial level is a world of difference.

    It's like a beginner drawing an ugly pentagram and Raphael Michelangelo painting the Hiss Chapel, the gap is many times greater.

  5. Anonymous users2024-02-01

    There is nothing difficult about the operating system, and it is not difficult to optimize. The hard thing is market recognition. So, many people are waiting for the US blockade. Without the competition of Windows systems, many operating systems would make their debut.

  6. Anonymous users2024-01-31

    But blow it hard, as far as I know, a set of XP systems costs millions of lines, not one or two people can write it in one or two clicks.

  7. Anonymous users2024-01-30

    It is relatively simple to write an operating system, but the difficult part is a variety of application software.

  8. Anonymous users2024-01-29

    There is no original program programmed in Chinese, which is also a technical gap between China and foreign countries.

  9. Anonymous users2024-01-28

    To ask weakly, can't the lowest-level instruction set, compiler, and compilation language of the programmable chip be made into Chinese?

  10. Anonymous users2024-01-27

    None of the Chinese can write, do you say that it is difficult?

  11. Anonymous users2024-01-26

    Summary. The kernel is the most basic part of the operating system.

    It is the subset of software that provides secure access to computer hardware for a wide range of applications, which is limited, and the kernel determines when and how long a program operates on a portion of hardware.

    The classification of cores can be divided into single and dual cores and microkernels. Strictly speaking, the kernel is not a necessary component of a computer system.

    What is the operating system kernel?

    The kernel is the most basic part of the operating system. It is the subset of software that provides secure access to computer hardware for a wide range of applications, which is limited, and the kernel determines when and how long a program operates on a portion of hardware. The classification of cores can be divided into single and dual cores and microkernels.

    Strictly speaking, the kernel is not a necessary component of a computer system.

    Dear, if you are satisfied with my answer, please give a thumbs up after you end the order, and I wish you a happy life! If you have any other questions, please continue to ask them!

  12. Anonymous users2024-01-25

    The kernel is the most basic part of the operating system, but it is not the whole of the operating system.

    The kernel is the core of an operating system. It is the first layer of hardware-based software expansion including travel charging, providing the most basic functions of the operating system, and is the basis of the operating system, which is responsible for managing the process, memory, device drivers, files and network system of the system, and determines the performance and stability of the system.

    The operating system generally includes the kernel, drivers, interface libraries, peripherals and other components, and the kernel is only one of the important components.

  13. Anonymous users2024-01-24

    It's still a bit difficult, mainly because of the large amount of engineering, if you have a kernel, you basically need to complete memory management, process management, bootloader, etc., and there are many small parts to consider in each part, in short, it is troublesome to death. The first part to complete is the bootloader, complete the boot loading, initialize the simple file system, open the segment page, etc., the specific steps can refer to the "completion of a system" and "30 days of self-made operating system" and other books, there are detailed explanations.

  14. Anonymous users2024-01-23

    Kernel: The most basic part of the operating system.

  15. Anonymous users2024-01-22

    Second, if China can really develop an operating system with its own kernel, a large number of PC manufacturers and ** can answer the dilemma of this independent operating system. **Will also fully support. This is nonsense again.,What do you mean by a lot of PC manufacturers?

    As far as it is now, how many pre-installed ubuntu are there?

    Third, China's environment is easy to guide people to use their own products? Do you still use QQ as an example? Don't be funny.

  16. Anonymous users2024-01-21

    One of the most difficult aspects of computer programming is writing the operating system kernel. Only the genius of geniuses can write an operating system. Writing an operating system is more difficult than winning a Nobel Prize.

    It's a pity that there is no "Nobel Prize for Computing" in the world, otherwise programmers who write operating systems will inevitably win the Nobel Prize.

  17. Anonymous users2024-01-20

    Operating System Kernel An operating system kernel refers to the core part of most operating systems. It consists of those parts of the internal operating system that are used to manage storage, files, peripherals, and system resources. The operating system kernel typically runs processes and provides inter-process communication.

    Some of its core features are listed below:

    Scheduling and synchronization of events.

    Inter-process communication (messaging).

    Memory management.

    Process management. Management of input and output routines.

    The MACH operating system, developed by Carnegie Mellon University, uses a client-server architecture that consists of a relatively small microkernel with minimal functionality. It manages device drivers, messages, threads, and virtual storage. Other functions are modularized and communicate with the operating system kernel through the use of an inter-process communication mechanism.

    Remote Procedure Calls (RPCs) are used to communicate with processes running on other systems.

    In the case of DOS, the operating system kernel is considered to be the part that separates the basic input-output system (BIOS) and the application software. Application commands are passed through the operating system kernel to the BIOS and then to the relevant hardware.

Related questions
11 answers2024-02-09

Computer operating system, can be divided into three types, UNIX series, Linux series, Windows series, now Windows series with a lot of people, and it is easier to get started, it is more successful in terms of graphical operation interface! At the same time, its security is not very good, as a server system, it still uses relatively high security Linux, or UNIX operating system, these two operating systems, now also support graphical interfaces. Windows series are common, Windows XP, Windows Me, Windows 2000, Windows NT, Windows Server2003, Windows 2000 Server >>>More

9 answers2024-02-09

Lack of Windows NT and Windows 95 and the early Win32, DOS, and Apple machine-specific IMAC operating system, you can search for these related introductions.

32 answers2024-02-09

Win7 is different from XP settings,There is a network connection icon in the lower right corner,Right click,Open the network and sharing center Local connection property Select an item with a number IPv4 in the dialog box and it will come out。 Just change it.

6 answers2024-02-09

Hello! You first go to the cultural market to buy a GHOT automatic XP installation disk 5 yuan - 10 yuan, and then boot into the BIOS to set the optical drive priority start, boot up, press the keyboard up and down left and right keys to select "Manually run ghost" item, enter the ghost interface, select local--- select patition--- select from image, press the tab key to select the top big box, press enter, press the up and down keys to select the included extension. ghofile, select it and press enter. >>>More

5 answers2024-02-09

VB is the abbreviation of Visual Basic, which is a visual, cavity-oriented and event-driven structured programming language developed by Microsoft Corporation in 1991, which can be used to develop various applications in the Windows environment. It's easy to learn, efficient, and powerful enough to rival the Windows SDK. In the Visual Basic environment, the use of event-driven programming mechanism, novel and easy-to-use visual design tools, the use of a wide range of application programming interface (API) functions within Windows, dynamic link library (DLL), object linking and embedding (OLE), open data connection (ODBC) and other technologies, can efficiently and quickly develop a powerful application software system with rich graphical interface in the Windows environment.