From: Minep Date: Thu, 19 May 2022 11:17:17 +0000 (+0100) Subject: update project struct & readme X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/commitdiff_plain/2d9bc8d4f1f4d8b474cc8436674b17542d3f99e7 update project struct & readme --- diff --git a/.gitignore b/.gitignore index 59486ea..7aaf609 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,4 @@ -slide-resources **/.~lock* -workspace -playground/ +workspace/ **.odp + diff --git a/README.md b/README.md index 3d33abd..c13b520 100644 --- a/README.md +++ b/README.md @@ -1,14 +1,44 @@ # LunaixOS Project -《从零开始自制操作系统系列》支持仓库 - -[相关视频](https://space.bilibili.com/12995787/channel/collectiondetail?sid=196337) +LunaixOS - 一个简单的,详细的,POSIX兼容的(但愿!),带有浓重个人风格的操作系统。开发过程以视频教程形式在Bilibili呈现:[《从零开始自制操作系统系列》](https://space.bilibili.com/12995787/channel/collectiondetail?sid=196337)。 ## 目录结构 | | | |-----|------| -| [lunaix-os](lunaix-os/) | LunaixOS项目 | -| `practice-c*` | PPT与补充材料(>= EP5.3) | -| [previous-slides](previous-slides/) | 以前的PPT(< EP5.3) | -| [reference-material](reference-material/)| 参考资料 | +| [lunaix-os](lunaix-os/) | LunaixOS源代码 | +| [slides](slides/) | 视频中所用的幻灯片和补充材料 | +| [reference-material](reference-material/)| 标准,技术文档和参考文献 | + +## 参考教程 + +**没有!!** 本教程以及该操作系统均为原创,没有基于任何市面上现行的操作系统开发教程,且并非是基于任何的开源内核的二次开发。 + +为了制作LunaixOS,作者耗费大量时间和精力钻研技术文档,手册,理论书籍以及现行工业标准,从而尽量保证了知识的一手性。(这样一来,读者和听众们也算是拿到了二手的知识,而不是三手,四手,甚至n手的知识)。 + +大部分的文档和标准可以在上述的[reference-material](reference-material/)中找到。 + +当然,您也可以参考以下列表来了解现阶段的LunaixOS都使用了哪些资料(本列表会随着开发进度更新): + +#### 手册,标准,技术文档 ++ [Intel 64 and IA-32 Architecture Software Developer's Manual (Full Volume Bundle)](https://www.intel.com/content/www/us/en/developer/articles/technical/intel-sdm.html) ++ [ACPI Specification (version 6.4)](https://uefi.org/sites/default/files/resources/ACPI_Spec_6_4_Jan22.pdf) ++ IBM PC/AT Technical Reference ++ IBM VGA/XGA Technical Reference ++ 82093AA I/O Advanced Programmable Controller (IOAPIC) (Datasheet) ++ MC146818A (Datasheet) ++ Intel 500 Series Chipset Family Platform Controller Hub (Datasheet - Volume 2) + +#### 理论书籍 ++ *Computer System - A Programmer's Perspective Third Edition* (Bryant, R & O'Hallaron, D) ++ *Modern Operating System* (Tanenbaum, A) ++ 《汇编语言》(王爽) - 用于入门汇编 ++ 《微机原理与接口技术》 - 用于大致了解x86架构的微机体系(更加细致的了解可以阅读Intel Manual) + +#### 网站 ++ [OSDev](https://wiki.osdev.org/Main_Page) - 杂七杂八的参考,很多过来人的经验。作者主要用于上古资料查询以及收集;技术文献,手册,标准的粗略总结;以及开发环境/工具链的搭建。 ++ [FreeVGA](http://www.osdever.net/FreeVGA/home.htm) - 98年的资源!关于VGA编程技术的宝藏网站。 ++ GNU CC 和 GNU LD 的官方文档。 + +#### 其他 ++ Linux Manual - 用于查询*nix API的一些具体行为。 \ No newline at end of file diff --git a/slides/practice-c0/bochs-build.sh b/slides/c0-workspace/bochs-build.sh similarity index 100% rename from slides/practice-c0/bochs-build.sh rename to slides/c0-workspace/bochs-build.sh diff --git a/slides/practice-c0/gcc-build.sh b/slides/c0-workspace/gcc-build.sh similarity index 100% rename from slides/practice-c0/gcc-build.sh rename to slides/c0-workspace/gcc-build.sh diff --git a/slides/practice-c1/att-and-multiboot.pdf b/slides/c1-asm-and-multiboot/att-and-multiboot.pdf similarity index 100% rename from slides/practice-c1/att-and-multiboot.pdf rename to slides/c1-asm-and-multiboot/att-and-multiboot.pdf diff --git a/slides/practice-c2/addendum.txt b/slides/c2-hello-kernel-world/addendum.txt similarity index 100% rename from slides/practice-c2/addendum.txt rename to slides/c2-hello-kernel-world/addendum.txt diff --git a/slides/practice-c2/hello-kernel-world.pdf b/slides/c2-hello-kernel-world/hello-kernel-world.pdf similarity index 100% rename from slides/practice-c2/hello-kernel-world.pdf rename to slides/c2-hello-kernel-world/hello-kernel-world.pdf diff --git a/slides/practice-c3/mem-in-pmode.pdf b/slides/c3-protected-mode/mem-in-pmode.pdf similarity index 100% rename from slides/practice-c3/mem-in-pmode.pdf rename to slides/c3-protected-mode/mem-in-pmode.pdf diff --git a/slides/practice-c4/install-gdt.pdf b/slides/c4-gdt-setup/install-gdt.pdf similarity index 100% rename from slides/practice-c4/install-gdt.pdf rename to slides/c4-gdt-setup/install-gdt.pdf diff --git a/slides/practice-c5/introduction-to-interrupts.pdf b/slides/c5-intro-to-x86-interrupts/introduction-to-interrupts.pdf similarity index 100% rename from slides/practice-c5/introduction-to-interrupts.pdf rename to slides/c5-intro-to-x86-interrupts/introduction-to-interrupts.pdf diff --git a/slides/practice-c6/mem_planning b/slides/c6-virtual-memory/mem_planning similarity index 100% rename from slides/practice-c6/mem_planning rename to slides/c6-virtual-memory/mem_planning diff --git a/slides/practice-c6/mem_planning.pdf b/slides/c6-virtual-memory/mem_planning.pdf similarity index 100% rename from slides/practice-c6/mem_planning.pdf rename to slides/c6-virtual-memory/mem_planning.pdf diff --git a/slides/practice-c6/useful-links b/slides/c6-virtual-memory/useful-links similarity index 100% rename from slides/practice-c6/useful-links rename to slides/c6-virtual-memory/useful-links diff --git a/slides/practice-c6/virtual-memory.pdf b/slides/c6-virtual-memory/virtual-memory.pdf similarity index 100% rename from slides/practice-c6/virtual-memory.pdf rename to slides/c6-virtual-memory/virtual-memory.pdf diff --git a/slides/c7/malloc.pdf b/slides/c7-malloc/malloc.pdf similarity index 100% rename from slides/c7/malloc.pdf rename to slides/c7-malloc/malloc.pdf diff --git a/slides/c8/acpi.pdf b/slides/c8-acpi-and-apic/acpi.pdf similarity index 100% rename from slides/c8/acpi.pdf rename to slides/c8-acpi-and-apic/acpi.pdf diff --git a/slides/c8/apic-timer.pdf b/slides/c8-acpi-and-apic/apic-timer.pdf similarity index 100% rename from slides/c8/apic-timer.pdf rename to slides/c8-acpi-and-apic/apic-timer.pdf diff --git a/slides/c8/exint-apic.pdf b/slides/c8-acpi-and-apic/exint-apic.pdf similarity index 100% rename from slides/c8/exint-apic.pdf rename to slides/c8-acpi-and-apic/exint-apic.pdf diff --git "a/slides/previous-slides/\344\273\213\347\273\215.pptx" "b/slides/old-slides/\344\273\213\347\273\215.pptx" similarity index 100% rename from "slides/previous-slides/\344\273\213\347\273\215.pptx" rename to "slides/old-slides/\344\273\213\347\273\215.pptx" diff --git "a/slides/previous-slides/\344\277\235\346\212\244\346\250\241\345\274\217.pptx" "b/slides/old-slides/\344\277\235\346\212\244\346\250\241\345\274\217.pptx" similarity index 100% rename from "slides/previous-slides/\344\277\235\346\212\244\346\250\241\345\274\217.pptx" rename to "slides/old-slides/\344\277\235\346\212\244\346\250\241\345\274\217.pptx" diff --git "a/slides/previous-slides/\344\277\235\346\212\244\346\250\241\345\274\217\344\270\213\347\232\204\345\206\205\345\255\230.pptx" "b/slides/old-slides/\344\277\235\346\212\244\346\250\241\345\274\217\344\270\213\347\232\204\345\206\205\345\255\230.pptx" similarity index 100% rename from "slides/previous-slides/\344\277\235\346\212\244\346\250\241\345\274\217\344\270\213\347\232\204\345\206\205\345\255\230.pptx" rename to "slides/old-slides/\344\277\235\346\212\244\346\250\241\345\274\217\344\270\213\347\232\204\345\206\205\345\255\230.pptx" diff --git "a/slides/previous-slides/\345\210\235\350\257\206\346\261\207\347\274\226.pptx" "b/slides/old-slides/\345\210\235\350\257\206\346\261\207\347\274\226.pptx" similarity index 100% rename from "slides/previous-slides/\345\210\235\350\257\206\346\261\207\347\274\226.pptx" rename to "slides/old-slides/\345\210\235\350\257\206\346\261\207\347\274\226.pptx" diff --git "a/slides/previous-slides/\345\256\236\346\250\241\345\274\217\345\257\273\345\235\200.pptx" "b/slides/old-slides/\345\256\236\346\250\241\345\274\217\345\257\273\345\235\200.pptx" similarity index 100% rename from "slides/previous-slides/\345\256\236\346\250\241\345\274\217\345\257\273\345\235\200.pptx" rename to "slides/old-slides/\345\256\236\346\250\241\345\274\217\345\257\273\345\235\200.pptx" diff --git "a/slides/previous-slides/\346\223\215\344\275\234\347\263\273\347\273\237\346\236\266\346\236\204.pptx" "b/slides/old-slides/\346\223\215\344\275\234\347\263\273\347\273\237\346\236\266\346\236\204.pptx" similarity index 100% rename from "slides/previous-slides/\346\223\215\344\275\234\347\263\273\347\273\237\346\236\266\346\236\204.pptx" rename to "slides/old-slides/\346\223\215\344\275\234\347\263\273\347\273\237\346\236\266\346\236\204.pptx" diff --git "a/slides/previous-slides/\346\261\207\347\274\226\347\256\200\344\273\213.pptx" "b/slides/old-slides/\346\261\207\347\274\226\347\256\200\344\273\213.pptx" similarity index 100% rename from "slides/previous-slides/\346\261\207\347\274\226\347\256\200\344\273\213.pptx" rename to "slides/old-slides/\346\261\207\347\274\226\347\256\200\344\273\213.pptx" diff --git "a/slides/previous-slides/\347\243\201\347\233\230\346\223\215\344\275\234.pptx" "b/slides/old-slides/\347\243\201\347\233\230\346\223\215\344\275\234.pptx" similarity index 100% rename from "slides/previous-slides/\347\243\201\347\233\230\346\223\215\344\275\234.pptx" rename to "slides/old-slides/\347\243\201\347\233\230\346\223\215\344\275\234.pptx" diff --git "a/slides/previous-slides/\350\256\241\347\256\227\346\234\272\346\236\266\346\236\204.pptx" "b/slides/old-slides/\350\256\241\347\256\227\346\234\272\346\236\266\346\236\204.pptx" similarity index 100% rename from "slides/previous-slides/\350\256\241\347\256\227\346\234\272\346\236\266\346\236\204.pptx" rename to "slides/old-slides/\350\256\241\347\256\227\346\234\272\346\236\266\346\236\204.pptx"