Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

メモ:「30日でできる!OS自作入門 」27日目

More than 1 year has passed since last update.

LDT と ライブラリ

1) まずはバグを直そう
- 終了処理させるために、寝ていたら起こす処理を追加

2) アプリ実行中でもコンソールを閉じたい
- コンソールだけを閉じる処理を追加
- 結構直感的になった

3) アプリケーションを守ろう1
- 別のアプリケーションがやられた

スクリーンショット 2018-12-28 14.18.26.png

4) アプリケーションを守ろう2
- 他のアプリケーションのセグメントを触れないようにする
- LTD (Local Segment Descriptor)
- TASK の構造体の中に LDT 2つ持つように変更 (コードとデータ用)
- TASK init LDTもセットするコード追加
- 🎉

スクリーンショット 2018-12-28 14.43.33.png

5) アプリケーションのサイズ改善
- API を全部分けた (api001.nas ~ api020.nas)

6) ライブラリ
- APIをライブラリ化 (アプリは #include "apilib.h" すればよい)

7) make環境の整理
- アプリケーションをフォルダ分ける
- apilib も別フォルダ
- OS は haribote というフォルダに
- makeが速くなった気がする

S-YOU
基本的には備忘録として書いています。 よく誤字脱字があるため、気になる方はご指摘頂けると幸いです。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away