facebook twitter hatena line google mixi email
★お気に入り追加


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

  • 1
  •  
  • 2010/04/21(水) 12:42:23
mov dx,offset msg
mov ah,9
int 21h
mov ax,4c00h
int 21h

msg db '懐かしのDOS時代のプログラミングについて語ろうぜ',0dh,0ah,'$'

ここまで見た
  • 404
  •  
  • 2013/11/10(日) 03:23:04.87
言っとくけど、メモリ保護機能がないのは
OSではなくてCPUだからね。

CPUにその機能、つまり特定の参照してはいけない
メモリになんかにアクセスした時に処理を奪う機能が
ないから実装しようと思っても不可能。

ここまで見た
  • 405
  •  
  • 2013/11/10(日) 07:34:40.67
CP/MってFATだったっけ

ここまで見た
  • 406
  •  
  • 2013/11/10(日) 10:24:29.57
メモリ,I/O保護やマルチタスクがOSの必須条件時ではないでしょう。
OSの必須条件とは、
「そのOSが動作する機器が何であろうと、OSが用意したシステムコールを使えば
 どこでも同じに使えるよう抽象化すること」
でしょう。

ここまで見た
  • 407
  •  
  • 2013/11/10(日) 10:25:22.29
必須条件

ここまで見た
  • 408
  •  
  • 2013/11/10(日) 10:55:23.52
OS?
BASICの間違いでしょう

ここまで見た
  • 409
  •  
  • 2013/11/10(日) 11:00:23.25
昔は言語がOSそのものだったよな。
Smalltalkも似たような感じ。
言語の環境がOSになってた。

ここまで見た
  • 410
  •  
  • 2013/11/10(日) 11:17:50.75
BIOS = BASIC Interpreter Operating System

ここまで見た
  • 411
  •  
  • 2013/11/10(日) 11:21:09.36
>>410
ぐぐってないけど、それ間違い。

ここまで見た
  • 412
  •  
  • 2013/11/10(日) 12:44:55.47
>OSの必須条件とは、
>「そのOSが動作する機器が何であろうと、OSが用意したシステムコールを使えば
> どこでも同じに使えるよう抽象化すること」
>でしょう。

珍説発見

ここまで見た
  • 413
  •  
  • 2013/11/10(日) 13:01:47.81
OSの定義はあるが、さすがにMS-DOSの時代は
パソコンが高価過ぎて完全な形で実装するのが不可能だった。

パソコンというのは、そもそもパーソナルなコンピュータ。
つまり、パーソルではないコンピュータというものがあり、
昔は、そっちがメインだった。
大企業や政府や軍や大学の、個人では買えない高価なコンピュータ。

そこで作られたコンピュータが、徐々に個人向けに転用されてきたというのが
パソコンの歴史なんだよ。

だから昔の(個人向け)OSが、本来の(非個人向け)OSと大きく劣るのは
それがパソコンの歴史なんだから当たり前のこと。
OSの問題というよりも、そもそもCPUやその他のハードに
コンピュータの機能が不足していた。

ここまで見た
>>412
>>406 は正論だと思うけれどもね

ここまで見た
  • 415
  •  
  • 2013/11/10(日) 13:03:21.15
OSとモニターの区別も付かない馬鹿がなんか言ってるw

ここまで見た
  • 416
  •  
  • 2013/11/10(日) 13:07:26.56
N-BASIC にはあったねmon コマンドとかBASICコードの最初10行程度の行番号を全部 0 にしてみたりとかさ

ここまで見た
  • 417
  •  
  • 2013/11/10(日) 13:36:08.73
ディスクBASICってのもあったね。
あれ、ディスクを読み書きできるわけだけど、
ディスクを読み書きしている部分はOS?
でもBASIC環境なんだよね。

不思議な世界だ。

ここまで見た
  • 418
  •  
  • 2013/11/10(日) 14:09:36.59
MZ-80 シリーズなんかインタープリタをわざわざテープにロードしていたくらいだし、そうそう SWORD とかあったね、不思議な世界だね

ここまで見た
  • 419
  •  
  • 2013/11/10(日) 14:49:28.43
