I was learning how to write an operating system (a): opening

Foreword

Some people say that programmers are three romantic compiler theory, operating systems and computer networks

After one or two prior to the completion of the small software and web sites met compiler theory, do not know why it is silly to learn, also wrote a write compiler from Fatal Frame study notes , however, are minor, only It can be counted as touched a little bar for entry. Later want in-depth study of the time, because the summer at home, bought a lot of books, then again to bring the school a lot of trouble, simply find an operating system of the book, did not understand the principle on a toy line and the type of operating system

A few deep feeling

Around students are immersed in a variety of Web direction, make all kinds of cool stuff, but also deeply feel their own Web technology stack direction is too shallow, utilization React family bucket + Electron node and do a background chat software to now look a bit naive, though other Java is my second language, but now do not have to count the table. Next semester junior, the more anxious the closer job next semester may be more focused on the application direction of it.

Write this series of reasons

Because along with the book line and the operating system is a small toy type of operating system, many related to the operating system more in-depth principle are not learning, so the family would like as their operating system of records of learning, that is, the principle of learning toys and combined to achieve a type of operating system

FragileOS

FragileOS is a toy-type operating system prior to implementation, before this name because it's really Fragile, good code structure, features small, basic prototypes from others (will be mentioned later)

Code on github has been shared out: FragileOS

The main interface

Officially begin

The study notes that may be used are four books:

  • "X86 assembly language: from real mode to protected mode"
  • "Operating Systems: Design principles and essence."
  • "OrangeS: an operating system to achieve"
  • "30 days homemade operating system."

The first third of this book and IV of this played an important role in the realization of the toy type operating system before, but this just look at the third point, this is the second on the recommendation of others to come. So very, very long front, hoping to stick with it

Preparing the Environment

  • VirtualBox 6.0

    一个开源的虚拟机,开发的操作系统就运行在这之上
  • GCC 8.1.0
  • NASM 2.07

    汇编器
  • objconv

    反汇编器

希望能够坚持下去吧

Guess you like

Origin www.cnblogs.com/secoding/p/11402948.html