
ãã®å°ããªã¡ã¢ã䜿çšããŠãæ£ããèµ·åããå Žåãç¬èªã®OSãéçºããã®ã«ç¹ã«è€éãªããšã¯äœããªãããšã瀺ããããšæããŸãã ã«ãã¿ãŒã®äžã«ã¯ãOSããŒãããäœæããããã®çãäžè¬çãªã¬ã€ãããããŸãã
å§ããªãæ¹æ³

ããŒãããŒããŒãäœæããå¿ èŠã¯ãããŸããã è³¢æãªäººã ã¯ã Multiboot Specificationãæãã€ãããããäœã§ãããã©ã®ããã«äœ¿çšãããã詳现ã«å®è£ ããã³èª¬æããŸããã ç§ã¯èªåèªèº«ãç¹°ãè¿ããããããŸããããã ãããæ©èœããç掻ã楜ã«ãããããŠé©çšãããªããã°ãªããªããšèšãã ãã§ãã ã¡ãªã¿ã«ãä»æ§ã¯å®å šã«èªãã»ããè¯ãã§ããããã¯å°ãããäŸããå«ãŸããŠããŸãã
OSãã¢ã»ã³ãã©ãŒã§å®å šã«èšè¿°ããå¿ èŠã¯ãããŸããã ããã¯ããã»ã©æªãã¯ãããŸãããããããéã§ããé«éã§å°ããªããã°ã©ã ã¯åžžã«é«ãè©äŸ¡ãããŸãã ãã®èšèªãéåžžã«å€§ããªéçºåªåãå¿ èŠãšãããšããçç±ã ãã§ãã¢ã»ã³ãã©ãŒã®äœ¿çšã¯ç±æã®äœäžã«ã€ãªããããã®çµæãOSãœãŒã¹ãé·ãç®±ã«æã蟌ãããšã«ãªããŸãã
ã«ã¹ã¿ã ãã©ã³ãããããªã¡ã¢ãªã«ããŒãããŠããã·ã¢èªã§äœããåºåããå¿ èŠã¯ãããŸããã ããããã¯æå³ããããŸããã è±èªã䜿çšããåŸã§ãã©ã³ããå€æŽãããŸãŸã«ããŠããã¡ã€ã«ã·ã¹ãã ãã©ã€ããŒãä»ããŠããŒããã©ã€ãããããŠã³ããŒãããããšã¯ãã¯ããã«ç°¡åã§æ®éçã§ãïŒåæã«ãéå§ããã ãã§ã¯ãªããè¿œå ã®ã€ã³ã»ã³ãã£ãããããŸãïŒã
æºåãã

æåã®æè²ããã°ã©ã ã®åŸãäž»ãªè³ªåã決å®ããå¿ èŠããããŸãã
- ã¿ãŒã²ããã¢ãŒããã¯ãã£-x86ïŒãªã¢ã«/ä¿è·/ãã³ã°ã¢ãŒãïŒãPowerPCãARMã...
- ã«ãŒãã«/ OSã¢ãŒããã¯ãã£-ã¢ããªã¹ãã¢ãžã¥ã©ãŒã¢ããªã¹ããã€ã¯ãã«ãŒãã«ããšããœã³ã¢ãç°ãªããã€ããªãã
- èšèªãšãã®ã³ã³ãã€ã©-CãC ++ã...
- ã«ãŒãã«ãã¡ã€ã«åœ¢åŒ-elfãa.outãcoffãbinaryã...
- éçºç°å¢ïŒã¯ãããããéèŠãªåœ¹å²ãæãããŸãïŒ-IDEãvimãemacsã...
ããã«ãéžæããåéããã³ä»¥äžã®åéã«å¿ããŠç¥èãæ·±ããå¿ èŠããããŸãã
- ãããªã¡ã¢ãªãšããã«åãçµã-æåããä»äºã®èšŒæãšããŠã®çµè«ãå¿ èŠã§ã
- HALïŒããŒããŠã§ã¢ã¢ãã¹ãã©ã¯ã·ã§ã³ã¬ã€ã€ãŒïŒ-ããã€ãã®ããŒããŠã§ã¢ã¢ãŒããã¯ãã£ã®ãµããŒããèšç»ãããŠããªãå Žåã§ããããã»ã¹ãã»ããã©ãªã©ã®æœè±¡çãªãã®ã®å®è£ ããã«ãŒãã«ã®æäžäœéšåãæ£ããåé¢ããããšã¯èšç»ãããŠããŸããã
- ã¡ã¢ãªç®¡ç-ç©çããã³ä»®æ³
- ããã©ãŒãã³ã¹ç®¡ç-ããã»ã¹ãšãããŒããããã®èšç»
- ããã€ã¹ç®¡ç-ãã©ã€ããŒ
- ä»®æ³ãã¡ã€ã«ã·ã¹ãã -ããŸããŸãªFSã®ã³ã³ãã³ãã«åäžã®ã€ã³ã¿ãŒãã§ãŒã¹ãæäŸãã
- APIïŒã¢ããªã±ãŒã·ã§ã³ããã°ã©ãã³ã°ã€ã³ã¿ãŒãã§ã€ã¹ïŒ-ã¢ããªã±ãŒã·ã§ã³ãã«ãŒãã«ã«æ£ç¢ºã«ã¢ã¯ã»ã¹ããæ¹æ³
- IPCïŒããã»ã¹ééä¿¡ïŒ-é ããæ©ãããããã»ã¹ã¯çžäºäœçšããå¿ èŠããããŸã
ããŒã«

