X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/74926d2db1d9f3228acdfca03013a8ba0ac1d8c0..f044ca812256b421e793c4335ce1ffed74710a70:/README.md diff --git a/README.md b/README.md index f1cf6b6..064c6be 100644 --- a/README.md +++ b/README.md @@ -3,16 +3,24 @@
- ç®ä½ä¸æ | English + ç®ä½ä¸æ | English
# LunaixOS Project LunaixOS - ä¸ä¸ªç®åçï¼è¯¦ç»çï¼POSIXå ¼å®¹çï¼ä½æ¿ï¼ï¼ï¼å¸¦ææµéä¸ªäººé£æ ¼çæä½ç³»ç»ãå¼åè¿ç¨ä»¥è§é¢æç¨å½¢å¼å¨Bilibiliåç°ï¼[ãä»é¶å¼å§èªå¶æä½ç³»ç»ç³»åã](https://space.bilibili.com/12995787/channel/collectiondetail?sid=196337)ã +## ä¸äºå®ç¨èµæº + +妿ææç 读LunaixOSçå æ ¸ä»£ç åå ¶ä¸ç设计ï¼ä»¥ä¸èµæå¯è½ä¼å¯¹æ¤æç¨ã + ++ [å æ ¸èæå åç详ç»å¸å±](docs/img/lunaix-os-mem.png) ++ [LunaixOSå¯å¨æµç¨æ¦è§](docs/img/boot_sequence.jpeg) ++ LunaixOSæ»ä½æ¶ææ¦è§ï¼WIPï¼ + ## å½åè¿åº¦ä»¥åæ¯æçåè½ -该æä½ç³»ç»æ¯æx86æ¶æï¼è¿è¡å¨ä¿æ¤æ¨¡å¼ä¸ï¼éç¨å®å æ ¸æ¶æï¼ç®åä» æ¯æåæ ¸å¿ãå åç»æéç¨ç»å ¸ç3:1ååï¼å³ä½3GiBä¸ºç¨æ·å°å空é´ï¼0x400000 ~ 0xBFFFFFFFï¼ï¼å æ ¸å°å空é´éæ å°è³é«1GiBï¼0xC0000000 ~ 0xFFFFFFFFï¼ãå åç详ç»å¸å±å¯åè[LunaixOSå åå°å¾](docs/img/lunaix-os-mem.png) +该æä½ç³»ç»æ¯æx86æ¶æï¼è¿è¡å¨ä¿æ¤æ¨¡å¼ä¸ï¼éç¨å®å æ ¸æ¶æï¼ç®åä» æ¯æåæ ¸å¿ãæ¶æä¸å æ ¸çè§£è¦å工使£å¨è¿è¡ä¸ã å¨ä¸è¿°å表ä¸ï¼åååºç®åææ¯æçæç¨åè½åç¹æ§ãå表项æç §é¡¹ç®æ¶é´æ³è¿è¡ååºæåã @@ -33,8 +41,10 @@ LunaixOS - ä¸ä¸ªç®åçï¼è¯¦ç»çï¼POSIXå ¼å®¹çï¼ä½æ¿ï¼ï¼ï¼å¸¦æ + èææä»¶ç³»ç» + ISO9660 + åç - + Rock Ridgeæå± (WIP) + + Rock Ridgeæå± + è¿ç¨GDB串å£è°è¯ (COM1@9600Bd) ++ ç¨æ·ç¨åºå è½½ä¸æ§è¡ ++ 卿龿¥ (WIP) å·²ç»æµè¯è¿çç¯å¢ï¼ @@ -53,6 +63,8 @@ LunaixOS - ä¸ä¸ªç®åçï¼è¯¦ç»çï¼POSIXå ¼å®¹çï¼ä½æ¿ï¼ï¼ï¼å¸¦æ ## ç¼è¯ä¸æå»º +### ç¯å¢æå»º + æå»ºè¯¥é¡¹ç®éè¦æ»¡è¶³ä»¥ä¸æ¡ä»¶ï¼ + gcc (ç®æ å¹³å°: i686-elf) @@ -63,6 +75,12 @@ LunaixOS - ä¸ä¸ªç®åçï¼è¯¦ç»çï¼POSIXå ¼å®¹çï¼ä½æ¿ï¼ï¼ï¼å¸¦æ **注æï¼gccä¸è½æ¯æ¬æºèªå¸¦çï¼å¿ é¡»è¦ä»æºç ç¼è¯ï¼å¹¶é ç½®ç®æ å¹³å°ä¸ºï¼`i686-elf`ï¼ä»¥è¿è¡äº¤åç¼è¯ãé ç½®è¿ç¨å¯åè[éå½äºï¼ç¼è¯gccä½ä¸ºäº¤åç¼è¯å¨](#appendix2)ã** +### Dockeréå + +对äºå¼åç¯å¢ï¼æ¬é¡¹ç®ä¹æä¾äºDockeréåå°è£ ãå¼ç®±å³ç¨ï¼æ éé ç½®ï¼é常éåæäººæææ¶è ã详ç»ä½¿ç¨æ¹æ³è¯·è½¬å°ï¼[Lunaix OSDK项ç®](https://github.com/Minep/os-devkit)ã + +### æå»ºé项 + åè¥æ¡ä»¶æ»¡è¶³ï¼é£ä¹å¯ä»¥ç´æ¥æ§è¡`make all`è¿è¡æå»ºï¼å®æåå¯å¨çæç`build`ç®å½ä¸æ¾å°å¯å¼å¯¼çisoã æ¬é¡¹ç®æ¯æçmakeå½ä»¤ï¼ @@ -79,7 +97,7 @@ LunaixOS - ä¸ä¸ªç®åçï¼è¯¦ç»çï¼POSIXå ¼å®¹çï¼ä½æ¿ï¼ï¼ï¼å¸¦æ **â»ï¼ç±äºå¨`-O2`模å¼ä¸ï¼GCCä¼è¿è¡CSEä¼åï¼è¿å¯¼è´LunaixOSä¼åºç°ä¸äºé叏奿ªã离谱çbugï¼ä»èå½±åå°åºæ¬è¿è¡ãå ·ä½åå æå¾ è°æ¥ã** -## è¿è¡ä»¥åIssue +## è¿è¡ï¼åæ¯ä»¥åIssue è¿è¡è¯¥æä½ç³»ç»éè¦ä¸ä¸ªèæç£çéåï¼å¯ä»¥ä½¿ç¨å¦ä¸å½ä»¤å¿«éå建ä¸ä¸ªï¼ @@ -99,7 +117,9 @@ qemu-img create -f vdi machine/disk0.vdi 128M æå¾å¤åæ³å»å建ä¸ä¸ªèæç£çï¼æ¯å¦[qemu-img](https://qemu-project.gitlab.io/qemu/system/images.html)ã -å¨å¤§å¤æ°æ åµä¸ï¼æé½ä¼å°½éä¿è¯æ¬æºè¿è¡æ 误åï¼pushå°ä»åºä¸ãåæ¶ï¼è¯¥ç³»ç»æ¯ç»è¿èææºåçæºæµè¯ã妿åç°å¨ä½¿ç¨`make all`ä¹åï¼èææºä¸è¿è¡æ¥éï¼åä¸è¬æ¯ç¼è¯å¨ä¼åé®é¢ãè¿ä¸ªé®é¢ç¬è ä¸è¬å¾å¿«å°±ä¼ä¿®å¤ï¼å¦æä½ 使ç¨å«ççæ¬çgccï¼ç¬è çæ¬11.2ï¼ï¼åºç°äºæ¤é®é¢ï¼æ¬¢è¿æissueã请åè[éå½3ï¼Issueçæäº¤](#appendix3) +䏻忝ä¸è¬æ¯ç¨³å®çãå 为å¨å¤§å¤æ°æ åµä¸ï¼æé½ä¼å°½éä¿è¯æ¬æºè¿è¡æ 误åï¼pushå°è¯¥åæ¯ä¸ãè³äºå ¶ä»ç忝ï¼åæ¯ä½ä¸ºæ è®°æè æ¯å¼åä¸çåè½ãåè æ è®°ç¨åæ¯ä¸è¬ä¼å¾å¿«å æï¼åè å¼å忝ä¸è½ä¿è¯ç¨³å®æ§ï¼è¿äºåæ¯çä»£ç æå¯è½æ²¡æç»è¿æµè¯ï¼ä½å¯ä»¥ä½ä¸ºLunaixå½åå¼åè¿åº¦çåèã + +è¯¥ç³»ç»æ¯ç»è¿èææºåçæºæµè¯ã妿åç°å¨ä½¿ç¨`make all`ä¹åï¼èææºä¸è¿è¡æ¥éï¼åä¸è¬æ¯ç¼è¯å¨ä¼åé®é¢ãè¿ä¸ªé®é¢ç¬è ä¸è¬å¾å¿«å°±ä¼ä¿®å¤ï¼å¦æä½ 使ç¨å«ççæ¬çgccï¼ç¬è çæ¬11.2ï¼ï¼åºç°äºæ¤é®é¢ï¼æ¬¢è¿æissueã请åè[éå½3ï¼Issueçæäº¤](#appendix3) ä¸é¢ååºä¸äºå¯è½ä¼åºç°çé®é¢ã @@ -144,6 +164,7 @@ qemu-img create -f vdi machine/disk0.vdi 128M + [ECMA-119 (ISO9660)](https://www.ecma-international.org/publications-and-standards/standards/ecma-119/) + Rock Ridge Interchange Protocol (RRIP: IEEE P1282) + System Use Sharing Protocol (SUSP: IEEE P1281) ++ Tool Interface Standard (TIS) Portable Formats Specification (Version 1.1) **å 责声æï¼PCIç¸å ³çæ åæç»è§£éæå½PCI-SIGææãæ¤å¤æä¾ç坿¬ä» ä¾ä¸ªäººå¦ä¹ 使ç¨ãä»»ä½åç¨ç®çé¡»åPCI-SIGè´ä¹°ã** @@ -182,7 +203,7 @@ qemu-img create -f vdi machine/disk0.vdi 128M 1. `_exit(2)` 1. `sigreturn(2)` 1. `sigprocmask(2)` -1. `signal(2)` +1. `sigaction(2)` 1. `kill(2)` 1. `sigpending(2)` 1. `sigsuspend(2)` @@ -190,11 +211,11 @@ qemu-img create -f vdi machine/disk0.vdi 128M 2. `write(2)` 2. `open(2)` 2. `close(2)` -2. `mkdir(2)`â» +2. `mkdir(2)` 2. `lseek(2)` 2. `readdir(2)` -2. `readlink(2)`â» -2. `readlinkat(2)`â» +2. `readlink(2)` +2. `readlinkat(2)` 2. `rmdir(2)`â» 2. `unlink(2)`â» 2. `unlinkat(2)`â» @@ -202,7 +223,7 @@ qemu-img create -f vdi machine/disk0.vdi 128M 2. `fsync(2)`â» 2. `dup(2)` 2. `dup2(2)` -2. `symlink(2)`â» +2. `symlink(2)` 2. `chdir(2)` 2. `fchdir(2)` 2. `getcwd(2)` @@ -218,7 +239,7 @@ qemu-img create -f vdi machine/disk0.vdi 128M 2. `setpgid(2)` 2. `mmap(2)` 2. `munmap(2)` -2. `execve(2)`â» +2. `execve(2)` **LunaixOSèªæ**