2ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

OSの設計(マジで

1 :マイヤー:02/02/02 22:35
単純なOSをマジで設計してみたい人&情報提供者集まれー
CUIのシングルタスク(ノンプリエンプション)仮想記憶なし
他のOS上で疑似OSでもいい とかなら可能かな?
ハードに近い部分や1から作るのが現実的でない部分は既存のモジュール使ったり
情報待ちます
 部品として何が必要かとか
 


2 :Be名無しさん:02/02/02 22:50
2げーーーーと!!!!

3 :Be名無しさん:02/02/02 23:04
バカはいくら集まってもバカ

4 :Be名無しさん:02/02/02 23:59
いや、でも素朴な疑問なんだけどさ、OSって実のところどうやって作るの?検索かけても全然出てこないし…
Linuxのソースでもみるかなぁ…
ってかOSって基本的にどういう仕組みで動いてるんだ

5 :東大生:02/02/03 00:03
>>4
OSは、アーキテクチャ(物理構成)から考えなきゃダメなんです。
カーネルに最低でもAPIの実装とドライバまわりがあれば、
後はモジュールをくっつけるだけです。

6 :マイヤー:02/02/03 00:20
>>5
想像してみたんですが
kernelprogram→APILIB→DeviceDriver→BIOS→チップで
CPUモード(OS走る時、ユーザプログラム走る時)の制御機能も必要すよね
あとマシンとドライバからの割り込み制御と資源割当プログラム(ジョブスケジューラ、イニシエータとか?)
とファイルシステムと・・って多いなー汗
詳しい説明キボンヌ

7 :Be名無しさん:02/02/03 00:23
成る程、誰か詳しい人はおらんかね。MS−DOSレベルの話でもいいんだが…

8 :マイヤー:02/02/03 00:46
凄い時間かかりそうだけどマターリといきませう

9 :Be名無しさん:02/02/03 01:44
まずここを読んでこい
>OSを基礎から学ぶには?
>ttp://pc.2ch.net/test/read.cgi/os/1004069708/

参考文献もいくつか紹介されているから、それも読んでみるといい。



10 :Be名無しさん:02/02/03 01:46
MVSの教科書には、資源問題とかいろいろ書かれてたな。

11 :マイヤー:02/02/03 02:05
イイね!(・▽・ )


12 :Be名無しさん:02/02/03 10:33
FreeDOSのソースでも見ろ。

13 :Be名無しさん:02/02/03 10:35
>>1
プログラムとか設計とかの経験はどれくらいあるの?

MS-DOS程度でいいんならFreeDOSのソースでも見たら?

www.freedos.org

14 :マイヤー:02/02/03 15:35
>12 13 情報サンクス
昨日検索で見つけたヨ!(・▽・ )ソース探す
経験少ないから最初はコード見るのと微少変更から始めてみます
とりあえずGaryNuttの実習Linuxかーねる買ってみた

15 : :02/02/03 17:15
出来上がったら、フリーで使わせて。

16 :Be名無しさん:02/02/03 17:24
>>3
   ∧_∧  / ̄ ̄ ̄ ̄ ̄
  ( ´∀`)< オマエモナー
  (    )  \_____
  | | |
  (__)_)


17 :マイヤー:02/02/03 17:38
素人計画なので出来るかどうかもワカラソ(´Д`;)

18 :マイヤー:02/02/03 17:49
とりあえずFreeDOSカーネル(DOS-C)は
C85%アセンブラ15%の32000行(注釈抜き)らしい

19 :PoP'N MuWOTA:02/02/03 18:33
マイヤーサソ応援age

20 :Be名無しさん:02/02/03 19:02
>18
LionsのUNIX本みてUNIX互換にしたら?
全部で一万行でドライバまで入っていたはずだよ。
calderaからソースダウンロードできるしね。


21 :マイヤー:02/02/03 22:03
>18サンクス
しかしやっぱ膨大な量勉強しないといけないですね
もっと本読まないとだ(・.・ )学んできます


22 :マイヤー:02/02/03 22:34
関連ページなどまとめ
bw-www.ie.u-ryukyu.ac.jp/~j97010/minix/
www.bell-labs.com/topic/books/os6-book/index.html
www.freedos.org/
guriponn.tripod.co.jp/docs/index.htm


23 :PoP'N-Mu WOTA:02/02/03 23:05
結局マイヤータンはUNIX系(Posix云々と言ったほうがいいのかな?)を
目指すの?漏れはDOSフェチだからDOS系を勉強してみるか。

24 :マイヤー:02/02/03 23:26
とりあえず基礎知識がもっと全然必要みたいだから
UNIXカーネルとCとアセンブラを0から勉強します
PoP'N-MuWOTAタン頑張りませう!(・▽・ )

25 :PoP'N-Mu WOTA:02/02/03 23:42
漏れはシェルスクリプトとちょっとしたC,CASL,Pythonぐらいしか
しらないんですが。(;´Д`)これを気に勉強してみるか。

26 :FreeDOS教徒:02/02/04 08:07
面白そうだネ。
ところで「はじめての486」買った?
あれ勉強になるね。Intelのマニュアルよりとっつきやすい。

FreeDOSの起動コードなら結構分かりやすいから
そこから地味に"Booting ??OS..."ってやるのもいいね。

27 :Be名無しさん:02/02/04 18:04
やっぱhttp://www.imasy.or.jp/~kawai/osask/見て作るべき。

28 :PoP'N-Mu WOTA:02/02/04 19:09
>>27 (;´∀`) ...

29 :マイヤ:02/02/04 20:02
>>OSASK ス。。スゴスギル。。。(´Д`;)




30 :Be名無しさん:02/02/05 19:50
>>28,>>29
どうよ?

31 :マイヤー:02/02/05 21:48
天才っているんだネ・・・。(´`;)
まぁ一般人はコツコツやっていこう・・・
Web資料(現在)
アセンブラ(x86) http://www.d1.dion.ne.jp/~ecb/assembler/assembler00.html
MINIXカーネル2.0研究 http://bw-www.ie.u-ryukyu.ac.jp/~j97010/minix/
Linuxカーネル2.2研究 http://www03.u-page.so-net.ne.jp/da2/h-takaha/internal/index.html
>>FreeDOS教徒タン これかな 
http://www.ascii.co.jp/books/detail/4-7561/4-7561-0213-1.html

32 :Be名無しさん:02/02/05 22:10
PC/ATのブートについての資料ってどっかにあるかな

33 :マイヤー:02/02/05 22:45
>>32 起動などの資料
PC/ATブート構造
 http://www.tkcity.net/~nobusan/boot/boot.html
Linuxカーネルの起動詳細
 http://lkh.linux.or.jp/24kernel/source/html4/boot.html
LILO他
 http://www.linux.or.jp/JF/JFdocs/LILO-README/intro.html
ブートセクタのプログラミング
 http://www.cityfujisawa.ne.jp/~slcc/misc/electric-tips/boot.txt


34 :32:02/02/05 22:51
>>33
こんな早くレスつくと思わんかったです。
ありがとう。

35 :33:02/02/05 23:29
>>32いいページ見つかったヨカタ(´∀` )ブート奥深・・

36 :FreeDOS教徒:02/02/06 00:21
本のタイトル間違ってた。マイヤーたんゴメソ。 しばらくコテハン捨てます(w ところでワシも何か手伝おうか?ブートコード程度なら書くべ。 既存のOSからパチってくるだけだけど(w

37 :マイヤー:02/02/06 00:42
>>オオ 見たことないしブートコード見てみたいヨ スレ乗せられる?

38 ::02/02/06 01:21
FreeDOSのboot.asm見てみたんだけど250行くらいあるね(´_`;)

39 :Be名無しさん:02/02/06 01:56
>>マイヤーたん。250行なんて、こんなのまだまだ軽いもんだYO!!
道は遠いね・・・ぼちぼちやっていった方がよさそう。




40 ::02/02/06 02:44
ゴメソ スレに乗りきらないって意味だったんだけど実際キツイと思う
リナクスのコード量がファイルシステム 127,000デバイスドライバ 963,000
ネットワーク 151,000その他 259,000 合計 1,500,000行だもんね・・・
ぼちぼちやっていくよ(一生かかりそうだけど(´∀` ;)

41 :PoP'N-Mu WOTA :02/02/06 23:37
Lionsようやく読み終わったぞと。
意味不明な場所多すぎだったけど。(;´Д`)

42 :Be名無しさん:02/02/07 00:10
>>41
Lionsは苦手だ…折れVAX知らないし。ていうか知ってるほうがスゴイ(w

>>40
スマソ ていうかLinuxのコードは1人で管理できないよ…(;´Д`)
ここは1つ 5万行ぐらいでシンプルなOS作ったらどうかな?

何かいるもんある??
とりあえず…
http://www.capricorn.cse.kyutech.ac.jp/~tate/tako/80x86.html
アセンブリャならここ見とけ。垂涎ものだべ。

43 :PoP'N-Mu WOTA :02/02/07 00:39
>>42
激しくThanx!

44 :Be名無しさん:02/02/07 00:51
おいらも昔OS作りに憧れてさ、ここまでは作ったんだけどねぇ
フロッピーにぶちこみゃぁ起動すっぺ。

# set real mode.
.code16
.text
.org 0x00

.globl start
start:
mov $0x07c0, %ax
mov %ax, %ds

mov $bootmes, %si
call message
mov $newline, %si
call message
call idle
message:
cld
lodsb
or %al, %al
jz done
mov $0xe, %ah
mov $7, %bx
int $0x10
jmp message
done:
ret
idle:
hlt
jmp idle

bootmes:
.ascii "Hello, world!"
newline:
.byte 10, 13, 0

pad:
.word boottag - .
.fill 10, 1, 0
.org 510
boottag:
.word 0xaa55

45 :Be名無しさん:02/02/07 00:59
良スレの予感。なのか?

46 :Be名無しさん:02/02/07 01:14
あとHeroさんのx86資料は読みやすくて奥が深い。
http://ns2.sitedesign.co.jp/~hero/hero.htm
それと割り込み関連ではDBIOSのマニュアルが凄い。
Googleあたりで検索してくだされ。

こんだけ出せばOS作れるだろ(ぉ

47 :Be名無しさん:02/02/07 01:19
>>42
> とりあえず…
> http://www.capricorn.cse.kyutech.ac.jp/~tate/tako/80x86.html
> アセンブリャならここ見とけ。垂涎ものだべ。
おい。あほなこと言ってんじゃねーよ。
どうせ暇だろIA-32アーキテクチャマニュアルにしろ。
http://www.intel.co.jp/jp/developer/design/pentium4/manuals/index.htm
せめてレディオテクニカだな。
ns2.sitedesign.co.jp/~hero/chm/X86CPU.CHM
んで、汗はあるのか?
MASM32 : www.movsd.com/masm.htm
NASM : www.web-sites.co.uk/nasm/

48 :Be名無しさん:02/02/07 01:38
>>44
あはは、そういうの作ったよ漏れも…(泣

>>47
初心者にはこれぐらいの分量で良かろう。
普段ニーモニック調べるときは重宝するで。すげえ軽いし。

49 :Be名無しさん:02/02/07 02:04
>>44
ていうか、GASかよ!

>>31
> アセンブラ(x86) http://www.d1.dion.ne.jp/~ecb/assembler/assembler00.html
> 今、アセンブラのコンパイラって結構手に入らないみたいですね。
ナエワラタ
他は結構まともなのにねぇ。。。

BIOSの資料その他はInterrupt Requestを筆頭に
調べる気さえあればいくらでも英語圏から出てくる。
ビデオ周りのInterrupt Requestを一部和訳したヤシもいたから欲しけりゃ調べろ。

FDDブートはOSASKかThinkOSのML@Free-MLで既出だ。

50 :49@追加:02/02/07 02:06
日本語の資料が欲しけりゃ金出せ。

51 :Be名無しさん:02/02/07 02:29
漏れ親切過ぎるな…しばらく引っ込むか。

>>49
ThinkOSでそんな投稿あったっけ?て漁ってたら
しばらくぶりに動いてるよ…なんだなんだ??

52 :49:02/02/07 02:43
>>51
おおっ!本当だ。ってかLightConeたんが動いてる?(ワクワク
> こんな2CHが立ってたんですね・・・。
にはワラタよ。
.....多重スレ違いスマソ。

で、ブートあったかと思ったら漏れにもわからなくなった。スマソ。

53 :49:02/02/07 11:20
ThinkOSじゃなかった。
http://www.freeml.com/ml_mess.php?ml=silverbullet&pg=1
の17番だ。

54 :玄人:02/02/07 14:55
VisualBasicしかできないけど、手伝うよ。

55 :Be名無しさん:02/02/07 20:41
>>49
すげーな。こっち見てたほうがよっぽどためになる。
ThinkOSは完全にネタだな、LightConeたん出た時点で(w

>>54
激藁。マジならスマソ。

おまけ。NASMでやってみた。
segment .text
org 0x7C00
cli
cld
xor ax,ax
mov ss,ax
mov ds,ax
mov bp,0x7C00
lea sp,[bp-0x20]
sti

mov byte [BootDrive],dl

print:
mov si,FirstBootMes
xor bx,bx
mov ah,0x0E
_print:
lodsb
cmp al,'$'
je lazy
int 0x10
jmp short _print

lazy:
hlt
jmp short lazy

BootDrive db 0
FirstBootMes db "Loading OS-AGE...",10,13,'$'

times 0x01FE-$+$$ db '$'
SectorEndSign dw 0xAA55

…実力ねぇなあー(泣

56 :Be名無しさん:02/02/07 21:41
ブートが実は簡単だってことはわかったんで、
次はファイルシステムを設計しよう。これができればやる気増大だと思う。
メモリマネージャとかタスクマネージャとかはしばらくほっとけ。
それと、メモリのどの番地にどんな情報をいれとくかって事も決めておこう。

57 :PoP'N MuWOTA :02/02/07 22:20
>>56
複数の事を同時に勉強中なので頭脳がクラッシュしそうです。
先に漏れの頭の中のスケジューリングを構築しなければ(;´Д`)

58 :Be名無しさん:02/02/07 22:52
スレ違いだけど、NASMって消滅したの?

59 :Be名無しさん:02/02/07 23:19
>>58
なんで?
ちゃんとあるだろ?
製作者が消えても確かGPLだから消滅しないし。

60 :58:02/02/07 23:40
>>59
今のオフィシャルサイトって
http://www.octium.net/nasm/
に変わったの?

61 :Be名無しさん:02/02/08 00:13
>>60
書いてあることを読む限りそうみたいだね。
http://www.web-sites.co.uk/nasm/
には何も書いてないみたいだけど。

62 :PoP'N MuWOTA :02/02/09 00:57
ついクセで man nasm ってやる自分が好き。cmd.exeは氏ね。

63 :動くかわからんが・・・:02/02/09 05:18
;====================================
;NAME:print_char
;説明:1文字出力
;IN:
; AL:INPUT CHAR
; DL:X DH:Y
;OUT:
; NONE
;===================================
print_char:
push cx
push bx

;move cursol
mov ah,02h ;service num
;mov dh,cl ;Y
;mov dl,ch ;X
mov bh,00h ;page
int 10h

;put char
mov ah,0ah ;service num
mov bh,00h ;page
mov bl,01h ;color
;mov al,byte ptr btmsg
mov cx,01h ;how many write char
int 10h

pop bx
pop cx

ret

64 :動くかわからんが・・・:02/02/09 05:18
;======================================================================
;NAME:print_str
;説明: 文字列出力、文末に00h必要
; この命令後、カーソルの位置(DL値)はX方向に文字数だけずれる
;IN:
; AX:INPUT STRING ADDRES
; DS:INPUT STRING SEGMENT
; DL:X DH:Y
;OUT:
; AX:CHARACTER NUM
;======================================================================
print_str:
push cx
push bx
push si
push ds

mov si,ax
mov cx,ax
pslp1:
mov al,ds:[si]

;mov ax,si
;mov ah,00h
;call print_hex
;jmp pslp2



test al,al ;al=0?
jz pslp2




call print_char

inc si
inc dl

jmp pslp1

pslp2:
mov ax,si
sub ax,cx
pop ds
pop si
pop bx
pop cx

ret

65 :動くかわからんが・・・:02/02/09 05:19
;===================================
;NAME:disp_1num
;説明:1文字出力
;IN:
; BX:INPUT NUM
; DL:X DH:Y
;OUT:
; NONE
;===================================
disp_1num:

push cx
push bx
push ax


;move cursol
mov ah,02h ;service num
;mov dh,cl ;Y
;mov dl,ch ;X
mov bh,00h ;page
int 10h


mov ax,bx
cmp ax,0ah
jae over9
add ax,030h
jmp ok
over9:
add ax,037h
ok:

;put char
mov ah,0ah ;service num
mov bh,00h ;page
mov bl,01h ;color
;mov al,byte ptr btmsg
mov cx,01h ;how many write char
int 10h

pop ax
pop bx
pop cx


ret

66 :動くかわからんが・・・:02/02/09 05:19
;===================================
;NAME:print_shex
;説明:ALを16進表示
;IN:
; AL:INPUT NUM
; DL:X DH:Y
;OUT:
; NONE
;===================================
print_shex:

push bx
push dx

mov bx,ax
and bx,0f0h
;shr bx,04h
shr bx,01h
shr bx,01h
shr bx,01h
shr bx,01h

call disp_1num

mov bx,ax
and bx,0fh

inc dx
call disp_1num

pop dx
pop bx

ret

67 :動くかわからんが・・・:02/02/09 05:22
;===================================
;NAME:print_hex
;説明:AXを16進表示
;IN:
; AX:INPUT NUM
; DL:X DH:Y
;OUT:
; NONE
;===================================
print_hex:
push bx
push dx
mov bx,ax
and bx,0f000h
;rol ax,04h
shr bx,01h
shr bx,01h
shr bx,01h
shr bx,01h
shr bx,01h
shr bx,01h
shr bx,01h
shr bx,01h
shr bx,01h
shr bx,01h
shr bx,01h
shr bx,01h
call disp_1num

mov bx,ax
and bx,0f00h
;shr bx,08h
shr bx,01h
shr bx,01h
shr bx,01h
shr bx,01h
shr bx,01h
shr bx,01h
shr bx,01h
shr bx,01h

inc dx
call disp_1num

mov bx,ax
and bx,0f0h
;shr bx,04h
shr bx,01h
shr bx,01h
shr bx,01h
shr bx,01h
inc dx
call disp_1num
mov bx,ax
and bx,0fh
inc dx
call disp_1num
pop dx
pop bx
ret

68 :動くかわからんが・・・:02/02/09 05:25
;============================================================
;mem_dump
;説明: MEMORYを見る
; IN AX:MEMORY_ADDR BX:MEMORY_SEGMENT
; DH:DISP_Y DL:NUM_LINE
;==========================================================
mem_dump:
push ds
push si
push cx
push dx
push ax
push bx

xor cx,cx
mov cl,dl
mov ax,cs
mov ds,ax
mov dl,0ch
mov ax,offset maplowmem
call print_str

pop bx
pop ax
push ax
push bx

mov ds,bx
mov si,ax

;mov dx,0507h
inc dh
inc dh
mov dl,07h

call print_hex
mov ax,bx
mov dl,02h
call print_hex

pop bx
pop ax
push ax
push bx

mov dl,0ch ;5行目の0c番目から書く

;mov bx,0610h ;6*16bytes out
mov bh,cl
mov bl,010h


69 :動くかわからんが・・・:02/02/09 05:25
mdlp0:
mov al,byte ptr [si]
call print_shex
inc si
dec bl
jz line_end

inc dl
inc dl
inc dl
jmp mdlp0
line_end:
inc dh
mov dl,0ch
mov bl,010h
dec bh
jnz mdlp0

pop bx
pop ax
pop dx
pop cx
pop si
pop ds
ret
maplowmem:
DB '00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F',00h

70 :動くかわからんが・・・:02/02/09 05:29
;============================================================
;reg_dump
;説明: REGISTERを見る
;==========================================================
reg_dump:
push di
push es
push si
push ds
push dx
push cx
push bx
push ax

; push cs
push di
push es
push si
push ds
push dx
push cx
push bx
push ax

mov ax,cs
mov ds,ax

mov ax,offset rdlabela
mov dx,0190ah
call print_str

mov ax,offset rdlabelb
mov dx,01b0ah
call print_str

pop ax
mov dx,01a0ah
call print_hex

pop ax
mov dx,01a10h
call print_hex

pop ax
mov dx,01a16h
call print_hex

pop ax
mov dx,01a1ch
call print_hex



71 :動くかわからんが・・・:02/02/09 05:29
pop ax
mov dx,01c0ah
call print_hex

pop ax
mov dx,01c10h
call print_hex

pop ax
mov dx,01c16h
call print_hex

pop ax
mov dx,01c1ch
call print_hex

mov ax,cs
mov dx,01c22h
call print_hex

pop ax
pop bx
pop cx
pop dx
pop ds
pop si
pop es
pop di
; pop cs
ret
rdlabela:
DB 'ax bx cx dx',00h
rdlabelb:
DB 'ds si es di cs ip',00h

72 :動くかわからんが・・・:02/02/09 05:35
数年前にブートの仕組みを探ってた時に書いた奴です。
アセンブラもその時初めて勉強したんで無駄な処理も多いかと思います。

73 :デフォルトの名無しさん:02/02/09 05:44
>>72
解読させていただきます。ども。

74 :Be名無しさん:02/02/09 08:20
>>72
386以上に限定すればもっと短くなりそうやね。
でも、この量は鯖にあげたほうが良かったかも…


75 :Be名無しさん:02/02/09 13:46
マクロと386以上向けの最適化を行えば鯖にあげる必要はなさそう、
と言ってみる。
INCはどんなときでも連続2回までだよもん。

76 :PM-WOTA:02/02/09 17:08
漏れはやっぱまだまだだから、鯖でも提供してサポートするよ、
と言ってみる。
つうかアセンブラの勉強してたらなんかForthに魅かれてるんですが。

77 :Be名無しさん:02/02/09 17:41
鯖を提供する前になにもできてないぞ(W
で、みんなアセンブラで書いてるけど、どの段階からCで書けるようになるの?
分担して、ついに2chOSとかできたら面白いね。

78 :Be名無しさん:02/02/09 18:55
つうか超基本的な部分はアセンブラ、後は
OS?SKのAS?Aみたいに主とする機能を使いやすく
特化した言語でも作ってやってみたいんだが。

スマソ、各部品がエージェント(人工知能的オブジェクト)
なOSで、SSTPとかで通信しあうという妄想において話しました。

79 :Be名無しさん:02/02/09 19:13
>>78
妄想以前に電波のかほり。
前段と後段のつながりがわからんぞ。
「専門の言語を使用して特殊なOSを作る」ということか?
それぐらい大掛かりになるとサイト作った方がいいぞ。

80 :Be名無しさん:02/02/09 20:38
>>77
カーネルはCで書けるはずだよ。がんばれば。
漏れはアセンブリャしか出来ないからよー分からんが。

>>78
そんな大それた計画はOS作ってから言って呉れ。

81 :Be名無しさん:02/02/09 22:53
>>78
川合とおんなじ電波の周波数だな。

82 :Be名無しさん:02/02/09 23:15
ところで、よく見たらこのスレはOSの「設計」で「実装」じゃないじゃん。
そこらへんどうよ?

83 :Be名無しさん:02/02/09 23:17
>>82
別に?流れでどうにかなるでしょ

84 :相互リンク:02/02/10 01:48
技術バリバリはここ! Come Here !
http://pc.2ch.net/test/read.cgi/tech/1013246022/

85 :Be名無しさん:02/02/10 04:45
開発環境は、VMwareを2つ起動させて片方のゲストOS上で
開発→仮想フロッピーに書き込んで、
もう片方のVMwareはその仮想フロッピーを使って再起動。
ある程度のとこ来るまでは、これが最強っぽいなぁ。

86 :Be名無しさん:02/02/10 05:15
1.グローバルディスクリプタの作成・設定
2.割り込みディスクリプタの作成・設定
3.A20ビットのマスク解除
4.CR0のPEビットをセット
5.セグメントレジスタの再設定

はじめて読む486によると、この手順でプロテクトモードに移行するらしい。
グローバルディスクリプタとか割り込みディスクリプタってのは、
ちゃんと考えて設定しなきゃならんのかな?

とりあえずプロテクトモードに移るまでのソースきぼんぬ。

87 :Be名無しさん:02/02/10 16:37
にちゃんねるでこんなこと聞くほうが間違ってるな。

88 ::02/02/11 02:22
>>86 (抜粋:マト違いならゴメソ)
CR0(コントロール レジスタ0)の最下位ビットのPEビットが1になると、プロセッサはプロテクト モードに切り換わります。
プロセッサは、プロテクト モード用の設定が完了していなくてもプロテクト モードで実行が開始されます。 つまり、
最初の割り込み、far命令によるプログラム遷移、或いはセグメント レジスタの設定があるまで走ることになります。
この時点でプロセッサはディスクリプタ テーブルへのアクセスを要求します。 保護機構は、ディスクリプタ テーブルに依存
するため、ディスクリプタ テーブルが初期化されていなければ、システムはシャット ダウンとなります。
プロテクト モードの初期化には、GDT(グローバル ディスクリプタ テーブル)とIDT(割り込みディスクリプタ テーブル)の初期設定、
および最初のプロセスのためにTSS(タスク ステート セグメント)の作成が必要最低限のものです。 おそらく初期のディスクリプタ
テーブルはROMに格納されています。 しかし、CPUがディスクリプタにアクセスするためには、それを指すGDTRやIDTRを設定
する前にディスクリプタ テーブルをRAMへコピーします。
PEビットをセットしてプロテクト モードを許可する前に、GDTのアドレスとリミットとともにGDTRを設定します。 IDTにはコードを
指すゲートを入れておき、これらのコードが移行初期化中に発生した例外をトラップするようにすべきです。 IDTRは初
期化されてIDTを指し、TRにはGDT(3)のセレクタが設定されます。 その後、CR0(コントロール レジスタ0)のPEビットがセットされ
て、プロテクト モードを許可します。 次にfar JMP命令がCSレジスタに有効なプロテクト モードのディスクリプタを設定します。
最後にスタック セグメント、スタック ポインタ、データ セグメントが設定されます。 初期化処理はOSを休止し、ページングを許可し、
アプリケーション プログラムを開始します。



89 :Be名無しさんn:02/02/11 05:30
初めて読む486にソース書いてあるじゃん。
LinuxやBSDでgrep -r lgdt lidt とかやった?

90 :89:02/02/11 06:03
$grep -r -e lgdt -e lidt
だった。スマソ

91 ::02/02/11 14:19
>>86 ココもドウゾ
http://lkh.linux.or.jp/24kernel/source/html4/boot.html#id_354_

92 :Be名無しさん:02/02/11 15:13
すこしおしえてください。
「はじめて読む486」てVCversion6で動かないですよね。(version1かMC6)
どうやって確かめてます?

93 :Be名無しさん:02/02/11 16:23
>>91
いい感じのページ紹介ありがとう!

94 :Be名無しさん:02/02/11 16:26
読むだけ。
grubでブートプロセスまでを他OSからコピペ
してなんか弄ったりしたいけど、やらないw

95 :Be名無しさん:02/02/11 17:08
>>92
Windows上ではなくDOS上で実行する。
NASM、MASMとかで作成。


96 :Be名無しさん:02/02/11 18:13
>>95
WindowsMeでDOSモードで起動する方法教えてクレクレ

97 :Be名無しさん:02/02/11 19:44
Delphiのインラインアセンブラで作れる?漏れとしてはこの環境でgoしたいんだけど

98 :Be名無しさん:02/02/11 20:07
A20の制御がWinに奪われてるからダメだってば。
ピュアなDOSかFreeDOSあたりがいいよ。

99 :95:02/02/11 20:27
>>96
次の方法でDOSに逝ける

材料:FD1枚

料理方法:
スタート - 設定 - コントロール パネル - アプリケーションの追加と削除で
起動ディスク作成でディスクを作成してそれで起動する。

環境を整えればできると思われ。 > アセンブル
(PATHとか、いらない常駐物を消すとか。後は自分で検索するなりして調べてくれ)


100 :96:02/02/11 20:56
>>99
Thanx.

101 :Be名無しさん:02/02/11 21:19
>1のマイヤーさん
OSの設計は終わったの?

このスレ終了?

102 :Be名無しさん:02/02/11 21:27
初めて読む486は
一応読み終えたところだけど
次に何をやるべきか。
Linuxのソースかな。
今実際に使ってるし。
というかその前にアセンブラの
基本を覚えないとw。

103 :Be名無しさん:02/02/11 21:51
>>101
雰囲気嫁屑

104 :Be名無しさん:02/02/11 22:25
sage進行で。

105 :Be名無しさん:02/02/11 22:34
>>104
なんで?
久しくまともなスレだと思ったけど

106 :Be名無しさん:02/02/11 23:29
マイクロカーネルとモノリシックシステムってどちらが
いいのでしょうか?


107 :Be名無しさん:02/02/11 23:36
>>106
それぞれの利点を考えてみたら?

108 :Be名無しさん:02/02/12 00:01
googleから検索

【マイクロカーネル】
http://primeserver.fujitsu.com/primergy6/tokushu/micro_k/01page.html
http://www.atmarkit.co.jp/icd/root/38/5786938.html

【モノリシックシステム】
http://www.linux.or.jp/JF/JFdocs/linus-lecture/monolithic.html
http://wdic.asuka.net/?title=%A5%E2%A5%CE%A5%EA%A5%B7%A5%C3%A5%AF%A5%AB%A1%BC%A5%CD%A5%EB

【その他】
http://www2.nsknet.or.jp/~azuma/k/k0007.htm
http://provider.gol.com/vol03/0309/faq_j.html

【おまけ ― リーナスvsタネンバウム論争】
http://www.espada.net/~nobu-/misc/l-t.html


109 :Be名無しさん:02/02/12 00:13
>>106
汎用性重視(マイクロカーネル)か、性能重視(モノリシックカーネル)
ってことですかね。


110 :Be名無しさん:02/02/12 00:31
>>109
Minix VS Linux

111 :Be名無しさん:02/02/12 00:49
linuxのモノリシックカーネルは、
リーナスのlinuxに対するポリシーということか。


112 :Be名無しさん:02/02/12 21:19
ページングがよくわからないのだが
誰か教えてたも

113 ::02/02/13 00:07
>>112
CPUが行うページング関係は
http://ns2.sitedesign.co.jp/~hero/chm/X86CPU.CHM
のセグメンテーション、ページングに載ってます

114 :Be名無しさん:02/02/13 00:19
少しずつ駄スレ化してるな…クソつまんねぇ。
さげろさげろー。

…やっぱり>>3 の書いた通りなのかなぁ(;´Д`)

115 :Be名無しさん:02/02/13 00:29
>>114
別にアンタの為のスレじゃないと思うが・・
こういうのは見たいやつだけ見ればいい


116 :Be名無しさん:02/02/13 11:43
モノリシックの弱点って、機能の分割が難しい事と
モジュール間インターフェースが決めにくいことだよな。
どういう分割がいいと思う?

個人的には AtheOSの分割なんか
好みなんだけど。

117 :Be名無しさん:02/02/13 13:27
何をするためのOSをつくんのかな

118 :Be名無しさん:02/02/13 13:57
OS作りを楽しむためかな。

119 ::02/02/13 15:37
上がり過ぎたらsageでお願いしますm(__)m

120 :Be名無しさん:02/02/13 19:47
開発環境は gcc + gas でいこう。

121 :116:02/02/13 22:40
うぉ大チョンボ!

モノリシックじゃないよマイクロカーネルだよ
鬱死


122 :Be名無しさん :02/02/13 23:49
「はじめて読む486」のコードを実行してみたいのですが、
1)BorlandC++をインストールして、TASMは使えますか?
2)BorlandC++&MASM32で何とかなりますか?
3)VisualC++さえ買えば何とかなりますか?
4)根性でgcc&gasでやってみれ!
どれがお勧めでしょうか?

123 :Be名無しさん:02/02/14 00:27
>>122
自分で試してレポートしろ。

124 :Be名無しさん:02/02/14 01:03
                    .、、,,, 、 ,,  .、、,,
         , , ,  ノ .,,/ /   \ \iヽ/\i !/ \  
        /ヽ/i/ヾ/"/      ヽ .ヽ   ヾ    ヽ
       ./   /   /  /        i|  :|!   |!   .‖
       i|   i|   i|   |       |   |   |    |i
        |   |   |   |      /  /  /   /
          \  \  \  ヽ _/  /  /   ノ
          ヽ  ヽ,  ヽ  ヽ      "  "   " " \
          |:::::::   ゛  ゛          ,,,,;;::'''''ヽ
          |::::::::      ,,,,;;:::::::::::::::       __ ヽ
          |:::       "   __ ::::  '"ゞ'-' |
         ┌―.       - '"-ゞ'-' ::::::...      |  
          | | ̄..             :::::::       |
          ヽ.\{_           ( ,-、 ,:‐、   | 
           \\/.                   |
             \_ヽ.        __,-'ニニニヽ .  | 
..                ヽ.        ヾニ二ン"  /
                 ヽ\             /  
                  l  `ー-::、_       ,,..'|ヽ. 
                 :人      `ー――'''''  / ヽ
              _/  `ー-、          ,.-'"   \ー-、
           ,.-'"  \:      \      .,.-''"     |
         /.     \        ~>、,.-''"      |
    ,,..-‐'''""        ヾ    ,.-''"|    /――――、/
            うそはうそであると見抜ける人でないと
             (八頭身から逃げるのは)難しい


125 :Be名無しさん:02/02/14 05:15
>>122
普通に攻めるなら、TurboC+++MASM
OpenWatcomを使うも良し

126 :122:02/02/14 22:45
LinuxにNASMインストールして、Hello,World!を試しました。
OSの設計はともかく、Linuxのカーネルは理解したいもんです。

127 :Be名無しさん:02/02/14 23:48
俺は gas でがんばります。
gcc -c -o hello.o hello.S
ld -o hello hello.o
でコンパイルできます。

/* hello.S */

.text
.global _start

.align 4
_start:
movl $msg, %ecx
movl $msglen, %edx
movl $4, %eax
movl $1, %ebx
int $0x80
movl $1, %eax
movl $0, %ebx
int $0x80

.section .rodata
msg: .ascii "hello, world!\n"
msglen = . - msg


128 :Be名無しさん:02/02/15 02:35
>>122
1) Borland C++ Suiteを買えばTASMは憑いて来ます。
2) MASM系は所持していないので判り兼ねます。
3) いまのVC6ではMS-DOS用プログラムは作れません!
4) C言語はOSを記述する言語だ!と聞いたことがありますが、やはりC言語だけで完遂するのはムリです。

1がお勧めというか、1しかない?
486のプロテクトモ−ドを使うプログラムならかなり厳しいですよ?
WindowsのDOS窓では絶対実行できない、MS-DOSからもムリっぽい(EMM386が邪魔する為)、
結局、フロッピ−にイメ−ジを焼き付けて起動、になりますがかなりの労力が要ると思います。

129 :Be名無しさん:02/02/15 05:03
>>122
LSI C 試食版 + MASM(by DDK) でもできないこともない。無料だ。
アセンブラ部分に一部修正が必要なので素人にはお勧めしないが。(藁

130 :Be名無しさん:02/02/15 11:56
働いててもこのスレが気になる・・・
これってもしかして・・・恋の予感?

131 :Be名無しさん:02/02/15 13:40
nasm+gccじゃダメなの?

132 :かぼ師匠 ◆KABO0ygs :02/02/15 13:47
@ノハ@
( ‘д‘) <良スレの予感。。。

133 :Be名無しさん:02/02/15 15:48
dosとかよくわからないんで、僕の場合は、
アセンブラソースファイルの頭に
org7c00
とか書いて、アセンブル。
できあがったプログラムの先頭部のいらない部分を削って、
それを、debugコマンドかlinuxCDに付属のrawwrite.exeでフロッピーに書き込んで、
それを使ってブートしてました。

org7c00の部分は、
メモリーの7c00番地にブートコードがローディングされるので、
そのOFFSETを意味しています。

ちょっと間違ってるかもしれないんで、フォローよろしく。

でも、Dosを利用するほうが便利なのかなのかも・・・。

134 :133:02/02/15 16:03
で、そのコードは512バイトまでしかローディングしてもらえないから、
その中で続くコードをロードしてプログラムカウンタをそこへ移します。
続くコードのOFFSETは同じようにORG擬似命令を使って、
ロードするメモリの番地を設定しておいてアセンブル。

フロッピーから読み出すためのBIOSコールはインターネットで探せば見つかると思います。

あと、毎回ブートすることになるんで、
virtualPC,VMware,Bochsはあった方が快適になります。

135 :Be名無しさん:02/02/15 18:41
DOSのdebugでa100とか打ち込んで、
mov ax,2008h; mov bx,1000h; mov cx,0; mov dx,1;int 13h;jmps 1000h
とか昔よくやっていたような・・うろ覚えだから真似しないでね はぁと。
うまく行くパターンはint 13hの書きこみ機能で直ブートセクタに
保存しておくと便利。
ちなみに画面に文字を出すときはint 10hを使ったよ。


136 ::02/02/15 21:48
資料++(INT)
http://www-online.kek.jp/~yasu/Kenshu/interrupt.html
http://home.impress.co.jp/catalog/impress/bk4615/c0400.htm
http://hp.vector.co.jp/authors/VA003720/lpproj/int10h/int10h.htm

137 :Be名無しさん:02/02/15 22:25
プログラマ−ズPCソ−スブック
(新版 ) ISBN:4844346156

--------------------------------------------------------------------------------
トム・ホ−ガン;榊正憲
インプレス (インプレスコミュニケ) 1993/07出版
30cm 973p
[A4 判] NDC分類:007.64 販売価:\8,252(税別)
入手不能です

138 :Be名無しさん:02/02/16 00:36
漏れのサイトだスマソ。しかも汚ねぇ。
http://guriponn.tripod.co.jp/dos/Intref.txt
http://guriponn.tripod.co.jp/others/japanise/nasmdoc0.htm
http://guriponn.tripod.co.jp/others/japanise/nasmdoc7.txt

あと
http://www.geocities.co.jp/SiliconValley/9979/
とかね。

139 :Be名無しさん:02/02/16 00:45
>>131
gcc じゃ 16bit コードを出力できないだろ。

140 :Be名無しさん:02/02/16 02:48
>>122 >>129
ttp://www.e-net.or.jp/user/missing-link/assembler/asmboard.html
でちょっと話題になってるな。

141 :Be名無しさん:02/02/16 05:20
>>135
FDから直起動のモニタ作ったとき、int 10H に感動した記憶が(w
で、PC-9800のBIOSはうんこだなぁ、と。

.286
;track 0 -> IPL
;track 1 -> monitor ~7kb
TEXT SEGMENT BYTE PUBLIC USE16
ASSUME CS:TEXT
OFSDLT EQU 7c00H
jmp short main
ORG 30H
_OFS DW 0
_SEG DW 1000H
main:
;スタック初期化
cld
cli
xor ax, ax
mov ds, ax
mov sp, ax
mov ax, 09000H
mov ss, ax
;テキスト表示初期化
sti
mov ax, 3
int 10H
xor bx, bx
mov cx, 25
_CLS_LOOP:
mov ax, 0e0dH
int 10H
mov ax, 0e0aH
int 10H
loop _CLS_LOOP
;モニタを読み込む
mov ax, 1000H
mov es, ax
xor bx, bx ;ES:BX -> buffer
mov ax, 212H ;CMD / READ SECTORS
mov cx, 001H ;CYLINDER / SECTOR
mov dx, 100H ;HEAD / DRIVE
int 13H
;モニタに処理を移す
xor ax, ax
mov dx, ax
jmp DWORD PTR [_OFS + OFSDLT]
jmp $
ORG 200H-2
DW 0aa55H
TEXT ENDS
END

142 :Be名無しさん:02/02/16 08:27
>138
ところで、
ttp://guriponn.tripod.co.jp/dos/
からのリンクがintref.txtになってて、404だ。
直しとけよ。

143 :Be名無しさん:02/02/16 20:10
>>142
訂正さんく。intref.txtのほうで宜しくです。
ところでInt13H AH=02Hって一度に読めるセクタ制限されてるよね。
実際何セクタまで読めるか、誰か知らない?

144 :Be名無しさん:02/02/16 20:58
http://home.freeuk.net/foxy2k/
に野ってた。自レスすま。

145 :超先生@OS板:02/02/16 21:03
  ∧_∧
< `ш´> <一応書いとこう
disk-readサービスコールはディスクのトラックを超えては読めない。
よって、
sector_per_tarck: トラックあたりのセクタ数
sector_number : 読み込む先頭のセクタ番号
sector_per_tarck-(sector_number-1)%sector_per_tarck
が一度に読めるセクタ数(ALレジスタ)になる。

146 :Be名無しさん:02/02/16 21:08
>>145
先生ありがとう!

147 :Be名無しさん:02/02/19 22:34
>>1よ。怒らないから面出せゴルァ!

148 :Be名無しさん:02/02/20 10:43
>>147 何?

149 :Be名無しさん:02/02/21 10:04
あ゛〜、やっと2値イメージ読み込みができた・・・
道は遠いなぁ・・・
ちゃんとInt 1Ehのパラメータ調べとけばこんな手間取ることは・・・

150 :Be名無しさん:02/02/23 18:15
成果物ができてる頃かな?

151 :Be名無しさん:02/02/23 19:15
素人でOS作ろうとしたら骨組みだけでも数年かかる

152 :Be名無しさん:02/02/24 00:41
あと5年もすればx86の血脈は途絶えると思うのだがどうよ?
それでもやる?やれる?…マイヤーたん元気〜?

153 :  :02/02/24 12:57
x86は286の時に導入されたリングプロテクション機構というのが
あるのだけど(マルチックスに起源する)、結局これを使っている
OSってあるのかな?多くのRISC CPUだと、単にノーマルモードと
スーパーバイザーモードの2種類があるだけのことが多いが。

154 :Be名無しさん:02/02/24 13:50
リングプロテクションはセグメンテーションで実現されてるから、
セグメンテーションでメモリ管理しないと使えない。
x86もページングはユーザとスーパーバイザの2種類のモードしかない。


155 :login:Penguini:02/02/24 17:32
CPUはクルーソーみたいなVLIWに完全にシフトしますか?

156 :ギロン:02/02/24 18:09
>>1マイヤー
面白いことやってるね^^というか俺もやってみたかったことだ^^<オリジナルOS
昔TOWNSで386ネイティブのアセンブラ書いてたときから、OSを作ってみたかった。
俺も再度チャレンジしてみます^^

157 :Be名無しさん:02/02/24 20:43
ソースうぷキボン

158 :Be名無しさん:02/02/24 21:32
>>153
初期のOS/2は4つあるうちの3つを使用していました。
0:スーパバイザ
1:IOPL
3:ユーザ
今ではI/Oはドライバ経由ですのでIOPLモードは消滅。

159 ::02/02/24 23:32
>>151専門の人にアセンブラだけで2年かかると言われタ
やっぱ素人には無理なのだろうか・・
>>152本場Intelの技術者さんなら新アーキテクチャを生みそうな気も
>>153頑張りませう アセンブラ修得してる方ならやれると思ふ



160 :Be名無しさん:02/02/25 22:43
>>159
アセンブラは言語だけならC言語より圧倒的に簡単だよ
CPUやシステムとの兼ね合いで「いくらでも高度になってしまう…

161 :デフォルトの名無しさん:02/02/26 00:49
ある程度ターゲットに関する汎用的な知識が必要だね。
386の触りだけ知っててもまだまだって感じがするよ。
NetBSDがMMUのない処理系にも移植されてるから参考に
なるって言われたけど、今だ手を付けてない。。


162 :Be名無しさん:02/02/26 08:44
>>159
>>160に激しく同意。アセンブラ自体はすごく簡単だべ。
CPUやハードウェアをうまく叩けるかどうかが問題なわけで。。
こんなオイラでも2年は・・・かかってるな(汗

163 :Be名無しさん:02/02/26 22:00
POSIXのVer3が出てるけどこれの仕様書読んだ人いる?
金出さないといけないんだよな。$250ぐらい。
http://www.unix-systems.org/version3/online.html

164 :仕様書無しさん:02/02/26 23:04
>>163
それWebで見れるよ。CDROMと同じのが
見せて貰えてるのか確かじゃないけど。

165 :Be名無しさん:02/03/01 19:46
某アセンブラ掲示板のログ見てたけど、やっぱ遅すぎたよね・・・
資料が入手しづらい。7,000円分の価値はあるんだろうけどさ〜(泣

まあ私はのらりくらりと翻訳でもしておきます。
#そういやOSASKのブートコードは最初から飛ばしてますなぁ
#DMAをいの一番に使うなんて、考えもしなかった…

166 :Be名無しさん:02/03/02 03:39
>>163
ここにあったわ。あんがと。
http://www.opengroup.org/onlinepubs/007904975/toc.htm

なんだか異様に関数が増えてるなぁ。こんなのに準拠するOSは
あと5年は出てこなさそうな気配。

167 : ◆ASMvbB1. :02/03/03 20:35
マダカヨー

168 :FreeDOS教徒:02/03/04 00:18
>>167
マダダーヨー

想像するに、マイヤーたんはあまりの壁の高さに意気消沈して
諦めつつある感じだがやっぱりそんなん?

俺は応援するで。がんばれヨ。

169 ::02/03/04 21:14
>>FreeDOS教徒タン
諦めはしないけど限りなく不可能に近いと思っタ(汗
でも好きな事だからこの先も研究するヨ

170 :FreeDOS教徒:02/03/05 14:44
まあ、俺も初心者のころは一寸先は闇だったからな・・・

関係あるのかないのか知らんけど
http://guriponn.tripod.co.jp/dos/int_a.txt
Interrupt Listの興味あるところを少しずつ訳してるよ。

171 :超先生@OS板:02/03/05 20:12
>170
  ∧_∧
< `ш´>y-~~~ BIOSやハードウェアの資料は、OADGのサイトからDLできるぞ。(日本語版)
http://www.oadg.or.jp/tosho/index.htm#techref

172 :Be名無しさん:02/03/05 22:02
>>チョン先生
とてつもなくありがd!

....でも登録しなきゃならんのがつらいな。
ダウンロードページを晒したい気分だけど、
公開停止になったりするのは嫌なのでしない。

これでinterrupt listは読まなくて済む・・・かな?

173 :FreeDOS教徒:02/03/06 08:18
>>171
超先生、其れは知ってるよ・・・現に使ってるし。
ていうか漏れは翻訳とかしてないでOS開発すべきか?

ざっと見たけどこれで当面のハード周りは安心かな〜
でもInterrupt Listは必携だろうな。

174 :172:02/03/06 12:06
>>173
あれに乗ってなくてIntListに乗ってる物で重要なものってある?

175 :Be名無しさん:02/03/06 13:15
そこらへんで見つけたブートストラップを.objファイルにコンパイルした後どうすりゃいいの?
誰か説明してけれ

176 :172:02/03/06 13:18
>>174
ごめん。自己レス。
拡張BIOSとか、メモリマップとかが無い。
本当に出版当時のOADGってことか・・・・

177 :FreeDOS教徒:02/03/09 01:50
LightConeたんのサイト飛んでガックソ(´Д⊂ヽ
すごいOSができそうな予感・・・俺の出番ナシか・・・

178 :Be名無しさん:02/03/10 17:29
>>127

ld: warning: cannot find entry symbol _mainCRTStartup; defaulting to 00401000

実行してみましたがこんな警告がでました。なんなんでしょ?




179 :Be名無しさん:02/03/10 19:41
>>178
環境が違うんじゃない?
127のエントリポイントは_startでしょ。
178は_mainCRTStartup。

180 :Be名無しさん:02/03/15 18:19
386の動作モードをフルに使って同時に多数のOSを動かしたりはできるの?
前にそんな記事を読んだんだけど。

181 :Be名無しさん:02/03/15 20:07
>180
別にフルに使わなくてもできるよ。VMWareとか調べてみれ。

182 :Be名無しさん:02/03/15 20:32
>>181
VMWareって命令列の変換はしないんだよね?
ハードウェアのアクセスだけを色々と細工してるしてるっていうか。
だからおれがいいたいのと少し違うかもしれない。
考えていたのが現状のOSっていくつかある動作モードの
うちの一部分しか使ってないよね。それをもっと
活用したようなのがあるのかなってこと。
286の段階で動作モードが5段階も設定できるようになっていた
のはどんな理由なんでしょ。

183 :Be名無しさん:02/03/16 08:35
>> VMWareって命令列の変換はしないんだよね?

そ、してない。Bochsはやってるけどね。

184 :Be名無しさん:02/03/19 16:16
質問です。
OSが立ち上がるときにディスプレイに
....Loading....
等と画面に文字が表示されるのは
BIOSプログラムのお陰なんですか?

そうだとしたらBIOSの関数を使う方法を教えてください。
よろしくお願いします。

185 :Be名無しさん:02/03/19 16:57
>>184
これはBootLoaderの仕業だと思うよ。

186 :Be名無しさん:02/03/19 18:26
そういやブートローダで思い出したんですが
ブートローダをきっちり512バイトにするのはどうすればいいんですか?
プログラムをコンパイルしてその後バイナリエディタで00をいれたりして
512バイトにしなければならないんでしょうか?

187 :Be名無しさん:02/03/19 18:43
普通はパディングで詰めるのだろうけど詰めなくても問題は無いと思うよ。
詳しい人教えてあげて。

188 :Be名無しさん:02/03/19 19:28
>>186
>>44がちゃんとパディングしてる例じゃないの?

189 :186:02/03/19 20:04
ありがとうございます。
今までわからなかった疑問が一つ解けました。

190 :Be名無しさん:02/03/19 22:00
お願いがあります。
44にコメントを付けてください。
面倒なら面倒じゃない部分だけでいいです。
こころからよろしくお願いします。

191 :始めのほうだけ:02/03/19 22:55
.code16 16ビットのコード
.text テキストセグメントのコード
.org 0x00 ここは00番地

.globl start "start"というラベルは外部から参照可能
start: "start"という名前の目印
mov $0x07c0, %ax 07c0をaxへ
mov %ax, %ds それをdsへ。直接 mov $0x07c0 %ds はできない。


192 :Be名無しさん:02/03/19 23:28
本当にありがとうございます。
勉強になります。
.org 0x00はそういう意味ですか。
gasの擬似命令が全く解からないのです。
擬似命令だけじゃないですが・・・・

ここでさらに質問させてもらいます。
.code16はリアルモードである事を示してるのですよね?
でもgasでは
.code32とすればそれだけでプロテクトモードになったりするのですか?
それともやはりcr0の最下位ビットをオンにしなければいけないのでしょうか?

それともしよろしければ簡単にでよろしいので引き続きコメントをお願いします。



193 :Be名無しさん:02/03/19 23:35
>>192
2chで勉強しようとするな。
「はじめて読む486」でも読め。
それが君のためだ。安易な知識は身を滅ぼす。

194 :Be名無しさん:02/03/20 00:02
「はじめて読む486」読みました。
ただgasについては載っていないので苦労しています。
info asも冒頭で
これはasを学ぶものではないと明記してある通り
とてもasを学べるようなものではありません。

gasの擬似命令一覧が載っているWeb,本でいいのはありませんか?

コメントはもう結構です。甘えすぎました。192さんありがとうございました。

195 :Be名無しさん:02/03/20 00:20
gasの擬似命令どころか、普通のasmの擬似命令すらわかってないような気がするぞ。
「擬似命令 アセンブラ」とかでググルってみれ。


196 :Be名無しさん:02/03/20 00:23
NWSAの説明書なんかは日本語だから便利かもな。

197 :始めのほうだけ:02/03/20 00:35
>> gasの擬似命令一覧が載っているWeb,本でいいのはありませんか?
GNUのサイト。

198 :Be名無しさん:02/03/20 01:10
みんなガムバレ!

OS名はやっぱ、2chOSかな?


199 :Be名無しさん:02/03/20 17:01
なわけねえ

200 :Be名無しさん:02/03/20 22:42
時代はMaidだよ、Maid!ハァハァ

201 :Be名無しさん:02/03/20 23:14
人をサポートするというパソコンの役目を考えるとMaidは結構適切かもな

202 :P6AVTOWNS:02/03/22 03:25
OS名は HINOMOTO にしたいのう^^日本製だし。

203 :Be名無しさん:02/03/22 10:23
>>198
linuxのペンギン,FreeBSDのデーモンに対抗し
2chOSのマスコットはモナーに (w

204 :Be名無しさん:02/03/23 07:14
それで、設計は進んでいるんか?>1

205 :Be名無しさん:02/03/23 22:43
>>197
それは具体的に何処ですか?
探ってみましたが見つかりませんでした。
お願いします。

206 :Be名無しさん:02/03/23 23:26
>>205
これじゃない?

http://www.gnu.org/

207 :FreeDOS教徒:02/03/24 00:43
不法投棄
http://guriponn.tripod.co.jp/dos/osage.lzh

ここ見てる人、これぐらいできて当然だよな(´Д`;)

208 :Be名無しさん:02/03/24 01:12
すいません出来ません。
初めての486も途中でつまずいてます。
覚えること多すぎて死にそうです。

209 :Be名無しさん:02/03/24 04:14
なんの役に立つかわからんけど

ftp.funet.fi/ftp/pub/Linux/kernel.old/linux/Historic

の中に一番最初のlinuxがあった。記念に残してるんだろか…。
知ってたらスマソ。

210 :209:02/03/24 18:35
>>209
やっぱlinux板のカーネル研究のところにあったね。
ごめんなさい。自己レスでした。

211 :FreeDOS教徒:02/03/24 23:25
>>208
細かいところはいいからざっと読み通してみそ。
一部だけ理解してもあんま意味ないから。

212 :Be名無しさん:02/03/25 14:32
セグメントごとに動作モードがあるとかその本で知ったんだけど
他のCPUもそうやってやってるの?それともページ単位に設定してあるとか?

213 :Be名無しさん:02/03/25 22:50
x86みたいな動作モードがあるCPUって他にもあるのかな?

214 :Be名無しさん:02/03/28 14:00
Windows95って
リアルモードで作動してたの?


215 :Be名無しさん:02/03/29 00:18
>>214
んなアホな…。

216 :age:02/04/04 21:48

age

217 :某スレ47:02/04/04 23:13
今、「他のOS(というか仮想マシン)上で動く疑似OS」作ってみようか
と思っています。純粋に興味で「OSを作ってみたい」なら、いじりやす
い仮想マシンを作っちゃった方が楽な気がしますから。それに、OSだけ
でなく仮想マシンを作るのも楽しそうだし。

今考えているのは

ハンドアセンブルが容易なすっきりしたコード体系の32ビット仮想CPU
表示周りのシステムは1024*1024 32bppのフレームバッファ×2のみ
その他の面倒なシステムは極力なし

という単純な仮想マシン上で簡単なOSを作り、その上でアセンブラや
簡単なコンパイラ、各種の基本的なツールを作って遊んでみる、という
感じのものです。あくまで「仮想マシンやOS、言語処理系などのツール
を作って遊ぶ」のが目的なんで、実用性は考えていません。

>>214

Windows関連の資料では、古い本ですが「INSIDE WINDOWS95」にメモリ管理
をはじめ実行時のシステムの仕組みが詳しく紹介されていましたね。あと
は、「アーキテクチャ徹底解説 Microsoft Windows2000」も面白い。


218 :Be名無しさん:02/04/05 01:25
>>47
CPUはどんな感じになるんでしょうか?
下敷きにとして既存のものを何かしら
考えているならそれを教えて下さい。

応援してます。

219 :Be名無しさん:02/04/05 01:25
>>217
32ビット仮想CPUはいいとして、その次にナニユエ
表示周りの、それもサイズとかの話になるのでしょう。
先に定義しなきゃいけないI/Oはたくさんあるでショ。


220 :Be名無しさん:02/04/05 03:52

だれか Nachos を x86 に持ってこない?


221 :Be名無しさん:02/04/05 05:36
命令セットと画面だけでいいんでないの?
コンパイラとかはリアルマシンで動かすんでしょ。
現実のOSとはずいぶんかけ離れた、タダの仮想マシン臭いが。

222 :Be名無しさん:02/04/05 06:11
http://liberty.princeton.edu/

いやでも手を動かす人好きです

223 :バイク板の鬱な藁人魚:02/04/05 14:30
ふむふむ。
こんなところが・・・

いま、組み込み用のOS書いてるYO(フル汗)
ターゲットはPC/AT互換のISAサイズCPUボード(Pen166)
マルチタスク、リアルタイム、分散処理系ってことでやってるけど
将来的にはプラットホームはSHとかV800、ARM辺りにまで拡張したいなぁ

まぁ、取り掛かったばかりなんで、
M$-某OSのIPLの解析とファイルシステムの設計
くらいしか出来てないんだが・・・(藁

今まで、ずっとPC-98でやってたから、ちょっと大変だね。
ISAバスもプァーだし(藁藁
昔は、DOS用のShellだの、FDベースの制御用OSだの書いてたんだが、
PC/ATのBIOSは初めてだしなぁ。まぁ大体資料は揃えたが。

そういえば、保護モードの参考書がネタになってたけど、
漏れはオーム社が出してる(だしてた?)80?86の使い方
シリーズか、CQ出版の出してるPentiumファミリーディベロッパーズ
マニュアル下巻(インテルが書いたやつの和訳)をお勧めします。
後者は最近買ったんだが、つかえるよ!?
分かり辛いかも知んないけど

224 :Be名無しさん:02/04/05 15:52
>223
IA-32アーキテクチャマニュアルだとダメなの?

225 :バイク板の鬱な藁人魚:02/04/05 16:20
>>224
IA-32アーキ〜の下巻はみたことないから分からん
なんか、落としてきてもうちのアクロバットVer5では開けないっす(汗
なんで??

ただ、根本的にはPDFが嫌いなだけかも(藁
PenのDevMan一冊3K円しないしねぇ。
ただ、プロセッサが一つに絞ってあるのと、ちょうどいい感じに
一冊にまとまっているので読みやすいと思う。

持ってても損はしないと思われ

まあ、こっちにも来て下さいな
http://pc.2ch.net/test/read.cgi/tech/1016991911/l50

226 :Be名無しさん:02/04/08 11:07
MS-DOS 6.0 のソース参考にしれ

227 :Be名無しさん:02/04/10 06:20
>>1
http://homepage2.nifty.com/nowsmart/index.htm
ココで作ってるような感じのOS?

すでに簡単な画面とFAT32ファイルシステムは装備してて
オリジナルのアセンブラとCの開発環境も整いつつあるらしい.

228 :Be名無しさん:02/04/11 15:10
OSなしでアプリケーション動かすには、どうしたらイイ?

229 :Be名無しさん:02/04/11 17:42
>>228
自分自身がOSになればいい。


230 :Be名無しさん:02/04/11 20:29
>>228
直起動すればいい。
小学校にそういうのがあった記憶がある。
今あるかは知らない

231 :バイク板の鬱な藁人魚:02/04/11 21:02
>>228
IPL書けよ

232 :Be名無しさん:02/04/27 06:10
ageてみる?

233 :FreeDOS教徒:02/04/27 21:22
このスレはいまから、
『OS-AGE - another 2ch OS』
として再利用

しようかと思いましたが何気にやる気が起きません(w

234 :Be名無しさん:02/05/09 17:33
>>233
ツカエネーヨ。FreeDOSノナヲケガスキナライマスグカエレ(・∀・)!!

235 :Be名無しさん:02/05/19 16:51
OSを書きやすい言語ってなんですか?
やっぱりメモリを管理できる言語ですか?

JavaとかPerlとかRudyとかでは書くことはできませんか?

236 :Be名無しさん:02/05/19 17:29
orbitをカーネル空間で動かすよなのがあったよ。
なんでもPerlでドライバが書けるとかメインページに書いてあって
ワラタけど。

237 :Be名無しさん:02/05/19 17:38
>>236
なんか面白そう。
カーネル自体もPerlで書いたのかな?
OSのサイズとかメモリ管理とか 動作が死ぬほど怖い・・・

238 :Be名無しさん :02/05/19 17:50
>>237
まずは、はじめて読む486で、
プログラムってものがなんなのか知ったほうがいい

239 :Be名無しさん:02/05/19 18:09
>>238
読んだことある。
Perlの特徴を知らないだけ。
Perlだとできないのか?

240 :Be名無しさん:02/05/19 18:26
Perlのが処理系としてどんな機能をもってるのか知らないけど、
普通のVMを動かしてって話ではないわけだよね?

241 :Be名無しさん:02/05/19 18:30
正直、CかC++以外でOS作るのは怖い。

242 :Be名無しさん:02/05/19 19:03
メモリを管理できる言語ってどのくらいあったっけ?
CとC++とC#、JAVA、他には?

243 :217:02/05/19 20:55
>>235

Javaで仮想マシンは作ったことあるよ。メモリは配列でBYTE列を確保
し仮想CPUからの要求で分配していた。OSといっても、固定的なメモリ
マップにしておけば、OSのコードで実行時のメモリ管理(動的確保や
開放)をする不要はない。起動時に固定的に確保したメモリを配分・
再編成していけば良いから。

もちろん、JavaでOSを書けば実際にはJavaVMが動く過程でWindowsなど
のホストOSのメモリ管理機能は働くだろうけど。


244 :Be名無しさん:02/05/20 17:22
>>241
たしかに最初の動かすための初期化が面倒。
Cが一番ベストだと思う。リンクすれば簡単にできるし。

>>243
おいらも作ったことある。Z80だけど。
ただ、きれいには作れなかったな。あまりにも無駄が多すぎて。
ただこれは勉強不足もあるかもしれんが。
あと、Javaで作るとなるとエミュレータという部類になりそうな気が。
Javaネイティブのマシンなら分からなくもないけど。

245 :Be名無しさん:02/05/20 17:29
アセンブラ…ブートに必要不可欠(上のほう見れ)
Cとか…ブートストラップ後に不可欠(おとなしくFreeDOS使うのが無難ですか…)
Java…(゚Д゚)ハァ?ブート直結VM作れば?←可能かどうかは知らないよ



246 :Be名無しさん:02/05/20 18:54
perl2asm

247 :Be名無しさん:02/05/21 05:19
APIの上に JavaVMを乗せるってことでしょ?
違うの? JavaVMの上に APIを載せるの?
なんかややこしいなぁ・・・

248 :Be名無しさん:02/05/21 05:23
http://cjos.sourceforge.net/archive/
ご参考までに

249 :Be名無しさん:02/06/13 09:56
あげ

250 :よろしく:02/07/03 00:55
仮想マシンとしてVMwareの出来はかなりすばらしいのだが、私としては
著しく不満な点は、仮想マシンのデバッグを支援するための機能がぜんぜん
無いことにある。もしもVMwareが、その仮想マシンのスナップショットを
取れたり、レジスタの表示や、ブレークポイント、擬似的な割り込みの
投入、仮想メモリのページングの状況の表示、などなど、仮想マシン環境
ならではの機械語プログラムやOSのプログラミング支援環境があれば
どんなにうれしいだろうか。歴史的にはIBMのVMという仮想マシンは、
マシンを再起動させたりすることなしにOSをデバッグしたり、デバイスの
構成を変えて試験したり、マルチユーザー環境でそのような開発とデバッグ
を容易にするためのものとして、IBMの研究所内部での利用を前提に
考案されたのが発端だ。

251 :Be名無しさん:02/07/03 01:28
>>250
ページングは難しくない?


252 :Be名無しさん:02/07/04 02:13
OS作りたいのなら動かしたいハードウェアを熟知しないと到底無理だろ。
初めて作るのならPC-9800がいいかもね
テクニカルデータブックとか色々オークションや図書館にあるし、もとが日本語だし

253 :sage:02/07/04 04:20
VMware + Soft ICE ?

254 :Be名無しさん:02/07/04 07:33
bochs ?

255 :Be名無しさん:02/07/07 10:23
勃起?

256 :Be名無しさん:02/07/07 10:44
ボッキドラえもん?

257 :Be名無しさん:02/07/09 12:23
MS-DOS 3.3のソースコードは流失済らしいけど、
どっかでみれないかな

やっぱ流した人はM$に抹殺されたのかな?

258 :Be名無しさん :02/08/10 10:55
久々のあげ

259 :Be名無しさん:02/08/10 11:42
>>250
Plex86はもう誰もサポートしてないみたいだね。
あれを改造して発表したらみなが幸せになれるんじゃないかな?
ちなみにVMWareはOSの動作確認にしか使えないね。実機でやるより
幾分楽になる程度だよ。つまりカーネルの開発には使えないってこと。

260 :リアルタイムOS:02/08/12 11:18
これって使える?
http://www.qnx.co.jp/products/index.html

261 :とりあえずさあ:02/08/12 12:45
OSとかいわないで
電子ジャーの制御プログラム手伝っとくれよ

262 :Be名無しさん:02/08/12 13:33
>>261 あれ難しいんだってねぇ
しかも試食してうまいだのかたいだの柔らかすぎだの評価するから
太るって・・・

263 :Be名無しさん:02/08/12 17:12
>>261
電子ジャーってなに?
家電製品の制御プログラムくらい丸受けするよ


264 :デフォルトの名無しさん:02/08/12 18:48
ところでMSはカーネルの開発をコンパイルしては実機でテスト
というやり方をしてるのかな?それともデバッグしやすい
シミュレーションを社内専用で使ってるとか?
頭のいい人たちが集まって10年間一つのカーネルを弄りつづけた
からにはそれなりの製造ノウハウも溜まってるんだろうなぁ。。

265 :低漢字!:02/08/12 19:12
>>264
沢山のサルにタイプライタ打たせて読めるところをツギハギして小説にしたてるのと
同じやり方だよ


266 :Be名無しさん:02/08/13 10:42
>>265
いつまでたっても単純バグが修正されないのは、それが原因。
使えそうな機能を無意味に繋ぎ合わせてるだけだから、
どこにバグの根本があるんだかわからない。
バグを誤魔化すため、バグの起こりうる処理の後に
別に用意した確認用プログラムを流してるなんてのは、もう有名な話。

267 :Be名無しさん:02/08/13 17:32
Plex86のcpuEmulate()は酷いね。
あれじゃパフォーマンスは出ないよ。
いくら仮想環境でカーネルのデバッグが出来る
といってももう少し改良しないとだめだな。
修正作業始めてみようかな。。。

268 :山崎渉:03/01/15 12:10
(^^)

269 :Be名無しさん:03/02/07 21:42
dat落ちまだかな〜

270 :Be名無しさん:03/03/04 16:34
これからのOSの設計理論は並列処理と無縁じゃいられねべ。
Linuxのmosixなんかみたいに後付けでもいいけどさー
もう少し統一的なものが欲しいところです。

271 :Be名無しさん:03/03/04 16:52
これにはビックリした。^^;
みなさん真似しないように。

http://www.deai-navi.net/linkrank/linkrank.cgi?mode=in&id=fdeai

272 :山崎渉:03/03/13 16:40
(^^)

273 :Be名無しさん:03/03/23 18:28
我等極悪非道のageブラザーズ!
今日もネタもないのにageてやろう!
 ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  ∧_∧   ∧_∧   age
 (・∀・∩)(∩・∀・)    age
 (つ  丿 (   ⊂) age
  ( ヽノ   ヽ/  )   age
  し(_)   (_)J

274 :山崎渉:03/04/17 11:42
(^^)

275 :山崎渉:03/04/20 06:05
   ∧_∧
  (  ^^ )< ぬるぽ(^^)

276 :Be名無しさん:03/05/20 16:08
CORON
http://www.ncfreak.com/cecilia/coron/index.shtml

277 :ネットdeDVD:03/05/20 16:08
アダルトDVDの膣内射精シリーズを買っちゃった
看護婦、OL、人妻とっても安かった!

http://www.net-de-dvd.com/

278 :山崎渉:03/05/22 01:46
━―━―━―━―━―━―━―━―━[JR山崎駅(^^)]━―━―━―━―━―━―━―━―━―

279 :山崎 渉:03/07/15 11:36

 __∧_∧_
 |(  ^^ )| <寝るぽ(^^)
 |\⌒⌒⌒\
 \ |⌒⌒⌒~|         山崎渉
   ~ ̄ ̄ ̄ ̄

280 :Be名無しさん:03/07/22 01:45
  age

281 :ぼるじょあ ◆yBEncckFOU :03/08/02 05:12
     ∧_∧  ∧_∧
ピュ.ー (  ・3・) (  ^^ ) <これからも僕たちを応援して下さいね(^^)。
  =〔~∪ ̄ ̄ ̄∪ ̄ ̄〕
  = ◎――――――◎                      山崎渉&ぼるじょあ

282 :山崎 渉:03/08/15 23:22
    (⌒V⌒)
   │ ^ ^ │<これからも僕を応援して下さいね(^^)。
  ⊂|    |つ
   (_)(_)                      山崎パン

283 :Be名無しさん:03/12/06 03:15
age

284 :Be名無しさん:03/12/09 04:59
MacOSXで製作したいんだけど
bochs以外に何がいるかな?
デベロッパーツールズはインストールしたけど

285 :Be名無しさん:03/12/09 08:24
>>284

bochsで動かすなら、i386のtoolchainが無いと話にならんが。


286 :Be名無しさん:03/12/09 08:56
なんだいそれは?
gccじゃ駄目なのかい?

287 :Be名無しさん:03/12/09 11:22
gcc厨は自分の巣に帰ってください!

288 :Be名無しさん:03/12/09 11:26
意味がわからないよ
MacOSXしかないんだけど
どうにかならないかな

289 :Be名無しさん:03/12/09 11:31
意味がわからないよ
MacOSXなんか捨てちまえ

290 :Be名無しさん:03/12/09 11:53
勘弁してつかぁさいよ
bochs上のFreeDOSで開発しようにも
遅すぎてdirすら我慢できないぐらいだしなあ

291 :Be名無しさん:03/12/09 12:30
>>264
いちお、テスター部隊が実機でソフトウェアなんかを使ってテストしたり、
プログラマが開発に使用したりしてる、というのがMSの中の人の発言だったかと。
まあベータ版なんかもそのために出してるわけだし。
ただ、最終的な納期が迫ると「致命的なバグでない」バグは無視されると(w

と、一年以上前のヤシにマジレス

292 :284:03/12/09 17:20
うぅ・・・手も足もでねえ

293 :285:03/12/09 18:50
もう終わってしまったのか…
>>286
gcc + binutils + α = toolchain


294 :284:03/12/09 19:16
αが気になるのデスが

295 :>>294へ:03/12/09 21:12
    ,,,..-‐‐‐-..,,,
   /::::::::::::::::::::::::ヽ        _,..-‐‐-..,,,
  l::;;-‐‐-:;;::::::::::::ヽ//-‐,,__ /:::::::::::::::::::::ヽ
  l:l    ヽ:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::ヽ
  ヽ   /   :::::::::::::::::::::::::::::::::::::;-'^~~^'‐;;:l
   ~ヽ/      ::::::::::::::::::::::::::U::ヽミ   .ll
    / / ̄^ヽ   ::::::::::::::::::::::U:::ヽ  ,.ノ ∧∧∧∧∧∧∧∧∧∧∧∧∧∧∧∧∧∧∧∧∧
    /  |  ・ .|     :/ ̄^ヽ:::::::l'^~ .<
  ‐/-,, ヽ,_,,ノ      |  ・  |:::::::l  <
   l  ~^''     `‐'   ヽ.,_,,ノ  :l  <   | ヽ                     / ̄ ̄\
  '''l^^~~~    / ̄ ̄ヽ    -‐‐‐--l-  <   |  ヽ   __                  |
   ヽ、 ,,,,  | |||!|||i||!| |   ~^'‐..,,_/  <  /    \   |ノ      ――――     /
    / (:::::} | | |ll ll !!.| |    ,,,, イ~'''  < /      \ 丿 アアァァ           |
    l:  ~~  | |!! ||ll| || |   {:::::) ::l    .<                            ●
   l:      | | !   | l    ~~  l   <
   l、     ヽ`ニニ'ノ       ,l>    V V V V V V V V V V V V V V V V VV V V V V
   /^‐-,,____,,,,,,,,..................,,,,,,,__,,,.--ヽ
   ~‐‐'~             ^'‐‐~

296 :284:03/12/09 23:13
アアァァ!とか言われても。
binutil make installしたけど・・・gasどこお・・・

297 :284:03/12/10 01:52
今窓から見た
ハァ?かよ

298 :285:03/12/10 02:21
>>294
αの定義は人によるからなあ。漏れはgdbがあればなんとかなる。
>>286
/usr/local/binあたりにあると思うが。
gasなんて名前じゃないので、make installした時の実行結果をよーく見て見れ。


299 :284:03/12/10 03:41
この際なのでgentoo入れてみますた。
GNU使うならlinuxだよなーとか勝手に思いつつ。

>>298
gdb使った方がやっぱり嬉しいんですかね?

300 :284:03/12/10 04:09
ていうかココは「設計」スレだから
他の場所に移動した方がいいのかな

301 :Be名無しさん:03/12/10 09:27
GNU厨はうざいのでGNU板に還ってください!

302 :284:03/12/10 15:06
どうせ廃墟スレだし勝手に利用させてもらうよヽ(´ー`)ノ

303 :284:03/12/11 16:09
http://pc.2ch.net/test/read.cgi/os/1062870092/l50
ここ行ってきますだ

304 :Seisei_Yamaguchi:04/05/25 11:16
sage


305 :Be名無しさん:04/06/19 09:17
OSの設計するなら、カーネルだけは出来合いの物を持ってくるっていうのも手だと思うのだが。
良いカーネルない?
L4なんてどうなの?

306 :Be名無しさん:04/06/19 11:20
OSはカーネルの機能等に影響を大きくうける場合があるから、OSの設計をする
なら、先にカーネルを決めるのはどうかとおもうよ。


307 :Be名無しさん:04/06/19 23:08
>>306
そうなんですか?
うまく設計してあるマイクロカーネルなら、
システムの効率や速度に違いはあれ、
作ろうとするOSの機能にまで影響を与えるものなんですか?
マイクロカーネルに夢持ちすぎ?

でも確かに、作ろうとシステムのする目標がないのにカーネル選ぶのは変な話か。

308 :Be名無しさん:04/06/20 01:31
Cマガに特集が

309 :284:04/10/16 14:03:34
復活!ちんちん!

310 :Be名無しさん:04/12/07 20:18:29
12/7
ttp://www.cbook24.com/bm_detail.asp?sku=4894715376

311 :Be名無しさん:05/02/19 03:10:08
>>1 生きてるか!

まとまった物を作ったこと無いんだったら、最初はシンプルだが動作するものを
作ってみるってどうよ。


312 :Be名無しさん:05/03/08 10:55:28
Kernel=OSじゃなくて???
このスレはシェルの設計スレですか??

313 :Be名無しさん:05/03/09 00:55:37
>>312
>Kernel=OSじゃなくて???
マジか

314 :Be名無しさん:05/03/15 14:57:57
Linux見ればよくわかるだろ。
bash,csh,zsh,kshとかいろいろあるし。
WindowsにもLiteStepとかExplorerとかBlackBox4winとかあるじゃねぇか

315 :Be名無しさん:05/03/17 01:18:09
>>312,313
どうしてそう思ったの?
どこを読めばそういう解釈になるのかわからん。

316 :Be名無しさん:2005/07/20(水) 01:39:35
保守 

317 :Be名無しさん:2006/03/22(水) 20:13:23
あげまんこ

318 :Be名無しさん:2006/03/22(水) 20:16:39
1 名前:Be名無しさん[sage] 投稿日:2005/06/27(月) 19:50:44
話し合いましょう。
ttp://aeland.yh.land.to/project/about.htm

4 名前:Be名無しさん[sage] 投稿日:2005/06/28(火) 14:30:38
おっと……またバーボンかとオモタ
で、何これ。

・音声処理に向いた新言語AEPLという物を作り、それでOS作る
・他OS用ソースをAEPLに変換する仕組みを実装する
というのが目標なのか? 妙な日本語なので解釈できたか不安だが。

バーボン以下の電波サイトだな。

9 名前:エーランドの”管理”者[sage] 投稿日:2005/07/11(月) 15:39:21
何故盛り上がらないのか質問下さい


319 :Be名無しさん:2006/03/27(月) 00:45:47
                                   _____
.                  ./ ̄ ̄ ̄ ̄\,,     /−、 −、    \
    ┏┓    ┏━━┓   /_____  ヽ   /  |  ・|・  | 、    \.     ┏━┓
┏━┛┗━┓┃┏┓┃   | ─ 、 ─ 、 ヽ |  |  / / `-●−′ \    ヽ    ┃  ┃
┗━┓┏━┛┃┗┛┃┏━|  ・|・  |─ |___/━|/ ── |  ──   ヽ   | ━━┓┃  ┃
┏━┛┗━┓┃┏┓┃┃. |` - c`─ ′  6 l.  |. ── |  ──    |   |   ┃┃  ┃
┗━┓┏━┛┗┛┃┃┗━ヽ (____  ,-━━| ── |  ──     |   l.━━┛┗━┛
    ┃┃        ┃┃     ヽ ___ /ヽ    ヽ (__|____  / /     ┏━┓
    ┗┛        ┗┛     / |/\/ l ^ヽ    \           / /..     ┗━┛
                   | |      |  |     l━━(t)━━━━┥

320 :Be名無しさん:2006/07/09(日) 14:50:04
保守しておく。


76 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.02.02 2014/06/23 Mango Mangüé ★
FOX ★ DSO(Dynamic Shared Object)