- makeãcmakeãªã©ã®æšæºããŒã«ã¯ãã¹ãŠã¢ã»ã³ããªã«é©ããŠããŸã...ãªã³ã«ãŒçšã®ã¹ã¯ãªãããšããã«ãããŒãããããŒããã§ãã¯ãµã ããŸãã¯ãã®ä»ã®ç®çã®ããã®ïŒç¹å¥ã«äœæãããïŒãŠãŒãã£ãªãã£ãæå¹ã«ãªããŸãã
- ã€ã¡ãŒãžã®æºåãšã¯ããã¡ã€ã«ã®ããŠã³ããšã³ããŒãæããŸãã ãããã£ãŠãã€ã¡ãŒãžãã¡ã€ã«åœ¢åŒã¯ãããŠã³ã/ã³ããŒãŠãŒãã£ãªãã£ãšä»®æ³ãã·ã³ã®äž¡æ¹ã§ãµããŒããããããã«éžæããå¿ èŠããããŸãã åœç¶ãã¢ã»ã³ããªã®æçµéšåãšããŠããŸãã¯ãšãã¥ã¬ãŒã¿ãŒãèµ·åããæºåãšããŠããã®æç¹ããã¢ã¯ã·ã§ã³ãå®è¡ããããšãçŠæ¢ãã人ã¯ããŸããã ããã¯ãã¹ãŠãç¹å®ã®æ段ãšãã®äœ¿çšã®ããã«éžæããããªãã·ã§ã³ã«äŸåããŸãã
- ä»®æ³ãã·ã³ãèµ·åããããšã¯é£ãããããŸããããæåã«ã€ã¡ãŒãžãã¢ã³ããŠã³ãããããšãå¿ããªãã§ãã ããïŒä»®æ³ãã·ã³ãèµ·åããåã«ãã®æäœã«ã¯å®éã®æå³ããªãããããã®æç¹ã§ã¢ã³ããŠã³ãããŸãïŒã ãŸãããããã°ã¢ãŒãïŒååšããå ŽåïŒã§ãšãã¥ã¬ãŒã¿ãŒãèµ·åããããã®ã¹ã¯ãªããã圹ç«ã¡ãŸãã
Hello WorldïŒ

ãã®ã¹ãããã§ã¯ãå°æ¥äœ¿çšããäºå®ã®éçºããŒã«ã®æ©èœããã¹ãŠãã§ãã¯ããå¿ èŠããããŸãã ããšãã°ãã¢ãžã¥ãŒã«ãGRUBã«ããŒãããããã€ã¡ãŒãžã®ä»£ããã«ä»®æ³ãã·ã³ã®ç©çãã£ã¹ã¯/ããŒãã£ã·ã§ã³/ãã©ãã·ã¥ãã©ã€ãã䜿çšãããããŸãã
ãã®æ®µéãæåããåŸãå®éã®éçºãå§ãŸããŸãã
å®è¡æãµããŒãã®æäŸ

- ã¹ã¿ãã¯äžã®ããŒã¿ãããã¯ãåçã«å²ãåœãŠãé¢æ°
- ããŒãã§äœæ¥ãã
- ããŒã¿ãããã¯é¢æ°ã®ã³ããŒïŒmemcpyïŒ
- ããã°ã©ã ãšã³ããªãã€ã³ãæ©èœ
- ã°ããŒãã«ãªããžã§ã¯ãã®ãã¶ã€ããŒãšãã¹ãã©ã¯ã¿ãžã®åŒã³åºã
- äŸå€ãåŠçããããã®å€ãã®é¢æ°
- æªå®çŸã®çŽç²ä»®æ³é¢æ°ã®ã¹ã¿ã
- ...
ãHelloãWorldïŒããšèšè¿°ããå Žåããããã®é¢æ°ãååšããªãããšèªäœã¯æããªããããããŸããããã³ãŒããè¿œå ãããšããªã³ã«ã¯äŸåé¢ä¿ã®äžæºã«ã€ããŠäžå¹³ãèšãå§ããŸãã
åœç¶ãããã«æšæºã©ã€ãã©ãªãèšèŒãããŠããå¿ èŠããããŸãã å®å šãªå®è£ ã¯å¿ èŠãããŸããããæ©èœã®äž»èŠãªãµãã»ããã¯å®è£ ãã䟡å€ããããŸãã ããããã°ãã³ãŒãã®èšè¿°ãã¯ããã«éŠŽæã¿ããããé«éã«ãªããŸãã
ãããã°

