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

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

初代UNIXをかたる

1 :名無しさん@お腹いっぱい。:04/11/21 20:22:32
今でこそ星の数ほどUNIX互換OSというもの(と名乗っているもの)がたくさんありますが、初代のUNIXそのものについてかたりませんか。

2 :名無しさん@お腹いっぱい。:04/11/21 20:22:52
星の数ほどはいらなかった。
スマソ

3 :名無しさん@お腹いっぱい。:04/11/21 20:27:42
ばーか

4 :名無しさん@お腹いっぱい。:04/11/21 20:41:34
初代のソース見たことのある奴いる?

5 :名無しさん@お腹いっぱい。:04/11/21 21:06:51
死ね

6 :名無しさん@お腹いっぱい。:04/11/21 21:09:36
はつよタンハアハア

7 :名無しさん@お腹いっぱい。:04/11/21 21:48:02
>>4
初代はソース残ってないそうな

8 :名無しさん@お腹いっぱい。:04/11/21 21:49:51
有名だとは思うが、PDP11エミュでV6 UNIXを動作させてる

http://kakugawa.aial.hiroshima-u.ac.jp/lecture/1999/OS/uv6.html

9 :名無しさん@お腹いっぱい。:04/11/21 22:14:32
はつよUNIXってのは日系二世か?

10 :名無しさん@お腹いっぱい。:04/11/22 13:32:31
無料で入手できるものは5thが最古。
もっと古いのって保管されていないのかな?
Unics'69はないってきいたけれども。

11 :名無しさん@お腹いっぱい。:04/11/22 21:04:04
5thのソースだけ抜き出した奴ってどっか転がってない?
一度は読んでみたい

12 :名無しさん@お腹いっぱい。:04/11/22 21:13:43
>>11
http://minnie.tuhs.org/UnixTree/V5/



13 :名無しさん@お腹いっぱい。:04/11/22 21:15:38
http://minnie.tuhs.org/UnixTree/1972_stuff/
これわなんなのですか

14 :名無しさん@お腹いっぱい。:04/11/23 18:05:01
作った本人はさすがにソース保存してるだろうから復元は可能なんじゃないか
でも歴史関係よくわからねー。オライリの本で勉強せなあかんな

15 :名無しさん@お腹いっぱい。:04/11/25 10:31:13
いや、本当に無いんだと思う
オライリーでUNIXの歴史なんて扱ってる本あんの?
歴史ならあの本よかったよ1/4正規

16 :名無しさん@お腹いっぱい。:04/11/27 18:03:15
UNIXの歴史というか、オープンソースの歴史を扱った本ならうちにあるよ。

17 :名無しさん@お腹いっぱい。:05/01/03 10:04:57
UNIX USERSで連載してるの四度毛。
もう4.3BSDまで進んじまったが。

18 :名無しさん@お腹いっぱい。:05/01/03 19:56:16
>>17
単行本になるのかねあれ。なるんだったら欲しいな。

19 :名無しさん@お腹いっぱい。:05/01/03 20:45:25
編集部に「単行本にしても売れるぞ」という雰囲気を伝えるといいんじゃない?
アンケートとかで、アレを単行本にしると積極的に書いておくとかさ。



20 :名無しさん@お腹いっぱい。:05/02/12 06:53:33
ttp://v6.cuzuco.com/home.html 、にて
?闇?でくばられている、V6のコード、
を、
あやしくドブログ印刷した、
のだが、
その、行番号740ふきん

_retu:
bis $340,PS
mov (sp)+,r1
mov (sp),r0
mov $_u,r0
1:
mov (r0)+,sp
mov (r0)+,r5
bic $340,PS
jmp (r1)

わからんーわからんーー、
とずーっと悶え(AA略)ていた、
ところ、
あるひ(ほんじつ)、
ふと、
別の?闇?配布サイト

21 :名無しさん@お腹いっぱい。:05/02/12 06:55:04
ttp://minnie.tuhs.org/UnixTree/V6/usr/sys/conf/m40.s.html
のソース見ると

_retu:
bis $340,PS
mov (sp)+,r1
mov (sp),KISA6 /** ここだ(AA略) **/
mov $_u,r0
1:
mov (r0)+,sp
mov (r0)+,r5
bic $340,PS
jmp (r1)

只食いの食あたり、で、
おわり

22 :名無しさん@お腹いっぱい。:05/02/12 11:28:24
sureg()
{
register *up, *rp, a;

a = u.u_procp->p_addr;
/* 前半省略 */
up = &u.uisd[16];
rp = &UISD->r[16];
if (cputype == 40) { /* pdp11/40 */
up -= 8;
rp -= 8;
}
while (rp > &UISD->r[0]) {
*--rp = *--up;
if ((*rp & WO) == 0)
rp[(UISA - UISD) / 2] =- a;
}
}

PDP11のセグメント・レジスタ群が
カーネル・モードの仮想アドレス空間の8ページ目にあって
メモリ・マップドI/Oで、

23 :名無しさん@お腹いっぱい。:05/02/12 11:29:29
UISD == UISD0 == $017600
017600 UISD0
017602 UISD1
017604 UISD2
017606 UISD3
017608 UISD4
...
017634 UISD14
017636 UISD15

UISA == UISA0 == $017640
017640 UISA0
017642 UISA1
017644 UISA2
017646 UISA3
017648 UISA4
...
017674 UISA14
017676 UISA15
のようになっていて、

rp が UISD2 == 017604 のとき
rp[(UISA - UISD) / 2] =- a;
017604[(017640 - 017600) / 2)] =- a;
017604[40 / 2] = a;
017604[20] = a;

24 :名無しさん@お腹いっぱい。:05/02/12 11:30:38
レジスタの配列のインデックスがワード == 2バイト なので
*(017604 + (20 * 2)) =- a;
*(017604 + 40) =- a;
*(017644) =- a;

017644 は UISA2にアドレスが一致、つまり
そのページのページ・デスクリプション・レジスタに対応する
ページ・アドレス・レジスタで
テキストセグメントのPARについて、
最初のほうで余分に足した、
データセグメント用のベースアドレス値
u.u_procp->p_addr (Per Process Data Aria の始点)
をひく、ということをやっている。

このアドレスは、
newproc()の中から呼ばれるmalloc()によって、
渡される、ようだ。

しかし、そうすると、
テキスト・セグメントのベースが0になってしまい??
カーネルモードで使用している
物理アドレスの0からproc[0]のPPDAの直前$_endまでの領域と
かぶってしまうのでは、ないか??
PARに入れる値なので、
仮想アドレスということはないだろうし、

mfpiとかmtpiとかfu(i)word/byte,copysegなどは
どういうふうになっているのであろうか??

謎は次回(未定)つづく。

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

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

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)