>>409
Smalltalkはアラン・ケイらの暫定ダイナブック環境として作られた経緯があって
あえてOSの要素を含むように仕組まれているから、今の文脈からはちょっと特殊な例だろうね。

「Smalltalkの底を流れる設計思想」
http://web.archive.org/web/20041016084842/http://marimpod.homeip.net/chomswiki/24#
Smalltalkでは、この基準は対話するオブジェクトというモデルで充分にみたされている。略
オペレーティングシステムがこの原則を破っているようであることはちょっと注目すべきだろう。
プログラマーは一貫した記述の枠組みをはなれ、蓄積されたコンテキストをあとにし、
まったくかけ離れた、そしてたいていはとても原始的な環境を相手にしなければならないのだ。略
オペレーティングシステムは言語におさまりきらないものを集めたもので、これは存在すべきでない

ここまで見た
  • 420
  •  
  • 2013/11/10(日) 15:01:52.21
その頃からダイナブックってあるんだな。

ここまで見た
  • 421
  •  
  • 2013/11/10(日) 17:51:38.08
東芝がぱくってノーパソの商標にした

ここまで見た
  • 422
  •  
  • 2013/11/10(日) 19:44:29.28
>>405
FCB

ここまで見た
  • 423
  •  
  • 2013/11/10(日) 20:10:30.14
>>405
http://www.cpm8680.com/cpmtools/cpm.htm

ここまで見た
  • 424
  •  
  • 2013/11/14(木) 09:47:33.84
dynabook ss001の頃はパーソナルワークステーションだった
F1の鈴木亜久里ちゃんがモデルだったのよね
懐かしいわ

ここまで見た
  • 425
  •  
  • 2013/11/25(月) 15:52:16.00
DOS窓からcalc.exeとか起動したときに
今起動したcalc.exeのプロセスIDを知る手段ってある?

ここまで見た
  • 426
  •  
  • 2013/11/25(月) 15:57:03.40
このスレ的にはそのcalc.exeは当然DOSプログラムだよね?
そうなるとntvdm.exeにしかプロセスIDは付かない。

ここまで見た
  • 427
  •  
  • 2013/11/25(月) 21:16:21.63
「DOS窓」なんだからWin9xだろ

ここまで見た
  • 428
  •  
  • 2013/11/25(月) 22:03:58.84
cmd.exeは32ビットコンソールだけど、
仮想86マシンの方は俺は今でもDOS窓って呼んでるな。
もうすぐ7/64へ行くから会えなくなるけど。

ここまで見た
  • 429
  •  
  • 2013/11/25(月) 22:24:44.81
cmd.exe
command.exe

ここまで見た
  • 430
  •  
  • 2013/11/25(月) 22:36:19.04
COMMAND.COM

ここまで見た
  • 431
  •  
  • 2013/11/26(火) 12:42:57.50
MSX-DOS は大盛況のうちに幕を閉じた。

ここまで見た
  • 432
  •  
  • 2013/11/26(火) 20:44:05.71
dosプログラムの特徴といえば煩雑なメモリモデルだよね
Win32になってメモリモデルが単純になってよかった

ここまで見た
  • 433
  •  
  • 2013/11/26(火) 20:46:46.33
>>432
>dosプログラムの特徴といえば煩雑なメモリモデルだよね

8086のコンパイラによる事情であって、DOS固有のことではない。

ここまで見た
  • 434
  •  
  • 2013/11/26(火) 23:15:18.37
CPUが16ビットだったからね。
一つのレジスタで64KBまでしか参照できないのに
それを二つ使って1MBを超えるようなメモリを使うには
どうしても複雑にならざるを得ない。

それを補うのが当時のコンパイラの仕事の一つで
殆どの場合、複雑なメモリモデルは隠蔽されてる。

ここまで見た
  • 435
  •  
  • 2013/11/26(火) 23:16:36.79
>それを二つ使って1MBを超えるようなメモリを使うには

>殆どの場合、複雑なメモリモデルは隠蔽されてる。

何か勘違いされてますね

ここまで見た
  • 436
  •  
  • 2013/11/26(火) 23:17:19.12