次ã®ããšãã¢ããã€ã¹ã§ããŸãã
- ãããã°ã®çµè«ãäžãã
- ããããã¬ããžã®å³æåºå£ã§ã¢ãµãŒãããŸãïŒæ¬¡ã®æ®µèœãåç §ïŒ
- äœããã®ã³ã³ãœãŒã«ãããã¬ãŒ
- ãšãã¥ã¬ãŒã¿ãŒã§ãããã¬ãŒãã·ã³ãã«ããŒãã«ãªã©ãæ¥ç¶ã§ãããã©ããã確èªãã
ã«ãŒãã«ã«çµã¿èŸŒãŸãããããã¬ãŒããªããšããšã©ãŒã®æ€çŽ¢ã¯æªå€¢ã«ãªãå¯èœæ§ãéåžžã«é«ããªããŸãã ãããã£ãŠãéçºã®ããã€ãã®æ®µéã§ã®å·çãããåã«åé¿ããããšã¯ã§ããŸããã ãŸããããã¯é¿ããããªããããäºåã«æžãå§ããŠãéçºãå€§å¹ ã«ä¿é²ããå€ãã®æéãç¯çŽããããšããå§ãããŸãã ãããã°ãã·ã¹ãã ã®éåžžã®åäœã«æå°éã®åœ±é¿ããäžããªãããã«ãã«ãŒãã«ã«äŸåããªãæ¹æ³ã§ãããã¬ãå®è£ ã§ããããšãéèŠã§ãã 圹ã«ç«ã€ãããããªãããã€ãã®ã¿ã€ãã®ã³ãã³ãã¯æ¬¡ã®ãšããã§ãã
- æšæºãããã°æäœã®äžéšïŒãã¬ãŒã¯ãã€ã³ããã³ãŒã«ã¹ã¿ãã¯ãå€åºåããã³ããã³ãã...
- ã¹ã±ãžã¥ãŒã©ãŒå®è¡ãã¥ãŒãããŸããŸãªçµ±èšãªã©ãããŸããŸãªæçšãªæ å ±ãåºåããããã®ã³ãã³ãïŒæåã«èŠããã»ã©åœ¹ã«ç«ããªãããã§ã¯ãããŸããïŒ
- ããŸããŸãªæ§é ã®äžè²«æ§ã®ç¶æ ããã§ãã¯ããã³ãã³ãïŒç©ºã/䜿çšäžã¡ã¢ãªãªã¹ããããŒããŸãã¯ã¡ãã»ãŒãžãã¥ãŒ
éçº

åæ§ã®SDK

ãã®ã¿ã€ãã®ããã°ã©ã ãäœæããããã»ã¹ã説æããããã¥ã¡ã³ãã¯å¿ èŠãããŸããã ããããæšæºèŠçŽ ã®ç©ºçœãäœæããããšã¯äŸ¡å€ããããŸãã ããã«ãããããã°ã©ã ã®è¿œå ãåçŽåãããã ãã§ãªãïŒæ¢åã®ããã°ã©ã ãã³ããŒããŠåŸã§å€æŽããããšãã§ããŸãããããã«ã¯æéãããããŸãïŒãã€ã³ã¿ãŒãã§ã€ã¹ã圢åŒãªã©ãå€æŽãããšãã«ããã°ã©ã ãç°¡åã«æŽæ°ã§ããããã«ãªããŸãã ãã®ãããªå€æŽã¯çæ³çã§ã¯ãªãããšã¯æããã§ãããOSéçºã¯éå žåçãªãã®ã§ããããã誀ã£ãå€æãäžãå¯èœæ§ã®ããå ŽæããããããããŸãã ãããã決å®ã®èª€acyãåžžã«ç解ããããšã¯ãå®è£ åŸãã°ããããŠããæ¥ãã§ãããã
ãããªãã¢ã¯ã·ã§ã³

䟿å©ãªãªã³ã¯
Habréã®å ŽåïŒ
OSãäœæããŸãïŒåé¡1
OSãäœæããŸãïŒåé¡2
ç§ãã¡ã¯OSãæžãç¶ããŠããŸãã ã¹ããããã€ã¹ããã
ä¿è·ã¢ãŒããšã¯äœã§ããïŒ
ããŒãžã³ã°ãšå²ã蟌ã¿åŠçã®åŠç¿
ãã«ãã¿ã¹ã¯äŒè©±ã®éå§
ã¡ã¢ãªãšã¿ã¹ã¯
OSéçºã«é¢ããå€ãã®æ å ±ãæã€ä»ã®ãœãŒã¹ïŒ
wasm.ru
sysbin.com
osdev.orgã®wiki
iakovlev.org
Bona Fide OS