├── .gitignore ├── .ztr-directory ├── Figures ├── process-ch │ ├── tss.png │ └── Fig21092021_1.png ├── x86-ch │ ├── Fig10062021_0.png │ ├── Fig10062021_1.png │ ├── Fig10062021_2.png │ ├── Fig10062021_3.png │ ├── Fig10062021_4.png │ ├── Fig12062021_1.png │ ├── Fig12062021_2.png │ ├── Fig16062021_0.png │ ├── Fig17062021_0.png │ ├── Fig210621_0.png │ ├── call-conv-1.png │ ├── call-conv-2.png │ ├── abcd-stack-step1.png │ ├── abcd-stack-step2.png │ ├── abcd-stack-step3.png │ ├── memory-physical-view.png │ ├── memory-segmented-view.png │ ├── logical-memory-address-translation.png │ └── drawings │ │ ├── memory-segmented-view.svg.2022_01_31_18_23_30.0.svg │ │ ├── abcd-stack-step2.svg │ │ ├── abcd-stack-step3.svg │ │ ├── abcd-stack-step1.svg │ │ ├── Fig16062021_0.svg │ │ ├── Fig17062021_0.svg │ │ └── memory-segmented-view.svg ├── memory-ch │ ├── Fig091021_0.png │ ├── Fig10102021_0.png │ └── Fig28092021_0.png ├── bootloader-ch │ ├── a-platter.png │ ├── Fig26012022_0.png │ ├── tracks-sectors.png │ ├── platters-arms-heads.png │ └── drawings │ │ ├── platters.svg │ │ └── A Platter.svg ├── progenitor-ch │ ├── Fig21082021_0.png │ ├── Fig27082021_0.png │ ├── Fig27082021_1.png │ └── drawings │ │ └── Fig27082021_1.svg └── filesystem-ch │ ├── delete_file_head_case.png │ ├── 539filesystem_overview.png │ ├── create_file_empty_case.png │ ├── create_file_not_empty_case.png │ ├── delete_file_not_head_case.png │ ├── delete_file_one_file_case.png │ ├── create_file_not_empty_case_step1.png │ ├── create_file_not_empty_case_step2.png │ ├── create_file_not_empty_case_step3.png │ └── delete_file_not_head_but_tail_case.png ├── Final ├── HTML │ ├── book │ │ ├── Figures │ │ │ ├── process-ch │ │ │ │ ├── tss.png │ │ │ │ └── Fig21092021_1.png │ │ │ ├── x86-ch │ │ │ │ ├── Fig210621_0.png │ │ │ │ ├── call-conv-1.png │ │ │ │ ├── call-conv-2.png │ │ │ │ ├── Fig10062021_0.png │ │ │ │ ├── Fig10062021_1.png │ │ │ │ ├── Fig10062021_2.png │ │ │ │ ├── Fig10062021_3.png │ │ │ │ ├── Fig10062021_4.png │ │ │ │ ├── Fig12062021_1.png │ │ │ │ ├── Fig12062021_2.png │ │ │ │ ├── Fig16062021_0.png │ │ │ │ ├── Fig17062021_0.png │ │ │ │ ├── abcd-stack-step1.png │ │ │ │ ├── abcd-stack-step2.png │ │ │ │ ├── abcd-stack-step3.png │ │ │ │ ├── memory-physical-view.png │ │ │ │ ├── memory-segmented-view.png │ │ │ │ └── logical-memory-address-translation.png │ │ │ ├── memory-ch │ │ │ │ ├── Fig091021_0.png │ │ │ │ ├── Fig10102021_0.png │ │ │ │ └── Fig28092021_0.png │ │ │ ├── bootloader-ch │ │ │ │ ├── a-platter.png │ │ │ │ ├── Fig26012022_0.png │ │ │ │ ├── tracks-sectors.png │ │ │ │ └── platters-arms-heads.png │ │ │ ├── progenitor-ch │ │ │ │ ├── Fig21082021_0.png │ │ │ │ ├── Fig27082021_0.png │ │ │ │ └── Fig27082021_1.png │ │ │ └── filesystem-ch │ │ │ │ ├── 539filesystem_overview.png │ │ │ │ ├── create_file_empty_case.png │ │ │ │ ├── delete_file_head_case.png │ │ │ │ ├── delete_file_not_head_case.png │ │ │ │ ├── delete_file_one_file_case.png │ │ │ │ ├── create_file_not_empty_case.png │ │ │ │ ├── create_file_not_empty_case_step1.png │ │ │ │ ├── create_file_not_empty_case_step2.png │ │ │ │ ├── create_file_not_empty_case_step3.png │ │ │ │ └── delete_file_not_head_but_tail_case.png │ │ ├── References.html │ │ ├── index.html │ │ └── Introduction.html │ ├── generate_html.sh │ ├── prepare_final_html.py │ └── templates │ │ └── clean_menu.html └── PDF │ ├── A Journey in Creating an Operating System Kernel: The 539kernel Book.pdf │ ├── tex_setup │ └── listings-setup.tex │ ├── generated_tex │ ├── References.tex │ └── Introduction.tex │ ├── prepare_final_tex.py │ ├── generate_tex.sh │ ├── main.tex │ └── main_printed_edition.tex ├── Progress By PDFs ├── Third Draft │ ├── 0_Introduction_1_16Nov2022.pdf │ ├── 0_Introduction_2_17Nov2022.pdf │ ├── Chapter 6: Filesystems_1_30Sep2022.pdf │ ├── Chapter 6: Filesystems_2_01Oct2022.pdf │ ├── Chapter 6: Filesystems_3_02Oct2022.pdf │ ├── Chapter 6: Filesystems_4_03Oct2022.pdf │ ├── Chapter 6: Filesystems_5_04Oct2022.pdf │ ├── Chapter 6: Filesystems_6_02Nov2022.pdf │ ├── Chapter 6: Filesystems_7_06Nov2022.pdf │ ├── Chapter 6: Filesystems_8_15Nov2022.pdf │ ├── Chapter 7: What's Next?_1_07Nov2022.pdf │ ├── Chapter 7: What's Next?_2_08Nov2022.pdf │ ├── Chapter 7: What's Next?_3_13Nov2022.pdf │ ├── Chapter 7: What's Next?_4_16Nov2022.pdf │ ├── Chapter 4: Process Management_1_27Sep2022.pdf │ ├── Chapter 4: Process Management_2_28Sep2022.pdf │ ├── Chapter 4: Process Management_3_14Nov2022.pdf │ ├── Chapter 5: Memory Management_1_28Sep2022.pdf │ ├── Chapter 5: Memory Management_2_29Sep2022.pdf │ ├── Chapter 5: Memory Management_3_30Sep2022.pdf │ ├── Chapter 5: Memory Management_4_14Nov2022.pdf │ ├── Chapter 3: The Progenitor of 539kernel_1_20Sep2022.pdf │ ├── Chapter 3: The Progenitor of 539kernel_2_21Sep2022.pdf │ ├── Chapter 3: The Progenitor of 539kernel_3_25Sep2022.pdf │ ├── Chapter 3: The Progenitor of 539kernel_4_26Sep2022.pdf │ ├── Chapter 3: The Progenitor of 539kernel_5_27Sep2022.pdf │ ├── Chapter 3: The Progenitor of 539kernel_6_13Nov2022.pdf │ ├── Chapter 3: The Progenitor of 539kernel_7_17Nov2022.pdf │ ├── Chapter 1: Let's Start with the Bootloader_1_23Aug2022.pdf │ ├── Chapter 1: Let's Start with the Bootloader_2_24Aug2022.pdf │ ├── Chapter 1: Let's Start with the Bootloader_3_29Aug2022.pdf │ ├── Chapter 1: Let's Start with the Bootloader_4_06Sep2022.pdf │ ├── Chapter 1: Let's Start with the Bootloader_5_13Nov2022.pdf │ ├── Chapter 2: An Overview of x86 Architecture_1_07Sep2022.pdf │ ├── Chapter 2: An Overview of x86 Architecture_2_08Sep2022.pdf │ ├── Chapter 2: An Overview of x86 Architecture_3_11Sep2022.pdf │ ├── Chapter 2: An Overview of x86 Architecture_4_12Sep2022.pdf │ ├── Chapter 2: An Overview of x86 Architecture_5_13Sep2022.pdf │ ├── Chapter 2: An Overview of x86 Architecture_6_18Sep2022.pdf │ ├── Chapter 2: An Overview of x86 Architecture_7_18Sep2022.pdf │ ├── Chapter 2: An Overview of x86 Architecture_8_19Sep2022.pdf │ └── Chapter 2: An Overview of x86 Architecture_9_20Sep2022.pdf ├── First Draft │ ├── Chapter 9: Filesystems_1_09Nov2021.pdf │ ├── Chapter 9: Filesystems_2_09Nov2021.pdf │ ├── Chapter 9: Filesystems_3_10Nov2021.pdf │ ├── Chapter 9: Filesystems_4_12Nov2021.pdf │ ├── Chapter 9: Filesystems_5_14Nov2021.pdf │ ├── Chapter 9: Filesystems_6_15Nov2021.pdf │ ├── Chapter 9: Filesystems_7_16Nov2021.pdf │ ├── Chapter 9: Filesystems_8_21Nov2021.pdf │ ├── Chapter 9: Filesystems_9_22Nov2021.pdf │ ├── Chapter 9: Filesystems_10_22Nov2021.pdf │ ├── Chapter 9: Filesystems_11_23Nov2021.pdf │ ├── Chapter 9: Filesystems_12_09Jan2022.pdf │ ├── Chapter 9: Filesystems_13_11Jan2022.pdf │ ├── Chapter 4: The Progenitor of 539kernel_10_16Aug2021.pdf │ ├── Chapter 4: The Progenitor of 539kernel_11_17Aug2021.pdf │ ├── Chapter 4: The Progenitor of 539kernel_12_18Aug2021.pdf │ ├── Chapter 4: The Progenitor of 539kernel_13_18Aug2021.pdf │ ├── Chapter 4: The Progenitor of 539kernel_14_18Aug2021.pdf │ ├── Chapter 4: The Progenitor of 539kernel_15_19Aug2021.pdf │ ├── Chapter 4: The Progenitor of 539kernel_16_21Aug2021.pdf │ ├── Chapter 4: The Progenitor of 539kernel_17_26Aug2021.pdf │ ├── Chapter 4: The Progenitor of 539kernel_18_27Aug2021.pdf │ ├── Chapter 4: The Progenitor of 539kernel_19_28Aug2021.pdf │ ├── Chapter 4: The Progenitor of 539kernel_1_12July2021.pdf │ ├── Chapter 4: The Progenitor of 539kernel_20_29Aug2021.pdf │ ├── Chapter 4: The Progenitor of 539kernel_21_30Aug2021.pdf │ ├── Chapter 4: The Progenitor of 539kernel_22_12Sep2021.pdf │ ├── Chapter 4: The Progenitor of 539kernel_23_13Dec2021.pdf │ ├── Chapter 4: The Progenitor of 539kernel_24_14Dec2021.pdf │ ├── Chapter 4: The Progenitor of 539kernel_25_15Dec2021.pdf │ ├── Chapter 4: The Progenitor of 539kernel_26_19Dec2021.pdf │ ├── Chapter 4: The Progenitor of 539kernel_27_20Dec2021.pdf │ ├── Chapter 4: The Progenitor of 539kernel_28_22Dec2021.pdf │ ├── Chapter 4: The Progenitor of 539kernel_2_22July2021.pdf │ ├── Chapter 4: The Progenitor of 539kernel_4_24July2021.pdf │ ├── Chapter 4: The Progenitor of 539kernel_5_10Aug2021.pdf │ ├── Chapter 4: The Progenitor of 539kernel_6_11Aug2021.pdf │ ├── Chapter 4: The Progenitor of 539kernel_7_11Aug2021.pdf │ ├── Chapter 4: The Progenitor of 539kernel_8_15Aug2021.pdf │ ├── Chapter 4: The Progenitor of 539kernel_9_15Aug2021.pdf │ ├── Chapter 5: Process Management in Theory_1_01Sep2021.pdf │ ├── Chapter 5: Process Management in Theory_2_02Sep2021.pdf │ ├── Chapter 5: Process Management in Theory_3_03Sep2021.pdf │ ├── Chapter 5: Process Management in Theory_4_03Sep2021.pdf │ ├── Chapter 1: First Things First: The Basics_1_11July2020.pdf │ ├── Chapter 1: First Things First: The Basics_2_25Nov2021.pdf │ ├── Chapter 1: First Things First: The Basics_3_26Nov2021.pdf │ ├── Chapter 1: First Things First: The Basics_4_27Nov2021.pdf │ ├── Chapter 1: First Things First: The Basics_5_28Nov2021.pdf │ ├── Chapter 4: The Progenitor of 539kernel_3_22July2021_2.pdf │ ├── Chapter 6: Process Management in 539kernel_1_12Sep2021.pdf │ ├── Chapter 6: Process Management in 539kernel_2_13Sep2021.pdf │ ├── Chapter 6: Process Management in 539kernel_3_14Sep2021.pdf │ ├── Chapter 6: Process Management in 539kernel_4_15Sep2021.pdf │ ├── Chapter 6: Process Management in 539kernel_5_16Sep2021.pdf │ ├── Chapter 6: Process Management in 539kernel_6_18Sep2021.pdf │ ├── Chapter 6: Process Management in 539kernel_7_19Sep2021.pdf │ ├── Chapter 6: Process Management in 539kernel_8_20Sep2021.pdf │ ├── Chapter 6: Process Management in 539kernel_9_21Sep2021.pdf │ ├── Chapter 2: Let's Start with the Boot Loader_1_11July2020.pdf │ ├── Chapter 2: Let's Start with the Boot Loader_2_29June2021.pdf │ ├── Chapter 2: Let's Start with the Boot Loader_3_28Nov2021.pdf │ ├── Chapter 2: Let's Start with the Boot Loader_4_29Nov2021.pdf │ ├── Chapter 2: Let's Start with the Boot Loader_5_30Nov2021.pdf │ ├── Chapter 6: Process Management in 539kernel_10_22Sep2021.pdf │ ├── Chapter 6: Process Management in 539kernel_11_23Sep2021.pdf │ ├── Chapter 6: Process Management in 539kernel_12_02Jan2022.pdf │ ├── Chapter 6: Process Management in 539kernel_13_02Jan2022.pdf │ ├── Chapter 6: Process Management in 539kernel_13_06Jan2022.pdf │ ├── Chapter 5: Process Management in Theory and x86_5_04Sep2021.pdf │ ├── Chapter 5: Process Management in Theory and x86_6_05Sep2021.pdf │ ├── Chapter 5: Process Management in Theory and x86_7_25Dec2021.pdf │ ├── Chapter 5: Process Management in Theory and x86_8_02Jan2022.pdf │ ├── Chapter 7: Memory Management in Theory and x86_1_28Sep2021.pdf │ ├── Chapter 7: Memory Management in Theory and x86_2_29Sep2021.pdf │ ├── Chapter 7: Memory Management in Theory and x86_3_30Sep2021.pdf │ ├── Chapter 7: Memory Management in Theory and x86_4_09Oct2021.pdf │ ├── Chapter 7: Memory Management in Theory and x86_5_10Oct2021.pdf │ ├── Chapter 7: Memory Management in Theory and x86_6_11Oct2021.pdf │ ├── Chapter 7: Memory Management in Theory and x86_7_06Jan2022.pdf │ ├── Chapter 8: Paging and Dynamic Memory in 539kernel_1_21Oct2021.pdf │ ├── Chapter 8: Paging and Dynamic Memory in 539kernel_2_23Oct2021.pdf │ ├── Chapter 8: Paging and Dynamic Memory in 539kernel_3_24Oct2021.pdf │ ├── Chapter 8: Paging and Dynamic Memory in 539kernel_4_25Oct2021.pdf │ ├── Chapter 8: Paging and Dynamic Memory in 539kernel_5_26Oct2021.pdf │ ├── Chapter 8: Paging and Dynamic Memory in 539kernel_6_27Oct2021.pdf │ ├── Chapter 8: Paging and Dynamic Memory in 539kernel_7_06Jan2022.pdf │ ├── Chapter 8: Paging and Dynamic Memory in 539kernel_8_08Jan2022.pdf │ ├── Chapter 3: x86 Operating Modes, Segmentation and Interrupts_1_02May2021.pdf │ ├── Chapter 3: x86 Operating Modes, Segmentation and Interrupts_10_21June2021.pdf │ ├── Chapter 3: x86 Operating Modes, Segmentation and Interrupts_14_30Nov2021.pdf │ ├── Chapter 3: x86 Operating Modes, Segmentation and Interrupts_15_01Dec2021.pdf │ ├── Chapter 3: x86 Operating Modes, Segmentation and Interrupts_16_02Dec2021.pdf │ ├── Chapter 3: x86 Operating Modes, Segmentation and Interrupts_17_03Dec2021.pdf │ ├── Chapter 3: x86 Operating Modes, Segmentation and Interrupts_18_04Dec2021.pdf │ ├── Chapter 3: x86 Operating Modes, Segmentation and Interrupts_19_05Dec2021.pdf │ ├── Chapter 3: x86 Operating Modes, Segmentation and Interrupts_20_06Dec2021.pdf │ ├── Chapter 3: x86 Operating Modes, Segmentation and Interrupts_21_12Dec2021.pdf │ ├── Chapter 3: x86 Operating Modes, Segmentation and Interrupts_22_13Dec2021.pdf │ ├── Chapter 3: x86 Operating Modes, Segmentation and Interrupts_2_05June2021.pdf │ ├── Chapter 3: x86 Operating Modes, Segmentation and Interrupts_3_07June2021.pdf │ ├── Chapter 3: x86 Operating Modes, Segmentation and Interrupts_4_10June2021.pdf │ ├── Chapter 3: x86 Operating Modes, Segmentation and Interrupts_5_10June2021_2.pdf │ ├── Chapter 3: x86 Operating Modes, Segmentation and Interrupts_6_12June2021.pdf │ ├── Chapter 3: x86 Operating Modes, Segmentation and Interrupts_7_15June2021.pdf │ ├── Chapter 3: x86 Operating Modes, Segmentation and Interrupts_8_16June2021.pdf │ ├── Chapter 3: x86 Operating Modes, Segmentation and Interrupts_9_17June2021.pdf │ ├── Chapter 3: x86 Operating Modes, Segmentation and Interrupts_11_21June2021_2.pdf │ ├── Chapter 3: x86 Operating Modes, Segmentation and Interrupts_12_21June2021_3.pdf │ └── Chapter 3: x86 Operating Modes, Segmentation and Interrupts_13_22June2021_First_Draft.pdf └── Second Draft │ ├── Chapter 7: What's Next?_21Aug2022.pdf │ ├── Chapter 6: Filesystems_1_17Jan2022.pdf │ ├── Chapter 7: What's Next?_8_14Aug2022.pdf │ ├── Chapter 7: What's Next?_1_13June2022.pdf │ ├── Chapter 7: What's Next?_2_13June2022.pdf │ ├── Chapter 7: What's Next?_3_14June2022.pdf │ ├── Chapter 7: What's Next?_4_15June2022.pdf │ ├── Chapter 7: What's Next?_5_26June2022.pdf │ ├── Chapter 7: What's Next?_6_30June2022.pdf │ ├── Chapter 7: What's Next?_7_05July2022.pdf │ ├── Chapter 5: Memory Management_1_17Jan2022.pdf │ ├── Chapter 5: Memory Management_2_21Jan2022.pdf │ ├── Chapter 5: Memory Management_3_24Jan2022.pdf │ ├── Chapter 4: Process Management_1_17Jan2022.pdf │ ├── Chapter 4: Process Management_2_21Jan2022.pdf │ ├── Chapter 4: Process Management_3_05Apr2022.pdf │ ├── Chapter 3: The Progenitor of 539kernel_1_17Jan2022.pdf │ ├── Chapter 3: The Progenitor of 539kernel_2_18Jan2022.pdf │ ├── Chapter 3: The Progenitor of 539kernel_3_13June2022.pdf │ ├── Chapter 3: The Progenitor of 539kernel_4_14June2022.pdf │ ├── Chapter 1: Let's Start with the Bootloader_1_17Jan2022.pdf │ ├── Chapter 1: Let's Start with the Bootloader_2_26Jan2022.pdf │ ├── Chapter 2: An Overview of x86 Architecture_1_17Jan2022.pdf │ ├── Chapter 2: An Overview of x86 Architecture_2_17Jan2022.pdf │ ├── Chapter 2: An Overview of x86 Architecture_3_17Jan2022.pdf │ ├── Chapter 2: An Overview of x86 Architecture_4_18Jan2022.pdf │ └── Chapter 2: An Overview of x86 Architecture_5_31Jan2022.pdf ├── README.md ├── References.md ├── .vscode └── vscode-kanban.json └── Introduction.md /.gitignore: -------------------------------------------------------------------------------- 1 | /*.pdf 2 | -------------------------------------------------------------------------------- /.ztr-directory: -------------------------------------------------------------------------------- 1 | {"sorting":"name-down","project":null,"icon":null} -------------------------------------------------------------------------------- /Figures/process-ch/tss.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/process-ch/tss.png -------------------------------------------------------------------------------- /Figures/x86-ch/Fig10062021_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/x86-ch/Fig10062021_0.png -------------------------------------------------------------------------------- /Figures/x86-ch/Fig10062021_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/x86-ch/Fig10062021_1.png -------------------------------------------------------------------------------- /Figures/x86-ch/Fig10062021_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/x86-ch/Fig10062021_2.png -------------------------------------------------------------------------------- /Figures/x86-ch/Fig10062021_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/x86-ch/Fig10062021_3.png -------------------------------------------------------------------------------- /Figures/x86-ch/Fig10062021_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/x86-ch/Fig10062021_4.png -------------------------------------------------------------------------------- /Figures/x86-ch/Fig12062021_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/x86-ch/Fig12062021_1.png -------------------------------------------------------------------------------- /Figures/x86-ch/Fig12062021_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/x86-ch/Fig12062021_2.png -------------------------------------------------------------------------------- /Figures/x86-ch/Fig16062021_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/x86-ch/Fig16062021_0.png -------------------------------------------------------------------------------- /Figures/x86-ch/Fig17062021_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/x86-ch/Fig17062021_0.png -------------------------------------------------------------------------------- /Figures/x86-ch/Fig210621_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/x86-ch/Fig210621_0.png -------------------------------------------------------------------------------- /Figures/x86-ch/call-conv-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/x86-ch/call-conv-1.png -------------------------------------------------------------------------------- /Figures/x86-ch/call-conv-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/x86-ch/call-conv-2.png -------------------------------------------------------------------------------- /Figures/memory-ch/Fig091021_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/memory-ch/Fig091021_0.png -------------------------------------------------------------------------------- /Figures/bootloader-ch/a-platter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/bootloader-ch/a-platter.png -------------------------------------------------------------------------------- /Figures/memory-ch/Fig10102021_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/memory-ch/Fig10102021_0.png -------------------------------------------------------------------------------- /Figures/memory-ch/Fig28092021_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/memory-ch/Fig28092021_0.png -------------------------------------------------------------------------------- /Figures/process-ch/Fig21092021_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/process-ch/Fig21092021_1.png -------------------------------------------------------------------------------- /Figures/x86-ch/abcd-stack-step1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/x86-ch/abcd-stack-step1.png -------------------------------------------------------------------------------- /Figures/x86-ch/abcd-stack-step2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/x86-ch/abcd-stack-step2.png -------------------------------------------------------------------------------- /Figures/x86-ch/abcd-stack-step3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/x86-ch/abcd-stack-step3.png -------------------------------------------------------------------------------- /Figures/bootloader-ch/Fig26012022_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/bootloader-ch/Fig26012022_0.png -------------------------------------------------------------------------------- /Figures/progenitor-ch/Fig21082021_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/progenitor-ch/Fig21082021_0.png -------------------------------------------------------------------------------- /Figures/progenitor-ch/Fig27082021_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/progenitor-ch/Fig27082021_0.png -------------------------------------------------------------------------------- /Figures/progenitor-ch/Fig27082021_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/progenitor-ch/Fig27082021_1.png -------------------------------------------------------------------------------- /Figures/x86-ch/memory-physical-view.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/x86-ch/memory-physical-view.png -------------------------------------------------------------------------------- /Figures/bootloader-ch/tracks-sectors.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/bootloader-ch/tracks-sectors.png -------------------------------------------------------------------------------- /Figures/x86-ch/memory-segmented-view.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/x86-ch/memory-segmented-view.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/process-ch/tss.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/process-ch/tss.png -------------------------------------------------------------------------------- /Figures/bootloader-ch/platters-arms-heads.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/bootloader-ch/platters-arms-heads.png -------------------------------------------------------------------------------- /Figures/filesystem-ch/delete_file_head_case.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/filesystem-ch/delete_file_head_case.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/x86-ch/Fig210621_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/x86-ch/Fig210621_0.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/x86-ch/call-conv-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/x86-ch/call-conv-1.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/x86-ch/call-conv-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/x86-ch/call-conv-2.png -------------------------------------------------------------------------------- /Figures/filesystem-ch/539filesystem_overview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/filesystem-ch/539filesystem_overview.png -------------------------------------------------------------------------------- /Figures/filesystem-ch/create_file_empty_case.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/filesystem-ch/create_file_empty_case.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/memory-ch/Fig091021_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/memory-ch/Fig091021_0.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/x86-ch/Fig10062021_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/x86-ch/Fig10062021_0.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/x86-ch/Fig10062021_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/x86-ch/Fig10062021_1.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/x86-ch/Fig10062021_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/x86-ch/Fig10062021_2.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/x86-ch/Fig10062021_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/x86-ch/Fig10062021_3.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/x86-ch/Fig10062021_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/x86-ch/Fig10062021_4.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/x86-ch/Fig12062021_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/x86-ch/Fig12062021_1.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/x86-ch/Fig12062021_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/x86-ch/Fig12062021_2.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/x86-ch/Fig16062021_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/x86-ch/Fig16062021_0.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/x86-ch/Fig17062021_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/x86-ch/Fig17062021_0.png -------------------------------------------------------------------------------- /Figures/filesystem-ch/create_file_not_empty_case.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/filesystem-ch/create_file_not_empty_case.png -------------------------------------------------------------------------------- /Figures/filesystem-ch/delete_file_not_head_case.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/filesystem-ch/delete_file_not_head_case.png -------------------------------------------------------------------------------- /Figures/filesystem-ch/delete_file_one_file_case.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/filesystem-ch/delete_file_one_file_case.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/bootloader-ch/a-platter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/bootloader-ch/a-platter.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/memory-ch/Fig10102021_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/memory-ch/Fig10102021_0.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/memory-ch/Fig28092021_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/memory-ch/Fig28092021_0.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/process-ch/Fig21092021_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/process-ch/Fig21092021_1.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/x86-ch/abcd-stack-step1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/x86-ch/abcd-stack-step1.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/x86-ch/abcd-stack-step2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/x86-ch/abcd-stack-step2.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/x86-ch/abcd-stack-step3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/x86-ch/abcd-stack-step3.png -------------------------------------------------------------------------------- /Figures/x86-ch/logical-memory-address-translation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/x86-ch/logical-memory-address-translation.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/bootloader-ch/Fig26012022_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/bootloader-ch/Fig26012022_0.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/bootloader-ch/tracks-sectors.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/bootloader-ch/tracks-sectors.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/progenitor-ch/Fig21082021_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/progenitor-ch/Fig21082021_0.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/progenitor-ch/Fig27082021_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/progenitor-ch/Fig27082021_0.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/progenitor-ch/Fig27082021_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/progenitor-ch/Fig27082021_1.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/x86-ch/memory-physical-view.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/x86-ch/memory-physical-view.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/x86-ch/memory-segmented-view.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/x86-ch/memory-segmented-view.png -------------------------------------------------------------------------------- /Figures/filesystem-ch/create_file_not_empty_case_step1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/filesystem-ch/create_file_not_empty_case_step1.png -------------------------------------------------------------------------------- /Figures/filesystem-ch/create_file_not_empty_case_step2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/filesystem-ch/create_file_not_empty_case_step2.png -------------------------------------------------------------------------------- /Figures/filesystem-ch/create_file_not_empty_case_step3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/filesystem-ch/create_file_not_empty_case_step3.png -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/0_Introduction_1_16Nov2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/0_Introduction_1_16Nov2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/0_Introduction_2_17Nov2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/0_Introduction_2_17Nov2022.pdf -------------------------------------------------------------------------------- /Figures/filesystem-ch/delete_file_not_head_but_tail_case.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Figures/filesystem-ch/delete_file_not_head_but_tail_case.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/bootloader-ch/platters-arms-heads.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/bootloader-ch/platters-arms-heads.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/filesystem-ch/539filesystem_overview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/filesystem-ch/539filesystem_overview.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/filesystem-ch/create_file_empty_case.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/filesystem-ch/create_file_empty_case.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/filesystem-ch/delete_file_head_case.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/filesystem-ch/delete_file_head_case.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/filesystem-ch/delete_file_not_head_case.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/filesystem-ch/delete_file_not_head_case.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/filesystem-ch/delete_file_one_file_case.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/filesystem-ch/delete_file_one_file_case.png -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 9: Filesystems_1_09Nov2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 9: Filesystems_1_09Nov2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 9: Filesystems_2_09Nov2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 9: Filesystems_2_09Nov2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 9: Filesystems_3_10Nov2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 9: Filesystems_3_10Nov2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 9: Filesystems_4_12Nov2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 9: Filesystems_4_12Nov2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 9: Filesystems_5_14Nov2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 9: Filesystems_5_14Nov2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 9: Filesystems_6_15Nov2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 9: Filesystems_6_15Nov2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 9: Filesystems_7_16Nov2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 9: Filesystems_7_16Nov2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 9: Filesystems_8_21Nov2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 9: Filesystems_8_21Nov2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 9: Filesystems_9_22Nov2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 9: Filesystems_9_22Nov2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Second Draft/Chapter 7: What's Next?_21Aug2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Second Draft/Chapter 7: What's Next?_21Aug2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 6: Filesystems_1_30Sep2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 6: Filesystems_1_30Sep2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 6: Filesystems_2_01Oct2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 6: Filesystems_2_01Oct2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 6: Filesystems_3_02Oct2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 6: Filesystems_3_02Oct2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 6: Filesystems_4_03Oct2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 6: Filesystems_4_03Oct2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 6: Filesystems_5_04Oct2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 6: Filesystems_5_04Oct2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 6: Filesystems_6_02Nov2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 6: Filesystems_6_02Nov2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 6: Filesystems_7_06Nov2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 6: Filesystems_7_06Nov2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 6: Filesystems_8_15Nov2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 6: Filesystems_8_15Nov2022.pdf -------------------------------------------------------------------------------- /Final/HTML/book/Figures/filesystem-ch/create_file_not_empty_case.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/filesystem-ch/create_file_not_empty_case.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/x86-ch/logical-memory-address-translation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/x86-ch/logical-memory-address-translation.png -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 9: Filesystems_10_22Nov2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 9: Filesystems_10_22Nov2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 9: Filesystems_11_23Nov2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 9: Filesystems_11_23Nov2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 9: Filesystems_12_09Jan2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 9: Filesystems_12_09Jan2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 9: Filesystems_13_11Jan2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 9: Filesystems_13_11Jan2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Second Draft/Chapter 6: Filesystems_1_17Jan2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Second Draft/Chapter 6: Filesystems_1_17Jan2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Second Draft/Chapter 7: What's Next?_8_14Aug2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Second Draft/Chapter 7: What's Next?_8_14Aug2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 7: What's Next?_1_07Nov2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 7: What's Next?_1_07Nov2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 7: What's Next?_2_08Nov2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 7: What's Next?_2_08Nov2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 7: What's Next?_3_13Nov2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 7: What's Next?_3_13Nov2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 7: What's Next?_4_16Nov2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 7: What's Next?_4_16Nov2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Second Draft/Chapter 7: What's Next?_1_13June2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Second Draft/Chapter 7: What's Next?_1_13June2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Second Draft/Chapter 7: What's Next?_2_13June2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Second Draft/Chapter 7: What's Next?_2_13June2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Second Draft/Chapter 7: What's Next?_3_14June2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Second Draft/Chapter 7: What's Next?_3_14June2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Second Draft/Chapter 7: What's Next?_4_15June2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Second Draft/Chapter 7: What's Next?_4_15June2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Second Draft/Chapter 7: What's Next?_5_26June2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Second Draft/Chapter 7: What's Next?_5_26June2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Second Draft/Chapter 7: What's Next?_6_30June2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Second Draft/Chapter 7: What's Next?_6_30June2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Second Draft/Chapter 7: What's Next?_7_05July2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Second Draft/Chapter 7: What's Next?_7_05July2022.pdf -------------------------------------------------------------------------------- /Final/HTML/book/Figures/filesystem-ch/create_file_not_empty_case_step1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/filesystem-ch/create_file_not_empty_case_step1.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/filesystem-ch/create_file_not_empty_case_step2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/filesystem-ch/create_file_not_empty_case_step2.png -------------------------------------------------------------------------------- /Final/HTML/book/Figures/filesystem-ch/create_file_not_empty_case_step3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/filesystem-ch/create_file_not_empty_case_step3.png -------------------------------------------------------------------------------- /Progress By PDFs/Second Draft/Chapter 5: Memory Management_1_17Jan2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Second Draft/Chapter 5: Memory Management_1_17Jan2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Second Draft/Chapter 5: Memory Management_2_21Jan2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Second Draft/Chapter 5: Memory Management_2_21Jan2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Second Draft/Chapter 5: Memory Management_3_24Jan2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Second Draft/Chapter 5: Memory Management_3_24Jan2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 4: Process Management_1_27Sep2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 4: Process Management_1_27Sep2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 4: Process Management_2_28Sep2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 4: Process Management_2_28Sep2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 4: Process Management_3_14Nov2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 4: Process Management_3_14Nov2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 5: Memory Management_1_28Sep2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 5: Memory Management_1_28Sep2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 5: Memory Management_2_29Sep2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 5: Memory Management_2_29Sep2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 5: Memory Management_3_30Sep2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 5: Memory Management_3_30Sep2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 5: Memory Management_4_14Nov2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 5: Memory Management_4_14Nov2022.pdf -------------------------------------------------------------------------------- /Final/HTML/book/Figures/filesystem-ch/delete_file_not_head_but_tail_case.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/HTML/book/Figures/filesystem-ch/delete_file_not_head_but_tail_case.png -------------------------------------------------------------------------------- /Progress By PDFs/Second Draft/Chapter 4: Process Management_1_17Jan2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Second Draft/Chapter 4: Process Management_1_17Jan2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Second Draft/Chapter 4: Process Management_2_21Jan2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Second Draft/Chapter 4: Process Management_2_21Jan2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Second Draft/Chapter 4: Process Management_3_05Apr2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Second Draft/Chapter 4: Process Management_3_05Apr2022.pdf -------------------------------------------------------------------------------- /Final/PDF/A Journey in Creating an Operating System Kernel: The 539kernel Book.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Final/PDF/A Journey in Creating an Operating System Kernel: The 539kernel Book.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_10_16Aug2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_10_16Aug2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_11_17Aug2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_11_17Aug2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_12_18Aug2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_12_18Aug2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_13_18Aug2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_13_18Aug2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_14_18Aug2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_14_18Aug2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_15_19Aug2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_15_19Aug2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_16_21Aug2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_16_21Aug2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_17_26Aug2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_17_26Aug2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_18_27Aug2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_18_27Aug2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_19_28Aug2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_19_28Aug2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_1_12July2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_1_12July2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_20_29Aug2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_20_29Aug2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_21_30Aug2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_21_30Aug2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_22_12Sep2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_22_12Sep2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_23_13Dec2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_23_13Dec2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_24_14Dec2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_24_14Dec2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_25_15Dec2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_25_15Dec2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_26_19Dec2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_26_19Dec2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_27_20Dec2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_27_20Dec2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_28_22Dec2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_28_22Dec2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_2_22July2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_2_22July2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_4_24July2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_4_24July2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_5_10Aug2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_5_10Aug2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_6_11Aug2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_6_11Aug2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_7_11Aug2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_7_11Aug2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_8_15Aug2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_8_15Aug2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_9_15Aug2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_9_15Aug2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 5: Process Management in Theory_1_01Sep2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 5: Process Management in Theory_1_01Sep2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 5: Process Management in Theory_2_02Sep2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 5: Process Management in Theory_2_02Sep2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 5: Process Management in Theory_3_03Sep2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 5: Process Management in Theory_3_03Sep2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 5: Process Management in Theory_4_03Sep2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 5: Process Management in Theory_4_03Sep2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Second Draft/Chapter 3: The Progenitor of 539kernel_1_17Jan2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Second Draft/Chapter 3: The Progenitor of 539kernel_1_17Jan2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Second Draft/Chapter 3: The Progenitor of 539kernel_2_18Jan2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Second Draft/Chapter 3: The Progenitor of 539kernel_2_18Jan2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 3: The Progenitor of 539kernel_1_20Sep2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 3: The Progenitor of 539kernel_1_20Sep2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 3: The Progenitor of 539kernel_2_21Sep2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 3: The Progenitor of 539kernel_2_21Sep2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 3: The Progenitor of 539kernel_3_25Sep2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 3: The Progenitor of 539kernel_3_25Sep2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 3: The Progenitor of 539kernel_4_26Sep2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 3: The Progenitor of 539kernel_4_26Sep2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 3: The Progenitor of 539kernel_5_27Sep2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 3: The Progenitor of 539kernel_5_27Sep2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 3: The Progenitor of 539kernel_6_13Nov2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 3: The Progenitor of 539kernel_6_13Nov2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 3: The Progenitor of 539kernel_7_17Nov2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 3: The Progenitor of 539kernel_7_17Nov2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 1: First Things First: The Basics_1_11July2020.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 1: First Things First: The Basics_1_11July2020.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 1: First Things First: The Basics_2_25Nov2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 1: First Things First: The Basics_2_25Nov2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 1: First Things First: The Basics_3_26Nov2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 1: First Things First: The Basics_3_26Nov2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 1: First Things First: The Basics_4_27Nov2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 1: First Things First: The Basics_4_27Nov2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 1: First Things First: The Basics_5_28Nov2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 1: First Things First: The Basics_5_28Nov2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_3_22July2021_2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 4: The Progenitor of 539kernel_3_22July2021_2.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 6: Process Management in 539kernel_1_12Sep2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 6: Process Management in 539kernel_1_12Sep2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 6: Process Management in 539kernel_2_13Sep2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 6: Process Management in 539kernel_2_13Sep2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 6: Process Management in 539kernel_3_14Sep2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 6: Process Management in 539kernel_3_14Sep2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 6: Process Management in 539kernel_4_15Sep2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 6: Process Management in 539kernel_4_15Sep2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 6: Process Management in 539kernel_5_16Sep2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 6: Process Management in 539kernel_5_16Sep2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 6: Process Management in 539kernel_6_18Sep2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 6: Process Management in 539kernel_6_18Sep2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 6: Process Management in 539kernel_7_19Sep2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 6: Process Management in 539kernel_7_19Sep2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 6: Process Management in 539kernel_8_20Sep2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 6: Process Management in 539kernel_8_20Sep2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 6: Process Management in 539kernel_9_21Sep2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 6: Process Management in 539kernel_9_21Sep2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Second Draft/Chapter 3: The Progenitor of 539kernel_3_13June2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Second Draft/Chapter 3: The Progenitor of 539kernel_3_13June2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Second Draft/Chapter 3: The Progenitor of 539kernel_4_14June2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Second Draft/Chapter 3: The Progenitor of 539kernel_4_14June2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 1: Let's Start with the Bootloader_1_23Aug2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 1: Let's Start with the Bootloader_1_23Aug2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 1: Let's Start with the Bootloader_2_24Aug2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 1: Let's Start with the Bootloader_2_24Aug2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 1: Let's Start with the Bootloader_3_29Aug2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 1: Let's Start with the Bootloader_3_29Aug2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 1: Let's Start with the Bootloader_4_06Sep2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 1: Let's Start with the Bootloader_4_06Sep2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 1: Let's Start with the Bootloader_5_13Nov2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 1: Let's Start with the Bootloader_5_13Nov2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 2: An Overview of x86 Architecture_1_07Sep2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 2: An Overview of x86 Architecture_1_07Sep2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 2: An Overview of x86 Architecture_2_08Sep2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 2: An Overview of x86 Architecture_2_08Sep2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 2: An Overview of x86 Architecture_3_11Sep2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 2: An Overview of x86 Architecture_3_11Sep2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 2: An Overview of x86 Architecture_4_12Sep2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 2: An Overview of x86 Architecture_4_12Sep2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 2: An Overview of x86 Architecture_5_13Sep2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 2: An Overview of x86 Architecture_5_13Sep2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 2: An Overview of x86 Architecture_6_18Sep2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 2: An Overview of x86 Architecture_6_18Sep2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 2: An Overview of x86 Architecture_7_18Sep2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 2: An Overview of x86 Architecture_7_18Sep2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 2: An Overview of x86 Architecture_8_19Sep2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 2: An Overview of x86 Architecture_8_19Sep2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Third Draft/Chapter 2: An Overview of x86 Architecture_9_20Sep2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Third Draft/Chapter 2: An Overview of x86 Architecture_9_20Sep2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 2: Let's Start with the Boot Loader_1_11July2020.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 2: Let's Start with the Boot Loader_1_11July2020.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 2: Let's Start with the Boot Loader_2_29June2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 2: Let's Start with the Boot Loader_2_29June2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 2: Let's Start with the Boot Loader_3_28Nov2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 2: Let's Start with the Boot Loader_3_28Nov2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 2: Let's Start with the Boot Loader_4_29Nov2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 2: Let's Start with the Boot Loader_4_29Nov2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 2: Let's Start with the Boot Loader_5_30Nov2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 2: Let's Start with the Boot Loader_5_30Nov2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 6: Process Management in 539kernel_10_22Sep2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 6: Process Management in 539kernel_10_22Sep2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 6: Process Management in 539kernel_11_23Sep2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 6: Process Management in 539kernel_11_23Sep2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 6: Process Management in 539kernel_12_02Jan2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 6: Process Management in 539kernel_12_02Jan2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 6: Process Management in 539kernel_13_02Jan2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 6: Process Management in 539kernel_13_02Jan2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 6: Process Management in 539kernel_13_06Jan2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 6: Process Management in 539kernel_13_06Jan2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Second Draft/Chapter 1: Let's Start with the Bootloader_1_17Jan2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Second Draft/Chapter 1: Let's Start with the Bootloader_1_17Jan2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Second Draft/Chapter 1: Let's Start with the Bootloader_2_26Jan2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Second Draft/Chapter 1: Let's Start with the Bootloader_2_26Jan2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Second Draft/Chapter 2: An Overview of x86 Architecture_1_17Jan2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Second Draft/Chapter 2: An Overview of x86 Architecture_1_17Jan2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Second Draft/Chapter 2: An Overview of x86 Architecture_2_17Jan2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Second Draft/Chapter 2: An Overview of x86 Architecture_2_17Jan2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Second Draft/Chapter 2: An Overview of x86 Architecture_3_17Jan2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Second Draft/Chapter 2: An Overview of x86 Architecture_3_17Jan2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Second Draft/Chapter 2: An Overview of x86 Architecture_4_18Jan2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Second Draft/Chapter 2: An Overview of x86 Architecture_4_18Jan2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/Second Draft/Chapter 2: An Overview of x86 Architecture_5_31Jan2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/Second Draft/Chapter 2: An Overview of x86 Architecture_5_31Jan2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 5: Process Management in Theory and x86_5_04Sep2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 5: Process Management in Theory and x86_5_04Sep2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 5: Process Management in Theory and x86_6_05Sep2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 5: Process Management in Theory and x86_6_05Sep2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 5: Process Management in Theory and x86_7_25Dec2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 5: Process Management in Theory and x86_7_25Dec2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 5: Process Management in Theory and x86_8_02Jan2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 5: Process Management in Theory and x86_8_02Jan2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 7: Memory Management in Theory and x86_1_28Sep2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 7: Memory Management in Theory and x86_1_28Sep2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 7: Memory Management in Theory and x86_2_29Sep2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 7: Memory Management in Theory and x86_2_29Sep2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 7: Memory Management in Theory and x86_3_30Sep2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 7: Memory Management in Theory and x86_3_30Sep2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 7: Memory Management in Theory and x86_4_09Oct2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 7: Memory Management in Theory and x86_4_09Oct2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 7: Memory Management in Theory and x86_5_10Oct2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 7: Memory Management in Theory and x86_5_10Oct2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 7: Memory Management in Theory and x86_6_11Oct2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 7: Memory Management in Theory and x86_6_11Oct2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 7: Memory Management in Theory and x86_7_06Jan2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 7: Memory Management in Theory and x86_7_06Jan2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 8: Paging and Dynamic Memory in 539kernel_1_21Oct2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 8: Paging and Dynamic Memory in 539kernel_1_21Oct2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 8: Paging and Dynamic Memory in 539kernel_2_23Oct2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 8: Paging and Dynamic Memory in 539kernel_2_23Oct2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 8: Paging and Dynamic Memory in 539kernel_3_24Oct2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 8: Paging and Dynamic Memory in 539kernel_3_24Oct2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 8: Paging and Dynamic Memory in 539kernel_4_25Oct2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 8: Paging and Dynamic Memory in 539kernel_4_25Oct2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 8: Paging and Dynamic Memory in 539kernel_5_26Oct2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 8: Paging and Dynamic Memory in 539kernel_5_26Oct2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 8: Paging and Dynamic Memory in 539kernel_6_27Oct2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 8: Paging and Dynamic Memory in 539kernel_6_27Oct2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 8: Paging and Dynamic Memory in 539kernel_7_06Jan2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 8: Paging and Dynamic Memory in 539kernel_7_06Jan2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 8: Paging and Dynamic Memory in 539kernel_8_08Jan2022.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 8: Paging and Dynamic Memory in 539kernel_8_08Jan2022.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_1_02May2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_1_02May2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_10_21June2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_10_21June2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_14_30Nov2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_14_30Nov2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_15_01Dec2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_15_01Dec2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_16_02Dec2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_16_02Dec2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_17_03Dec2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_17_03Dec2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_18_04Dec2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_18_04Dec2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_19_05Dec2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_19_05Dec2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_20_06Dec2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_20_06Dec2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_21_12Dec2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_21_12Dec2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_22_13Dec2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_22_13Dec2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_2_05June2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_2_05June2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_3_07June2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_3_07June2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_4_10June2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_4_10June2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_5_10June2021_2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_5_10June2021_2.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_6_12June2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_6_12June2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_7_15June2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_7_15June2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_8_16June2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_8_16June2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_9_17June2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_9_17June2021.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_11_21June2021_2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_11_21June2021_2.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_12_21June2021_3.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_12_21June2021_3.pdf -------------------------------------------------------------------------------- /Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_13_22June2021_First_Draft.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MaaSTaaR/539kernel-book/HEAD/Progress By PDFs/First Draft/Chapter 3: x86 Operating Modes, Segmentation and Interrupts_13_22June2021_First_Draft.pdf -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # A Journey in Creating an Operating System Kernel: The 539kernel Book 2 | 3 | A book that teaches the reader how to create an operating system's kernel called [539kernel](https://github.com/MaaSTaaR/539kernel). You can read the book freely in . 4 | 5 | [539kernel](https://github.com/MaaSTaaR/539kernel) is a simple x86 32bit educational kernel which has been written especially for this book. 6 | 7 | Authored By: Mohammed Q. Hussain 8 | -------------------------------------------------------------------------------- /Final/PDF/tex_setup/listings-setup.tex: -------------------------------------------------------------------------------- 1 | %texsetup% 2 | % Source: https://tex.stackexchange.com/a/179956 3 | \usepackage{xcolor} 4 | 5 | \lstset{ 6 | basicstyle=\ttfamily, 7 | numbers=left, 8 | keywordstyle=\color[rgb]{0.13,0.29,0.53}\bfseries, 9 | stringstyle=\color[rgb]{0.31,0.60,0.02}, 10 | commentstyle=\color[rgb]{0.56,0.35,0.01}\itshape, 11 | numberstyle=\footnotesize, 12 | stepnumber=1, 13 | numbersep=5pt, 14 | backgroundcolor=\color[RGB]{248,248,248}, 15 | showspaces=false, 16 | showstringspaces=false, 17 | showtabs=false, 18 | tabsize=2, 19 | captionpos=b, 20 | breaklines=true, 21 | breakatwhitespace=true, 22 | breakautoindent=true, 23 | escapeinside={\%*}{*)}, 24 | linewidth=\textwidth, 25 | basewidth=0.5em, 26 | } 27 | %/texsetup% 28 | -------------------------------------------------------------------------------- /References.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: 'A Journey in Creating an Operating System Kernel: The 539kernel Book' 3 | author: 'Mohammed Q. Hussain' 4 | --- 5 | 6 | # References 7 | 8 | * GNU Make Manual: 9 | * Netwide Assembler Manual: 10 | * Write Great Code Volume 1: Understanding the Machine. 11 | * Intel's x86 Manual. 12 | * Operating Systems Development - 8259A PIC Microcontroller by Mike, 2007 13 | * Program and Data Representation: Textbook by Aaron Bloomfield 14 | * Wikipedia: x86 calling conventions 15 | * Wikipedia: Interrupt request (PC architecture) 16 | -------------------------------------------------------------------------------- /.vscode/vscode-kanban.json: -------------------------------------------------------------------------------- 1 | { 2 | "done": [ 3 | { 4 | "assignedTo": { 5 | "name": "maastaar" 6 | }, 7 | "creation_time": "2020-03-09T16:53:16.321Z", 8 | "id": "1", 9 | "references": [], 10 | "title": "CH2: von Neumann architecture Footnote on the section \" Jump and Return Unconditionally\"" 11 | }, 12 | { 13 | "assignedTo": { 14 | "name": "maastaar" 15 | }, 16 | "creation_time": "2020-03-09T16:53:39.693Z", 17 | "id": "2", 18 | "references": [], 19 | "title": "The meaning of unconditionally" 20 | }, 21 | { 22 | "assignedTo": { 23 | "name": "maastaar" 24 | }, 25 | "creation_time": "2020-03-10T14:19:03.102Z", 26 | "id": "3", 27 | "references": [], 28 | "title": "Reading on \"Conditional Jump\" and \"Compare\"" 29 | } 30 | ], 31 | "in-progress": [], 32 | "testing": [], 33 | "todo": [] 34 | } -------------------------------------------------------------------------------- /Final/PDF/generated_tex/References.tex: -------------------------------------------------------------------------------- 1 | \chapter*{References}\label{references} 2 | 3 | \begin{itemize} 4 | \tightlist 5 | \item 6 | GNU Make Manual: 7 | \url{https://www.gnu.org/software/make/manual/make.html} 8 | \item 9 | Netwide Assembler Manual: 10 | \url{https://www.nasm.us/xdoc/2.14.02/html/nasmdoc0.html} 11 | \item 12 | Write Great Code Volume 1: Understanding the Machine. 13 | \item 14 | Intel's x86 Manual. 15 | \item 16 | Operating Systems Development - 8259A PIC Microcontroller by Mike, 17 | 2007 \url{http://brokenthorn.com/Resources/OSDevPic.html} 18 | \item 19 | Program and Data Representation: Textbook by Aaron Bloomfield 20 | \url{https://aaronbloomfield.github.io/pdr/book/index.html} 21 | \item 22 | Wikipedia: x86 calling conventions 23 | \url{https://en.wikipedia.org/wiki/X86_calling_conventions} 24 | \item 25 | Wikipedia: Interrupt request (PC architecture) 26 | \url{https://en.wikipedia.org/wiki/Interrupt_request_(PC_architecture)} 27 | \end{itemize} 28 | -------------------------------------------------------------------------------- /Final/PDF/prepare_final_tex.py: -------------------------------------------------------------------------------- 1 | import os; 2 | import re; 3 | import subprocess; 4 | 5 | texDir = 'generated_tex'; 6 | 7 | def getFullPath( filename ): 8 | return texDir + '/' + filename; 9 | 10 | def breakLongListInline( chapterText ): 11 | return chapterText.replace( 'lstinline!print_character_S_with_BIOS!', 'texttt{print\_character\_S\_with\_BIOS}' ).replace( 'lstinline!wait_drive_until_ready!', 'texttt{wait\_drive\_until\_ready}' ).replace( 'lstinline!FILENAME_LENGTH!', 'texttt{FILENAME\_LENGTH}' ).replace( 'lstinline!tell_pic_master_where_pic_slave_is_connected!', 'texttt{tell\_pic\_master\_where\_pic\_slave\_is\_connected}' ); 12 | 13 | # ... # 14 | 15 | print( 'Generating Tex Files' ); 16 | 17 | for currFilename in os.listdir( texDir ): 18 | if currFilename.endswith( '.tex' ): 19 | print( 'Processing ' + currFilename ); 20 | 21 | currFile = open( getFullPath( currFilename ), 'r' ); 22 | chapterText = currFile.read(); 23 | currFile.close(); 24 | 25 | finalTex = breakLongListInline( chapterText ); 26 | 27 | currFile = open( getFullPath( currFilename ), 'w' ); 28 | currFile.write( finalTex ); 29 | currFile.close(); 30 | 31 | -------------------------------------------------------------------------------- /Final/PDF/generate_tex.sh: -------------------------------------------------------------------------------- 1 | pandoc --top-level-division=chapter --listings --filter pandoc-fignos -t latex ../../Introduction.md | sed 's/\\chapter/\\chapter\*/' | sed 's/\\section/\\section\*/' > generated_tex/Introduction.tex 2 | pandoc --top-level-division=chapter --listings --filter pandoc-fignos -o generated_tex/Chapter\ 1\:\ Let\'s\ Start\ with\ the\ Bootloader.tex ../../Chapter\ 1\:\ Let\'s\ Start\ with\ the\ Bootloader.md 3 | pandoc --top-level-division=chapter --listings --filter pandoc-fignos -o generated_tex/Chapter\ 2\:\ An\ Overview\ of\ x86\ Architecture.tex ../../Chapter\ 2\:\ An\ Overview\ of\ x86\ Architecture.md 4 | pandoc --top-level-division=chapter --listings --filter pandoc-fignos -o generated_tex/Chapter\ 3\:\ The\ Progenitor\ of\ 539kernel.tex ../../Chapter\ 3\:\ The\ Progenitor\ of\ 539kernel.md 5 | pandoc --top-level-division=chapter --listings --filter pandoc-fignos -o generated_tex/Chapter\ 4\:\ Process\ Management.tex ../../Chapter\ 4\:\ Process\ Management.md 6 | pandoc --top-level-division=chapter --listings --filter pandoc-fignos -o generated_tex/Chapter\ 5\:\ Memory\ Management.tex ../../Chapter\ 5\:\ Memory\ Management.md 7 | pandoc --top-level-division=chapter --listings --filter pandoc-fignos -o generated_tex/Chapter\ 6\:\ Filesystems.tex ../../Chapter\ 6\:\ Filesystems.md 8 | pandoc --top-level-division=chapter --listings --filter pandoc-fignos -o generated_tex/Chapter\ 7\:\ What\'s\ Next\?.tex ../../Chapter\ 7\:\ What\'s\ Next\?.md 9 | pandoc --top-level-division=chapter --listings --filter pandoc-fignos -t latex ../../References.md | sed 's/\\chapter/\\chapter\*/' | sed 's/\\section/\\section\*/' > generated_tex/References.tex 10 | 11 | # To Generate PDFs Directly from Pandoc. 12 | # pandoc --filter pandoc-fignos --listings -H tex_setup/listings-setup.tex -o Introduction.tex ../../Introduction.md 13 | -------------------------------------------------------------------------------- /Final/PDF/main.tex: -------------------------------------------------------------------------------- 1 | \documentclass[11pt,a4paper,footinclude=true,headinclude=true,oneside]{scrbook} % KOMA-Script book 2 | \usepackage[T1]{fontenc} 3 | \usepackage{lipsum} 4 | \usepackage[linedheaders,manychapters,pdfspacing]{classicthesis} % ,manychapters 5 | %\usepackage[osf]{libertine} 6 | \usepackage{amsthm} 7 | 8 | % [MQH] 9 | \usepackage{graphicx} 10 | \usepackage{longtable} 11 | \usepackage{listings} 12 | % Source: https://tex.stackexchange.com/a/179956 13 | \usepackage{xcolor} 14 | \lstset{ 15 | basicstyle=\ttfamily, 16 | numbers=left, 17 | keywordstyle=\color[rgb]{0.13,0.29,0.53}\bfseries, 18 | stringstyle=\color[rgb]{0.31,0.60,0.02}, 19 | commentstyle=\color[rgb]{0.56,0.35,0.01}\itshape, 20 | numberstyle=\footnotesize, 21 | stepnumber=1, 22 | numbersep=5pt, 23 | backgroundcolor=\color[RGB]{248,248,248}, 24 | showspaces=false, 25 | showstringspaces=false, 26 | showtabs=false, 27 | tabsize=2, 28 | captionpos=b, 29 | breaklines=true, 30 | breakatwhitespace=true, 31 | breakautoindent=true, 32 | escapeinside={\%*}{*)}, 33 | linewidth=\textwidth, 34 | basewidth=0.5em, 35 | } 36 | 37 | \begin{document} 38 | 39 | \title{A Journey in Creating an Operating System Kernel} 40 | \subtitle{The 539kernel Book} 41 | \author{Mohammed Q. Hussain} 42 | \date{November 2022} 43 | 44 | \maketitle 45 | \tableofcontents 46 | \include{generated_tex/Introduction} 47 | \include{generated_tex/Chapter 1: Let's Start with the Bootloader} 48 | \include{generated_tex/Chapter 2: An Overview of x86 Architecture} 49 | \include{generated_tex/Chapter 3: The Progenitor of 539kernel} 50 | \include{generated_tex/Chapter 4: Process Management} 51 | \include{generated_tex/Chapter 5: Memory Management} 52 | \include{generated_tex/Chapter 6: Filesystems} 53 | \include{generated_tex/Chapter 7: What's Next?} 54 | \include{generated_tex/References} 55 | \end{document} 56 | -------------------------------------------------------------------------------- /Final/HTML/generate_html.sh: -------------------------------------------------------------------------------- 1 | pandoc --top-level-division=chapter --listings --filter pandoc-fignos -H ../PDF/tex_setup/listings-setup.tex -o book/Introduction.html ../../Introduction.md --template=./templates/clean_menu.html 2 | pandoc --top-level-division=chapter --listings --filter pandoc-fignos -H ../PDF/tex_setup/listings-setup.tex -o book/Chapter\ 1\:\ Let\'s\ Start\ with\ the\ Bootloader.html ../../Chapter\ 1\:\ Let\'s\ Start\ with\ the\ Bootloader.md --template=./templates/clean_menu.html --number-offset=0 3 | pandoc --top-level-division=chapter --listings --filter pandoc-fignos -H ../PDF/tex_setup/listings-setup.tex -o book/Chapter\ 2\:\ An\ Overview\ of\ x86\ Architecture.html ../../Chapter\ 2\:\ An\ Overview\ of\ x86\ Architecture.md --template=./templates/clean_menu.html --number-offset=1 4 | pandoc --top-level-division=chapter --listings --filter pandoc-fignos -H ../PDF/tex_setup/listings-setup.tex -o book/Chapter\ 3\:\ The\ Progenitor\ of\ 539kernel.html ../../Chapter\ 3\:\ The\ Progenitor\ of\ 539kernel.md --template=./templates/clean_menu.html --number-offset=2 5 | pandoc --top-level-division=chapter --listings --filter pandoc-fignos -H ../PDF/tex_setup/listings-setup.tex -o book/Chapter\ 4\:\ Process\ Management.html ../../Chapter\ 4\:\ Process\ Management.md --template=./templates/clean_menu.html --number-offset=3 6 | pandoc --top-level-division=chapter --listings --filter pandoc-fignos -H ../PDF/tex_setup/listings-setup.tex -o book/Chapter\ 5\:\ Memory\ Management.html ../../Chapter\ 5\:\ Memory\ Management.md --template=./templates/clean_menu.html --number-offset=4 7 | pandoc --top-level-division=chapter --listings --filter pandoc-fignos -H ../PDF/tex_setup/listings-setup.tex -o book/Chapter\ 6\:\ Filesystems.html ../../Chapter\ 6\:\ Filesystems.md --template=./templates/clean_menu.html --number-offset=5 8 | pandoc --top-level-division=chapter --listings --filter pandoc-fignos -H ../PDF/tex_setup/listings-setup.tex -o book/Chapter\ 7\:\ What\'s\ Next\?.html ../../Chapter\ 7\:\ What\'s\ Next\?.md --template=./templates/clean_menu.html --number-offset=6 9 | pandoc --top-level-division=chapter --listings --filter pandoc-fignos -H ../PDF/tex_setup/listings-setup.tex -o book/References.html ../../References.md --template=./templates/clean_menu.html 10 | -------------------------------------------------------------------------------- /Final/HTML/prepare_final_html.py: -------------------------------------------------------------------------------- 1 | import os; 2 | import re; 3 | import subprocess; 4 | 5 | htmlDir = 'book'; 6 | 7 | def getFullPath( filename ): 8 | return htmlDir + '/' + filename; 9 | 10 | def rename(): 11 | print( 'Rename Started' ); 12 | for currFilename in os.listdir( htmlDir ): 13 | if currFilename.endswith( '.html' ): 14 | os.rename( getFullPath( currFilename ), getFullPath( currFilename.replace( ' ', '_' ).replace( '?', '' ) ) ); 15 | print( 'Rename Done' ); 16 | 17 | def removeTexSetup( chapterText ): 18 | print( ' removeTexSetup' ); 19 | 20 | splittedText = chapterText.split( '' ); 21 | 22 | newHead = re.sub( r"(\s*)%texsetup%(\s|.)*%/texsetup%", '', splittedText[ 0 ], 0, re.MULTILINE ); 23 | 24 | newText = newHead + '\n' + splittedText[ 1 ]; 25 | 26 | return newText; 27 | 28 | def setTitle( chapterText, filename ): 29 | print( ' setTitle' ); 30 | 31 | chapterTitle = filename.replace( '.html', '' ).replace( '_', ' ' ); 32 | 33 | return chapterText.replace( '', '' + chapterTitle + '' ); 34 | 35 | def formatChapterHead( chapterText ): 36 | print( ' formatChapterHead' ); 37 | 38 | matches = re.search( r"

(.*)Chapter(.*):(.*)

", chapterText ); 39 | 40 | if matches: 41 | originalHead = matches.group( 0 ); 42 | 43 | headWithNoChapterWord = re.sub( r"Chapter(.*): ", '', originalHead, 1 ); 44 | chapterId = re.search( r"

(.*)', '

Chapter ' ).replace( '', '.' ); 47 | 48 | return chapterText.replace( originalHead, formattedHead ); 49 | 50 | return chapterText; 51 | 52 | # ... # 53 | 54 | print( 'Generating HTML Files' ); 55 | subprocess.call( [ 'sh', './generate_html.sh' ] ); 56 | 57 | rename(); 58 | 59 | for currFilename in os.listdir( htmlDir ): 60 | if currFilename.endswith( '.html' ) and currFilename != 'index.html': 61 | print( 'Processing ' + currFilename ); 62 | 63 | currFile = open( getFullPath( currFilename ), 'r' ); 64 | chapterText = currFile.read(); 65 | currFile.close(); 66 | 67 | finalHTML = formatChapterHead( setTitle( removeTexSetup( chapterText ), currFilename ) ); 68 | 69 | currFile = open( getFullPath( currFilename ), 'w' ); 70 | currFile.write( finalHTML ); 71 | currFile.close(); 72 | 73 | -------------------------------------------------------------------------------- /Final/PDF/main_printed_edition.tex: -------------------------------------------------------------------------------- 1 | \documentclass[11pt,a4paper,footinclude=true,headinclude=true,oneside]{scrbook} % KOMA-Script book 2 | 3 | \usepackage[T1]{fontenc} 4 | \usepackage{lipsum} 5 | \usepackage[linedheaders,manychapters,pdfspacing]{classicthesis} % ,manychapters 6 | %\usepackage[osf]{libertine} 7 | \usepackage{amsthm} 8 | 9 | % [MQH] 10 | \usepackage[paperwidth=6.3in, paperheight=9.45in]{geometry} 11 | \usepackage[htt]{hyphenat} 12 | % ,bindingoffset=0.5in, left=1.5cm, right=2cm 13 | 14 | \clearscrheadfoot 15 | \ohead{\rightmark} 16 | \cfoot[\pagemark]{\pagemark} 17 | 18 | %left=5em, right=6em 19 | \usepackage{graphicx} 20 | \usepackage{longtable} 21 | \usepackage{listings} 22 | % Source: https://tex.stackexchange.com/a/179956 23 | \usepackage{xcolor} 24 | \lstset{ 25 | basicstyle=\ttfamily, 26 | numbers=left, 27 | keywordstyle=\color[rgb]{0.13,0.29,0.53}\bfseries, 28 | stringstyle=\color[rgb]{0.31,0.60,0.02}, 29 | commentstyle=\color[rgb]{0.56,0.35,0.01}\itshape, 30 | numberstyle=\footnotesize, 31 | stepnumber=1, 32 | numbersep=5pt, 33 | backgroundcolor=\color[RGB]{248,248,248}, 34 | showspaces=false, 35 | showstringspaces=false, 36 | showtabs=false, 37 | tabsize=2, 38 | captionpos=b, 39 | breaklines=true, 40 | breakatwhitespace=true, 41 | breakautoindent=true, 42 | escapeinside={\%*}{*)}, 43 | linewidth=\textwidth, 44 | basewidth=0.5em, 45 | } 46 | 47 | \begin{document} 48 | \title{A Journey in Creating an Operating System Kernel} 49 | \subtitle{The 539kernel Book} 50 | \author{Mohammed Q. Hussain} 51 | \date{November 2022} 52 | 53 | \maketitle 54 | 55 | \newpage 56 | \thispagestyle{plain} 57 | \mbox{} 58 | 59 | \tableofcontents 60 | 61 | \newpage 62 | \thispagestyle{plain} 63 | \mbox{} 64 | 65 | \include{generated_tex/Introduction} 66 | 67 | \newpage 68 | \thispagestyle{plain} 69 | \mbox{} 70 | 71 | \include{generated_tex/Chapter 1: Let's Start with the Bootloader} 72 | 73 | \newpage 74 | \thispagestyle{plain} 75 | \mbox{} 76 | 77 | \include{generated_tex/Chapter 2: An Overview of x86 Architecture} 78 | \include{generated_tex/Chapter 3: The Progenitor of 539kernel} 79 | \include{generated_tex/Chapter 4: Process Management} 80 | \include{generated_tex/Chapter 5: Memory Management} 81 | \include{generated_tex/Chapter 6: Filesystems} 82 | \include{generated_tex/Chapter 7: What's Next?} 83 | 84 | \newpage 85 | \thispagestyle{plain} 86 | \mbox{} 87 | 88 | \include{generated_tex/References} 89 | \end{document} 90 | -------------------------------------------------------------------------------- /Figures/x86-ch/drawings/memory-segmented-view.svg.2022_01_31_18_23_30.0.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 39 | 41 | 42 | 44 | image/svg+xml 45 | 47 | 48 | 49 | 50 | 51 | 55 | 62 | Main Memory 73 | 80 | Code Segment 1 91 | 92 | 93 | -------------------------------------------------------------------------------- /Figures/bootloader-ch/drawings/platters.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 39 | 41 | 42 | 44 | image/svg+xml 45 | 47 | 48 | 49 | 50 | 51 | 55 | 60 | 65 | 70 | 76 | 77 | 78 | -------------------------------------------------------------------------------- /Introduction.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: 'A Journey in Creating an Operating System Kernel: The 539kernel Book' 3 | author: 'Mohammed Q. Hussain' 4 | --- 5 | 6 | # Introduction 7 | In about 17 years ago writing an operating system's kernel was kind of a dream for me. Before 2 years of that time, I just started my journey with the wonderful world of computer science through learning programming for web which made me curious about the different aspects of computers and of course one of the most interesting of those aspects is operating systems. At that time I wasn't technically ready yet to write an operating system kernel, so, a number of experiments to achieve that goal failed. After these trials, many years passed, I learned a lot through these years and tackled a number of other system software (such as compilers, virtual machines and assemblers) to learn how they work and even implemented some too simple versions of them to make sure that I've understood their concepts. In 2017 I asked myself, why don't I implement a simple operating system kernel and achieve one of the oldest things on my to-do list which was a kind of dream for me? "Fine, but how to make it a useful project for people?" that's what I told myself as a response. Going through this journey was interesting for me to learn more, but I also wanted to make something that's useful for someone other than me, and at that moment the idea of this book was born. At that time, I was working on my Master's degree, so I didn't have enough time to work on this project and that made me defer the work on it until the late of 2019 and after a lot of torture (sorry! dedication?) this book is finally here. 8 | 9 | In this book we are going to start a journey of creating a kernel I called 539kernel which is a really simple x86 32-bit operating system kernel that supports multitasking, paging and has its own filesystem. I wrote 539kernel for this book and made it as simple as possible, so, anyone who would like to learn about operating system kernels can use 539kernel to start. Due to that, some of you may notice that some part of 539kernel code is written in a naive way, while writing 539kernel I focused on the readability and easiness of the code instead of the efficiency. Through this journey you are going to learn a lot about the basics of operating systems, their kernels and of course the platform that is going to run 539kernel that we will create together, I mean by the platform the processors that use x86 architecture. For those who don't know, an operating system kernel is the core of any operating system and its job to manage the computer hardware and resources, distribute these resources for the running programs and provide many services for those programs to make it easy for them the work with these resources and hardware. 10 | 11 | This book requires a knowledge in `C` programming language, you know; the basics, its syntax, defining variables and functions, pointers and so on, you don't need to be a master on `C`'s libraries for example. The compiler used to create and test 539kernel is GNU GCC `7.5`. Also, assembly programming language will be used, but the book doesn't require a knowledge in this language, every aspect you need to learn about x86 assembly in order to create 539kernel will be explained in this book. We will use `NASM` assembler for our assembly code and we will use GNU Make to build our kernel, also, QEMU or Bochs will be used as an emulator to test our work through this journey. All these three tools will be discussed in chapter \ref{ch-bootloader} but you need to set them up in your machine. The full source code of 539kernel is available in GitHub (), there are two directories in the root directory, `src/` is one that contains the last version of 539kernel, that is, when you finish this book, the code that you will get will be same as the one in `src/`. The directory `evolution_by_versions/` contains the version of 539kernel while it's under development through the different chapters in this book. Finally, I hope that you enjoy reading this book and I would be more than happy to hear your feedback and to help me in spreading this book which is available freely in (). 12 | 13 | ## Acknowledgment 14 | I would like to thank Dr. Hussain Almohri ^[] for his kind acceptance to read this book before its release and for his encouragement, feedback and discussions that really helped me. Also, I would like to thank my friends Anas Nayfah, Ahmad Yassen, DJ., Naser Alajmi and my dearest niece Eylaf for their kind support. 15 | 16 | 17 | -------------- 18 | Mohammed Q. Hussain () 19 | 20 | 16 November 2022 21 | 22 | Kuwait 23 | -------------------------------------------------------------------------------- /Figures/bootloader-ch/drawings/A Platter.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 22 | 24 | 42 | 44 | 45 | 47 | image/svg+xml 48 | 50 | 51 | 52 | 53 | 54 | 58 | 63 | 68 | (A) 79 | (B) 90 | 91 | 92 | -------------------------------------------------------------------------------- /Final/PDF/generated_tex/Introduction.tex: -------------------------------------------------------------------------------- 1 | \chapter*{Introduction}\label{introduction} 2 | 3 | In about 17 years ago writing an operating system's kernel was kind of a 4 | dream for me. Before 2 years of that time I just started my journey with 5 | the wonderful world of computer science through learning programming for 6 | web which made me curios about the different aspects of computers and of 7 | course one of the most interesting of those aspects is operating 8 | systems. At that time I wasn't technically ready yet to write an 9 | operating system kernel, so, a number of experiments to achieve that 10 | goal failed. After these trials, many years passed, I learned a lot 11 | through these years and tackled a number of other system software (such 12 | as compilers, virtual machines and assemblers) to learn how they work 13 | and even implemented some too simple versions of them to make sure that 14 | I've understood their concepts. In 2017 I asked myself, why don't I 15 | implement a simple operating system kernel and achieve one of the oldest 16 | thing in my to-do list which was a kind of dream for me? ``Fine, but how 17 | to make it a useful project for people?'' that's what I told myself as a 18 | response. Going through this journey was interesting for me to learn 19 | more, but I also wanted to make something that's useful for someone 20 | other than me, and at that moment the idea of this book was born. At 21 | that time, I was working on my Master's degree, so I didn't have enough 22 | time to work on this project and that's made me to defer the work on it 23 | until the late of 2019 and after a lot of torture (sorry! dedication?) 24 | this book is finally here. 25 | 26 | In this book we are going to start a journey of creating a kernel I 27 | called 539kernel which is a really simple x86 32-bit operating system 28 | kernel that supports multitasking, paging and has its own filesystem. I 29 | wrote 539kernel for this book and made it as simple as possible, so, 30 | anyone would like to learn about operating system kernels can use 31 | 539kernel to start. Due to that, some of you may notice that some part 32 | of 539kernel code is written in a naive way, while writing 539kernel I 33 | focused on the readability and easiness of the code instead of the 34 | efficiency. Through this journey your are going to learn a lot about the 35 | basics of operating systems, their kernels and of course the platform 36 | that is going to run 539kernel that we will create together, I mean by 37 | the platform the processors that use x86 architecture. For those who 38 | don't know, an operating system kernel is the core of any operating 39 | system and its job is managing the computer hardware and resources, 40 | distribute these resources for the running programs and provide many 41 | services for those programs to make it easy for them the work with these 42 | resources and hardware. 43 | 44 | This book requires a knowledge in \lstinline!C! programming language, 45 | you know; the basics, its syntax, defining variable and functions, 46 | pointers and so on, you don't need to be a master on \lstinline!C!'s 47 | libraries for example. The compiler used to create and test 539kernel is 48 | GNU GCC \lstinline!7.5!. Also, assembly programming language will be 49 | used, but the book doesn't require a knowledge in this language, every 50 | aspect you need to learn about x86 assembly in order to create 539kernel 51 | will be explained in this book. We will use \lstinline!NASM! assembler 52 | for our assembly code and we will use GNU Make to build our kernel, 53 | also, QEMU or Bochs will be used as an emulator to test our work through 54 | this journey. All these three tools will be discussed in chapter 55 | \ref{ch-bootloader} but you need to set them up in your machine. The 56 | full source code of 539kernel is available in GitHub 57 | (\url{https://github.com/MaaSTaaR/539kernel}), there are two directories 58 | in the root directory, \lstinline!src/! is one that contains the last 59 | version of 539kernel, that is, when you finish this book, the code that 60 | you will get will be same as the one in \lstinline!src/!. The directory 61 | \lstinline!evolution_by_versions/! contains the version of 539kernel 62 | while it's under development through the different chapters in this 63 | book. Finally, I hope that you enjoy reading this book and I would be 64 | more than happy to hear your feedback and to help me in spreading this 65 | book which is available freely in (\url{http://539kernel.com}). 66 | 67 | \section*{Acknowledgment}\label{acknowledgment} 68 | 69 | I would like to thank Dr.~Hussain Almohri \footnote{\url{https://almohri.io/}} 70 | for his kind acceptance to read this book before its release and for his 71 | encouragement, feedback and discussions that really helped me. Also, I 72 | would like to thank my friends Anas Nayfah, Ahmad Yassen, DJ., Naser 73 | Alajmi and my dearest niece Eylaf for their kind support. 74 | 75 | \begin{center}\rule{0.5\linewidth}{\linethickness}\end{center} 76 | 77 | Mohammed Q. Hussain 78 | (\href{mailto:mqh@539kernel.com}{\nolinkurl{mqh@539kernel.com}}) 79 | 80 | 16 November 2022 81 | 82 | Kuwait 83 | -------------------------------------------------------------------------------- /Figures/x86-ch/drawings/abcd-stack-step2.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 22 | 24 | 42 | 44 | 45 | 47 | image/svg+xml 48 | 50 | 51 | 52 | 53 | 54 | 58 | 65 | 72 | B 83 | A 94 | 101 | C 112 | 113 | 114 | -------------------------------------------------------------------------------- /Final/HTML/templates/clean_menu.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | $if(date-meta)$ 41 | 42 | $endif$ 43 | 44 | 45 | 46 | $if(quotes)$ 47 | 48 | $endif$ 49 | $if(highlighting-css)$ 50 | 53 | $endif$ 54 | $for(css)$ 55 | 56 | $endfor$ 57 | $if(math)$ 58 | $math$ 59 | $endif$ 60 | $for(header-includes)$ 61 | $header-includes$ 62 | $endfor$ 63 | 64 | 70 | 71 | 72 | 73 | 74 | 75 | $if(title)$ 76 | 94 |
95 | $else$ 96 |
97 | $endif$ 98 |
99 | $if(toc)$ 100 |
101 |
102 | 103 | $toc$ 104 | 105 |
106 |
107 | $endif$ 108 |
109 | 110 | $if(abstract)$ 111 |

$abstract-title$

112 | $abstract$ 113 | $endif$ 114 | 115 | $for(include-before)$ 116 | $include-before$ 117 | $endfor$ 118 | $body$ 119 | $for(include-after)$ 120 | $include-after$ 121 | $endfor$ 122 |
123 |
124 |
125 | 126 | 127 | 128 | 129 | 130 | -------------------------------------------------------------------------------- /Final/HTML/book/References.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | References 41 | 42 | 43 | 44 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 69 |
70 |
71 |
72 | 73 | 74 |

References

75 | 85 |
86 |
87 |
88 | 89 | 90 | 91 | 92 | 93 | -------------------------------------------------------------------------------- /Figures/x86-ch/drawings/abcd-stack-step3.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 22 | 24 | 42 | 44 | 45 | 47 | image/svg+xml 48 | 50 | 51 | 52 | 53 | 54 | 58 | 65 | 72 | B 83 | A 94 | 101 | C 112 | 119 | D 130 | 131 | 132 | -------------------------------------------------------------------------------- /Final/HTML/book/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | A Journey in Creating an Operating System Kernel: The 539kernel Book 50 | 51 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 79 |
80 |
81 |

A Journey in Creating an Operating System Kernel

82 |

The 539kernel Book

83 | 84 |

Mohammed Q. Hussain

85 |
86 | 87 | 108 |
109 | 110 | 111 | 112 | 113 | 114 | -------------------------------------------------------------------------------- /Figures/x86-ch/drawings/abcd-stack-step1.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 22 | 24 | 32 | 38 | 39 | 43 | 51 | 57 | 58 | 62 | 70 | 76 | 77 | 81 | 89 | 95 | 96 | 100 | 108 | 114 | 115 | 119 | 127 | 133 | 134 | 138 | 139 | 157 | 159 | 160 | 162 | image/svg+xml 163 | 165 | 166 | 167 | 168 | 169 | 173 | 180 | 187 | B 198 | A 209 | 210 | 211 | -------------------------------------------------------------------------------- /Figures/x86-ch/drawings/Fig16062021_0.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 22 | 24 | 28 | 29 | 47 | 49 | 50 | 52 | image/svg+xml 53 | 55 | 56 | 57 | 58 | 59 | 63 | 66 | 73 | 80 | 81 | GDT Limit 92 | GDT Base Address 103 | Bit 114 | 0 125 | Bit 136 | 15 147 | 159 | Size = 16 bits 170 | 182 | Size = 32 bits 193 | 194 | 195 | -------------------------------------------------------------------------------- /Final/HTML/book/Introduction.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | Introduction 41 | 42 | 43 | 44 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 69 |
70 |
71 |
72 | 73 | 74 |

Introduction

75 |

In about 17 years ago writing an operating system's kernel was kind of a dream for me. Before 2 years of that time I just started my journey with the wonderful world of computer science through learning programming for web which made me curios about the different aspects of computers and of course one of the most interesting of those aspects is operating systems. At that time I wasn't technically ready yet to write an operating system kernel, so, a number of experiments to achieve that goal failed. After these trials, many years passed, I learned a lot through these years and tackled a number of other system software (such as compilers, virtual machines and assemblers) to learn how they work and even implemented some too simple versions of them to make sure that I've understand their concepts. In 2017 I asked myself, why don't I implement a simple operating system kernel and achieve one of the oldest thing in my to-do list which was a kind of dream for me? "Fine, but how to make it a useful project for people?" that's what I told myself as a response. Going through this journey was interesting for me to learn more, but I also wanted to make something that's useful for someone other than me, and at that moment the idea of this book was born. At that time, I was working on my Master's degree, so I didn't have enough time to work on this project and that's made me to defer the work on it until the late of 2019 and after a lot of torture (sorry! dedication?) this book is finally here.

76 |

In this book we are going to start a journey of creating a kernel I called 539kernel which is a really simple x86 32-bit operating system kernel that supports multitasking, paging and has its own filesystem. I wrote 539kernel for this book and made it as simple as possible, so, anyone would like to learn about operating system kernels can use 539kernel to start. Due to that, some of you may notice that some part of 539kernel code is written in a naive way, while writing 539kernel I focused on the readability and easiness of the code instead of the efficiency. Through this journey your are going to learn a lot about the basics of operating systems, their kernels and of course the platform that is going to run 539kernel that we will create together, I mean by the platform the processors that use x86 architecture. For those who don't know, an operating system kernel is the core of any operating system and its job is managing the computer hardware and resources, distribute these resources for the running programs and provide many services for those programs to make it easy for them the work with these resources and hardware.

77 |

This book requires a knowledge in C programming language, you know; the basics, its syntax, defining variable and functions, pointers and so on, you don't need to be a master on C's libraries for example. The compiler used to create and test 539kernel is GNU GCC 7.5. Also, assembly programming language will be used, but the book doesn't require a knowledge in this language, every aspect you need to learn about x86 assembly in order to create 539kernel will be explained in this book. We will use NASM assembler for our assembly code and we will use GNU Make to build our kernel, also, QEMU or Bochs will be used as an emulator to test our work through this journey. All these three tools will be discussed in chapter but you need to set them up in your machine. The full source code of 539kernel is available in GitHub (https://github.com/MaaSTaaR/539kernel), there are two directories in the root directory, src/ is one that contains the last version of 539kernel, that is, when you finish this book, the code that you will get will be same as the one in src/. The directory evolution_by_versions/ contains the version of 539kernel while it's under development through the different chapters in this book. Finally, I hope that you enjoy reading this book and I would be more than happy to hear your feedback and to help me in spreading this book which is available freely in (http://539kernel.com).

78 |

Acknowledgment

79 |

I would like to thank Dr. Hussain Almohri 1 for his kind acceptance to read this book before its release and for his encouragement, feedback and discussions that really helped me. Also, I would like to thank my friends Anas Nayfah, Ahmad Yassen, DJ., Naser Alajmi and my dearest niece Eylaf for their kind support.

80 |
81 |

Mohammed Q. Hussain (mqh@539kernel.com)

82 |

16 November 2022

83 |

Kuwait

84 |
85 |
86 |
    87 |
  1. https://almohri.io/

  2. 88 |
89 |
90 |
91 |
92 |
93 | 94 | 95 | 96 | 97 | 98 | -------------------------------------------------------------------------------- /Figures/x86-ch/drawings/Fig17062021_0.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 22 | 24 | 28 | 32 | 33 | 51 | 53 | 54 | 56 | image/svg+xml 57 | 59 | 60 | 61 | 62 | 63 | 67 | 74 | 81 | RPL 92 | Index 103 | 106 | Bit 117 | 0 128 | 129 | 141 | Size = 16 bits 152 | TI 163 | 170 | 173 | Bit 184 | 2 195 | 196 | 199 | Bit 210 | 3 221 | 222 | Bit 233 | 15 244 | 245 | 246 | -------------------------------------------------------------------------------- /Figures/progenitor-ch/drawings/Fig27082021_1.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 39 | 41 | 42 | 44 | image/svg+xml 45 | 47 | 48 | 49 | 50 | 51 | 55 | 62 | Bit 73 | 80 | 87 | 94 | Reserved. Must be 0. 105 | 0 116 | Bit 127 | 1 138 | Bit 149 | 2 160 | Bit 171 | 3 182 | Bit 193 | 7 204 | 205 | 206 | -------------------------------------------------------------------------------- /Figures/x86-ch/drawings/memory-segmented-view.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 22 | 24 | 42 | 44 | 45 | 47 | image/svg+xml 48 | 50 | 51 | 52 | 53 | 54 | 58 | 65 | Main Memory 76 | 83 | Code Segment 1 94 | 101 | Data Segment 2 112 | 119 | Data Segment 1 130 | 137 | Code Segment 2 148 | 155 | Stack Segment 1 166 | 173 | Stack Segment n 184 | 191 | Code Segment n 202 | 209 | Data Segment n 220 | 221 | 222 | --------------------------------------------------------------------------------