>>435
ほう。それであんた、説明は?
それが言えなければ、ただの難癖。

ここまで見た
  • 437
  •  
  • 2013/11/26(火) 23:19:58.81
>それが言えなければ、ただの難癖。

そう思いたいんだろうね

ここまで見た
  • 438
  •  
  • 2013/11/26(火) 23:22:06.25
はいはい

セグメントレジスタとオフセットは大部分重なってるのでレジスタ2個使っても1M超えてはアクセス出来ない

ここまで見た
  • 439
  •  
  • 2013/11/26(火) 23:25:59.39
>それを二つ使って1MBを超えるようなメモリを使うには

「1MBを超える」って、EMSかなんかを勘違いしてるのかな?

ここまで見た
  • 440
  •  
  • 2013/11/26(火) 23:27:01.61
>>434
>それを補うのが当時のコンパイラの仕事の一つで

コンパイラが頑張っても1MBは超えられないよ。

ここまで見た
  • 441
  •  
  • 2013/11/26(火) 23:31:07.30
>>434
MS-CのHugeモデルでも1MBは超えられませんよ。
つかメモリモデルってプログラマが指定してたけど隠蔽されてるってどゆこと?

ここまで見た
  • 442
  •  
  • 2013/11/27(水) 00:09:11.13
へぇ、なんで1MB超えられないの?
それはMS-DOSが原因なの?
理由言える?

ここまで見た
  • 443
  •  
  • 2013/11/27(水) 00:12:15.19
知ったか同士で仲良くお喋りなさい

ここまで見た
  • 444
  •  
  • 2013/11/27(水) 00:16:44.60
>へぇ、なんで1MB超えられないの?

8086/88のアドレス空間が1MBしかないから。

ここまで見た
  • 445
  •  
  • 2013/11/27(水) 00:21:23.27
そういや64ビットになってメモリモデル復活してるんだよな
意識しないといけないのは、2GBを超えるexe作るなら、だけど

ここまで見た
  • 446
  •  
  • 2013/11/27(水) 00:33:37.54
>>444
つまりCPUが原因ってこと?
OSを変えれば直る問題に思えないんだけど?

ここまで見た
  • 447
  •  
  • 2013/11/27(水) 00:36:00.24
>OSを変えれば直る問題

馬鹿キター!(AA略

ここまで見た
  • 448
  •  
  • 2013/11/27(水) 01:08:21.29
286以降ならA20ラインで1M+64kまでOKだな

ここまで見た
  • 449
  •  
  • 2013/11/27(水) 01:21:32.26
HIMEMやVCPI/DPMIといった286/386向けの機能を
DOSに含むかどうかだよな

ここまで見た
  • 450
  •  
  • 2013/11/27(水) 01:30:00.19
「CPUが16ビットだったからね。
 一つのレジスタで64KBまでしか参照できないのに
 それを二つ使って1MBを超えるようなメモリを使うには
 どうしても複雑にならざるを得ない。」

という話とはとりあえず関係ない。

ここまで見た
  • 451
  •  
  • 2013/11/27(水) 02:09:13.94
パソ通時代にこの手の奴居たよな
まだやってんのか

ここまで見た
  • 452
  •  
  • 2013/11/27(水) 08:12:56.31
EMM386.SYS と EMM386.EXE の違いが判らんかった当時

ここまで見た
  • 453
  •  
  • 2013/11/27(水) 11:51:31.31
よく知らないけど、なんか下位互換にこだわってあんなセグメントなんて概念になったんだっけ?
PC-E500 シリーズの CPU なんか 8 bit でありながら 20 bit のレジスタ持ってて
1 MByte リニアにアクセスできるのに。

ここまで見た
  • 454
  •  
  • 2013/11/27(水) 13:07:29.06
8088 の悪口はそこまでだ

ここまで見た
  • 455
  •  
  • 2013/11/27(水) 14:06:55.29
アドレス専用のレジスタを強いるかどうかじゃねーの

砂時計アラームタイマー
フリック回転寿司
ここまで見た

★お気に入り追加

このページを共有する
facebook twitter hatena line google mixi email