原文:我是如何學習寫一個操作系統(一):開篇

前言 有人說程序員的三大浪漫分別是編譯原理 操作系統和計算機網絡 在之前完成了一兩個小軟件和網站后遇見了編譯原理,也不知道為什么就傻傻的學,還寫了一個從零寫編譯器的系列學習筆記,不過都是小打小鬧,只能算作摸到了一點點入門的門檻。再后來想深入學習的時候,因為暑假在家很多書買來的話再帶去學校很麻煩,就索性找了一本操作系統的書,也不懂原理就擼了一個玩具型的操作系統 幾句感概 在身邊同學都在埋頭在各種We ...

2019-08-23 22:17 8 1765 推薦指數:

查看詳情

我是如何學習一個操作系統(九):文件系統

前言 這個應該是這個系列的尾聲了,一個完整的操作系統可能最主要的也就是分成這幾大模塊:進程管理、內存管理和文件系統。計算機以進程為基本單位進行資源的調度和分配;而與用戶的交互,基本單位則是文件 生磁盤 文件正是對生磁盤的抽象 磁盤的組成 一個磁盤由多個盤面串聯而成,而一個盤面 ...

Mon Sep 02 00:17:00 CST 2019 0 919
我是如何學習一個操作系統(四):操作系統系統調用

前言 最近有點事情,馬上要開學了,所以學習的腳步就慢下來了。這一篇主要是來說操作系統系統調用的,像C語言的printf深入到內部就是一個有關屏幕輸出的系統調用 什么是系統調用 之前提過操作系統是對硬件的抽象,也是軟硬件之間的一層。之前比如如果我們想要在屏幕上輸出一些字符,就需要一些指令操作 ...

Tue Aug 27 02:32:00 CST 2019 0 699
我是如何學習一個操作系統(完結):總結和系列索引

前言 從一開始的引導程序到現在的文件系統已經有十篇了,算是自己對操作系統學習一個筆記,原本是想結合自己之前的玩具操作系統FragileOS,但是之后就轉到了結合Linux 0.11的代碼去這個筆記。 因為現在是馬上開學了,后勁不足,也有點焦慮,所以這個系列寫得非常亂。沒有之前那個從零 ...

Mon Sep 02 17:04:00 CST 2019 0 613
我是如何學習一個操作系統(六):進程的調度

前言 既然引進了多進程,其實也就是在進程之間來回切換,那么就會有進程之間的調度問題。實則是在可運行進程之間分配有限的處理器時間資源的內核子系統。 幾個簡單的CPU調度算法 First Come, First Served(FCFS) 其實就是一個先進先出隊列了,也就是說先申請 ...

Wed Aug 28 18:25:00 CST 2019 0 445
我是如何學習一個操作系統(二):操作系統的啟動之Bootloader

前言 今天本來的任務看書和把之前的FragileOS整理一下,但是到現在還在摸魚,書也只看一點。后來整理了一下這個系列的思路,原本的目的是對操作系統原理性的學習和對之前一個玩具型操作系統的回顧,就是想對操作系統的知識的輪廓能有一個了解,現在想來想減少對之前系統的回顧 ...

Sun Aug 25 04:35:00 CST 2019 1 1096
我是如何學習一個操作系統(三):操作系統的啟動之保護模式

前言 上一篇其實已經說完了boot的大致工作,但是Linux在最后進入操作系統之前還有一些操作,比如進入保護模式。在我自己的FragileOS里進入保護模式是在引導程序結束后完成的。 實模式到保護模式屬於操作系統一個大坎,所以需要先提一下 從實模式到保護模式 實模式和保護模式都是 ...

Sun Aug 25 20:15:00 CST 2019 0 556
Linux 操作系統開篇!!!

此篇文章主要會帶你介紹 Linux 操作系統,包括 Linux 本身、Linux 如何使用、以及系統調用和 Linux 是如何工作的。 Linux 簡介 UNIX 是一個交互式系統,用於同時處理多進程和多用戶同時在線。為什么要說 UNIX,那是因為 Linux 是由 UNIX 發展而來 ...

Thu Jul 02 20:58:00 CST 2020 2 1861
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM