oldworks06
の編集
https://khfdpl.osask.jp:443/wiki/?oldworks06
[
トップ
] [
編集
|
差分
|
バックアップ
|
添付
|
リロード
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
-- 雛形とするページ --
2016_10
2016_11
2016_12
BracketName
Essen
Essen0
Essen1
Essen2
Essen3
Essen4
EssenMemo0001
EssenMemo0002
EssenMemo0003
EssenMemo0004
EssenMemo0005
EssenMemo0006
EssenMemo0007
EssenMemo0008
EssenMemo0009
EssenMemo0010
EssenMemo0011
EssenR2
EssenR2_ess03f
EssenR2_ess03h
EssenR2_ess03i
EssenR2_ideas
EssenR2_jit00
EssenR2_jit01
FormattingRules
FrontPage
Help
IP
InterWiki
InterWikiName
InterWikiSandBox
K
KHPC
KHPC_v000doc01
KHPC_v001doc01
KHPC_v002doc01
KHPC_v003doc01
MenuBar
OSC
OSC20181027
OSC20190222
OSC20191123
OSC20230401
OSC20230528
OSC20231021
OSC20240310
OSC20241026
PHP
PukiWiki
PukiWiki/1.4
PukiWiki/1.4/Manual
PukiWiki/1.4/Manual/Plugin
PukiWiki/1.4/Manual/Plugin/A-D
PukiWiki/1.4/Manual/Plugin/E-G
PukiWiki/1.4/Manual/Plugin/H-K
PukiWiki/1.4/Manual/Plugin/L-N
PukiWiki/1.4/Manual/Plugin/O-R
PukiWiki/1.4/Manual/Plugin/S-U
PukiWiki/1.4/Manual/Plugin/V-Z
RecentDeleted
SandBox
SltVA
VariableArray
WikiEngines
WikiName
YukiWiki
advcal20161205
advcal20161206
advcal20161209
advcal20161210
advcal20161215
eoml0001
eoml0002
essen_ex01_0001
impressions
kcl_malloc
khfdpl_result1
members
memo0001
memo0002
note0001
note0002
note0003
note0004
note0005
note0006
oldworks
oldworks00
oldworks06
oldworks12
oldworks13
osaskjp_index
persistent_C
populars
pr20161105
pr20161105b
scsc
seccamp2017
spam_test
uxf
uxf_01
uxf_02
uxp
* KHBIOSについて -(by [[K]], 2015.03.20) ** (1) KHBIOSとは? -趣味でx86の32bitの自作OSを作っていると、デバイスドライバの作成が結構苦労する。OSを作りたいのであって、デバイスを制御して遊びたいわけではない。 -そもそもそのためにBIOSの仕組みがあるわけだが、AT互換機の場合、32ビットモードからではBIOSはあまり使いやすくはないし、FM-TOWNSやNEC-PC-9801との互換性もない。 -ないなら作ろう、そういう発想で「拡張汎用BIOS」という名前でプロジェクトは始まった。後に、作品名を半角英数化したほうが都合がよいと分かり「KHBIOS」に名称変更した。 -また、BIOSが起動デバイスとして認識しないデバイスからOSを起動させるという目的もあった。 --当時、OSもアプリもデータもOSASKによってコンパクトになり、だからこれらを一つのメディア(たとえばメモリカードなど)に収めておけば、このメモリカードから起動することで、いつでもどこでも自分の環境が持ち歩ける、PCが壊れてもOSやアプリの再インストールは必要なくて、便利なことこの上ない。というPCの使い方の提案をしていた。これを「OSASKスタイル」とか「KHBIOSスタイル」と言っていた。そもそも昔のMS-DOSなどでは一枚のディスクに全部を入れられたので、その原点に帰ろうというそれだけのことでもある。 --これを実現するにはメモリカードから起動する必要があり、たいていのBIOSはこれに対応していないので、KHBIOSが必要になる。 -仕組みとしては、まずKHBIOSが各機種の標準BIOSからOSとして起動し、その後メモリの一部にドライバなどと一緒に居座って、KHBIOS対応のOSを探して起動する。 ** (2) 経過 -つまり、OSASKからデバイスドライバを切り離して適当に整理すればそれでよかった・・・はずなのだが、設計しているうちに欲が出てきた。 --(2-1) HDDのパーティションやファイルシステムも支援してやろう --(2-2) メモリ管理も支援してやろう: メモリ構成は機種によって違うので、それを吸収してやりたかった --(2-3) 複数のOSがメモリを切り分けて同居できるようにしよう --(2-4) CPU時間のスケジューラも付けよう、これを使えば複数のOSが同時に動作することもできる --(2-5) 適当なバイトコード体系を定義してやって、それでOSを記述した場合はCPUに依存せずに動作できるようにしよう -などと構想が猛烈に巨大化して、ついに当時の[[K]]の実装力を超えてしまった。 -なお(2-5)については各OS上でCPUに依存しないアプリケーションを作りたいと思った時にも必要だと考えて、khabaというプロジェクトに設計を引き継いだ。 ** (3) リンクなど -OS-Wiki内のページ: http://oswiki.osask.jp/?KHBIOS * こめんと欄 #comment
タイムスタンプを変更しない
* KHBIOSについて -(by [[K]], 2015.03.20) ** (1) KHBIOSとは? -趣味でx86の32bitの自作OSを作っていると、デバイスドライバの作成が結構苦労する。OSを作りたいのであって、デバイスを制御して遊びたいわけではない。 -そもそもそのためにBIOSの仕組みがあるわけだが、AT互換機の場合、32ビットモードからではBIOSはあまり使いやすくはないし、FM-TOWNSやNEC-PC-9801との互換性もない。 -ないなら作ろう、そういう発想で「拡張汎用BIOS」という名前でプロジェクトは始まった。後に、作品名を半角英数化したほうが都合がよいと分かり「KHBIOS」に名称変更した。 -また、BIOSが起動デバイスとして認識しないデバイスからOSを起動させるという目的もあった。 --当時、OSもアプリもデータもOSASKによってコンパクトになり、だからこれらを一つのメディア(たとえばメモリカードなど)に収めておけば、このメモリカードから起動することで、いつでもどこでも自分の環境が持ち歩ける、PCが壊れてもOSやアプリの再インストールは必要なくて、便利なことこの上ない。というPCの使い方の提案をしていた。これを「OSASKスタイル」とか「KHBIOSスタイル」と言っていた。そもそも昔のMS-DOSなどでは一枚のディスクに全部を入れられたので、その原点に帰ろうというそれだけのことでもある。 --これを実現するにはメモリカードから起動する必要があり、たいていのBIOSはこれに対応していないので、KHBIOSが必要になる。 -仕組みとしては、まずKHBIOSが各機種の標準BIOSからOSとして起動し、その後メモリの一部にドライバなどと一緒に居座って、KHBIOS対応のOSを探して起動する。 ** (2) 経過 -つまり、OSASKからデバイスドライバを切り離して適当に整理すればそれでよかった・・・はずなのだが、設計しているうちに欲が出てきた。 --(2-1) HDDのパーティションやファイルシステムも支援してやろう --(2-2) メモリ管理も支援してやろう: メモリ構成は機種によって違うので、それを吸収してやりたかった --(2-3) 複数のOSがメモリを切り分けて同居できるようにしよう --(2-4) CPU時間のスケジューラも付けよう、これを使えば複数のOSが同時に動作することもできる --(2-5) 適当なバイトコード体系を定義してやって、それでOSを記述した場合はCPUに依存せずに動作できるようにしよう -などと構想が猛烈に巨大化して、ついに当時の[[K]]の実装力を超えてしまった。 -なお(2-5)については各OS上でCPUに依存しないアプリケーションを作りたいと思った時にも必要だと考えて、khabaというプロジェクトに設計を引き継いだ。 ** (3) リンクなど -OS-Wiki内のページ: http://oswiki.osask.jp/?KHBIOS * こめんと欄 #comment
テキスト整形のルールを表示する