Recommended
PPT
PDF
Introduction of OpenBSD/luna88k at OSC 2014 Nagoya
PDF
XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)
PDF
A story of porting OpenBSD/luna88k
PDF
AllwinnerタブレットのOSを作ってみる (途中版)
PDF
WSL2使ってみた / Preview for WSL2
PDF
PDF
PDF
PDF
PDF
100GbE NICを使ったデータセンター・ネットワーク実証実験 -メモ-
PDF
ODP
PDF
qpstudy05 lignhing talk - virtio
PDF
OpenBSD/luna88k on LUNA-88K2, at OSC 2013 Nagoya
KEY
軽快なPlan 9 Update - Illumos KVM上陸 -
PDF
opencoconの作り方 (オープンソースカンファレンス2015 Tokyo/Spring 小江戸らぐセミナー)
ODP
ここんとーく in 大分 (opencoconのご紹介と次期バージョンの予告)
PDF
AllwinnerタブレットのOSを作ってみる(中編)
PDF
NetwalkerとARM Linuxのカスタマイズ情報
PPTX
PDF
PDF
openSUSEで最強仮想環境をつくろう - ゲーミングから仮想通貨まで - OSC名古屋2017セミナー資料
PDF
PDF
KEY
PDF
Androidクラウドブック DynabookAZでLinuxを色々と遊んでみよう
PDF
謎PCとの付き合い方(LILO東海道 2015/5発表分)
PDF
[Basic 7] OS の基本 / 割り込み / システム コール / メモリ管理
PDF
0章 Linuxカーネルを読む前に最低限知っておくべきこと
More Related Content
PPT
PDF
Introduction of OpenBSD/luna88k at OSC 2014 Nagoya
PDF
XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)
PDF
A story of porting OpenBSD/luna88k
PDF
AllwinnerタブレットのOSを作ってみる (途中版)
PDF
WSL2使ってみた / Preview for WSL2
PDF
PDF
What's hot
PDF
PDF
PDF
100GbE NICを使ったデータセンター・ネットワーク実証実験 -メモ-
PDF
ODP
PDF
qpstudy05 lignhing talk - virtio
PDF
OpenBSD/luna88k on LUNA-88K2, at OSC 2013 Nagoya
KEY
軽快なPlan 9 Update - Illumos KVM上陸 -
PDF
opencoconの作り方 (オープンソースカンファレンス2015 Tokyo/Spring 小江戸らぐセミナー)
ODP
ここんとーく in 大分 (opencoconのご紹介と次期バージョンの予告)
PDF
AllwinnerタブレットのOSを作ってみる(中編)
PDF
NetwalkerとARM Linuxのカスタマイズ情報
PPTX
PDF
PDF
openSUSEで最強仮想環境をつくろう - ゲーミングから仮想通貨まで - OSC名古屋2017セミナー資料
PDF
PDF
KEY
PDF
Androidクラウドブック DynabookAZでLinuxを色々と遊んでみよう
PDF
謎PCとの付き合い方(LILO東海道 2015/5発表分)
Similar to Bsd suki
PDF
[Basic 7] OS の基本 / 割り込み / システム コール / メモリ管理
PDF
0章 Linuxカーネルを読む前に最低限知っておくべきこと
PDF
ODP
Read daemon on 20121110 by shinaisan
PDF
PDF
PPTX
PDF
PDF
PDF
PDF
NetBSDのクロスビルドのしくみとインストール済みLive Imageの作成
PDF
PDF
JTF2020 クロスコンパイルだけが能ではない組み込みLinuxシステムのCI/CDインフラ構築
PPTX
PDF
2011.09.18 v7から始めるunix まとめ
PDF
【学習メモ#4th】12ステップで作る組込みOS自作入門
PDF
Linux Kernel Seminar in tripodworks
PDF
PDF
PDF
Recently uploaded
PDF
ソフトウェアエンジニアがクルマのコアを創る!? モビリティの価値を最大化するソフトウェア開発の最前線【DENSO Tech Night 第一夜】
PDF
ソフトとハードの二刀流で実現する先進安全・自動運転のアルゴリズム開発【DENSO Tech Night 第二夜】 ー高精度な画像解析 / AI推論モデル ...
PDF
音楽アーティスト探索体験に特化した音楽ディスカバリーWebサービス「DigLoop」|Created byヨハク技研
PDF
krsk_aws_re-growth_aws_devops_agent_20251211
PDF
2025/12/12 AutoDevNinjaピッチ資料 - 大人な男のAuto Dev環境
PPTX
君をむしばむこの力で_最終発表-1-Monthon2025最終発表用資料-.pptx
Bsd suki 1. 2. なぜ BSD ?
• 四半世紀前にはじめての UNIX の仕事
が 4.3BSD でした
• 新人のころにコマンドのテストなどを
やらされ、 BSD が体に染みついていま
す
• 企業で作った SYSTEM V より Hacker
な感じがした
• 昔憧れの SUN も最初は BSD 系でした
• ペンギンよりもデーモンの方が可愛い
3. 4. OS の起動
• CPU がリセット後にフラッシュメモリ
からブートローダーを読み込みます
• ブートローダーがハードウエアの初期
化を行い、 OS の一部を読み込みます
• OS 本体がロードされて OS が起動し
ます
• UNIX はいったんシングルユーザまで
上がって、途中からマルチユーザにな
ります
• FreeBSD は数段階の処理に分かれてい
5. 6. UCB BSD
• FreeBSD より前の時代です
• AT&T の UNIX をベースにカリフォル
ニア州立大学バークレー校で開発され
ました
• AT&T と控訴しあい 4.4 をベースに完
全に AT&T の権利が及ばないコードに
なりました
• Socket,select,bpf,tcpdump などは
BSD での成果です
7. そもそも UNIX って?
• AT&T の研究所で 1969 年に作られま
した
• Multics という OS があったのですが
、使いづらかったため自分で作ったと
いう感じのようです
• 当初はアセンブラで作れていましたが
、早い時期にほとんどを C に書き直さ
れました
• DEC の PDP-7 が最初のプラットフォー
ムでした
8. おじさんが tcsh な訳
• 私が UNIX な仕事を始めたころには
bash がまだ出始めで一般的ではありま
せんでした
• csh を拡張しコマンドラインの編集が
できる tcsh が便利で使い始めました
• 出所の不明な tcsh をプロダクトに入れ
て KABA の人に怒られました
• とは言え、スクリプトは sh で作ります
9. 2038 年問題
• Unix の時間は 1970 年 1 月 1 日 0 時 0
分 0 秒からの秒で管理されています
• signed int(32bit) の上限 2G が 2038
年にオーバーフローします
• unsigned にしておけばかなり先まで大
丈夫だったんですが。。。
• JSON は 53 ビット幅だそうです
10. 実行ファイル形式
• FreeBSD 2 以前は a.out(assembler
output) 形式でした
• FreeBSD 3 以降は ELF になりました
• Mac OS X では Next 由来の Mach-O と
いう形式です
• file コマンドで種類が表示されます
a.c: ASCII C program text
a.out: ELF 64-bit LSB executable, AMD x86-64, version 1 (FreeBSD),
dynamically linked (uses shared libs), not stripped
/rescue/zcat: ELF 64-bit LSB executable, AMD x86-64, version 1 (FreeBSD),
statically linked, stripped
ppctest: Mach-O universal binary with 2 architectures
ppctest (for architecture i386): Mach-O executable i386
ppctest (for architecture ppc): Mach-O executable ppc
11. ライセンスのこと
• Linux 系は GPL だったりします
• BSD 系は BSD ライセンスです
• 私は自由度の高い BSD ライセンスが好
きです
• GPL は自由を通り越して窮屈です
12. Linux と BSD
• 同じ UNIX 系の OS でほぼ同時期に開
発が始まったのにシェアーには差がで
ました
• Linux は重厚長大になってきており、
シンプル&軽量な FreeBSD が好きで
す
• VM 環境は FreeBSD かなり弱いです
13. 14. 15. 結果
pipe 1 config delay 100ms 1 回目 2 回目
Apache gzip 1128ms 797ms
Apache 611ms 603ms
Java 922ms 623ms
pipe 1 config bw 64Kbit/s 1 回目 2 回目
Apache gzip 323ms 299ms
Apache 576ms 623ms
Java 448ms 397ms
pipe 1 config plr 0.1 1 回目 2 回目
Apache gzip 3117ms 117ms
Apache 113ms 3107ms
Java 95ms 114ms
パケットロス
10%
帯域規制
64Kbit/s
通信遅延
100ms×2
16. kqueue
• FreeBSD 4 からサポートされた event
処理のためのシステムコールです
• Select では 32 のエントリーしか管理
できませんでしたが、 kqueue では大
量の Socket などのエントリーを処理
できます
• tail –f が kqueue で実装されています
17. 18. DTrace
• Sun で開発されて FreeBSD にポーテ
ィングされました
• FreeBSD 7 でカーネル、 8 でユーザラ
ンドのサポートが入りました
• Red Hat などにはライセンス (CDDL)
の関係でポーティングされていません
• Mac OS X 10.5 にもポーティングされ
ました
19. 20. 21. 22. Grand Central Dispatch
• Apple が開発して FreeBSD 9 にもポー
ティングされ 11 で正式サポート予定
• FreeBSD では kqueue を使って実装さ
れています
• 処理ブロックを queue に乗せて適宜ス
レッド処理にすることができます
• Queue にのせると Core の数などによ
り最適なスレッドが生成され処理され
ます
• コンパイラーにもちょっと手が入って
23. サンプルコード
#include <dispatch/dispatch.h>
#include <err.h>
#include <stdio.h>
#include <stdlib.h>
int
main(int argc, char *argv[])
{
dispatch_queue_t q;
dispatch_time_t t;
q = dispatch_get_main_queue();
t = dispatch_time(DISPATCH_TIME_NOW, 5LL * NSEC_PER_SEC);
// Print a message and exit after 5 seconds.
dispatch_after(t, q, ^{
printf("block_dispatchn");
exit(0);
});
dispatch_main();
return (0);
}
24. 25. Mac OS X とは
Mach OS
C
IOUSB…
C,C++
Cocoa
Objective C
Carbon
C
BSD
C
Application
CPU Memory I/O
IOKit
C,C++
26. Mach OS とは
• CMU で開発されたマイクロカーネル
OS
• メモリの管理とプロセスの管理が
kernel の管理することで、 IO やネッ
トワークは別に管理すべきであるとい
う思想に基づいています
• プロジェクトリーダは MS に転職
• OSF というプロジェクトでも利用され
ました
• Next が採用し、 Apple でも利用され
27. Mac OS の歴史
1.0 3.4 7.0 7.1 8.1 8.6 9.2.2
HFS
AppleEvent
AppleScript
Componet
Manager
QuickTime
PowerPC
Carbon
HFS+
PowerPC
EOL
10.0 10.4 10.5 10.7
Classic
EOL
Carbon
EOL
Intel
64Bit
Java
Support
EOL
10.6
DTrace
GCD
Rosetta
EOL
Copland
OpenTransport
7.5
28. • ハードをいじるときは OS を止めて、 OS
をいじるときはハードを止めます
• PowerPC 導入の時は、 MacOS 7.1 で止め
て PowerPC をリリースしました
• MacOS X 導入の時は PowerPC のままリリ
ースしました
• Intel 導入の時は MacOS X 10.4 をリリー
スしてからリリースしました
Apple のリリースポリシー
29. 30. 31. OMRON のこと
• もともと社内で CAD などで使う SUN
が高かったので自分で作ろうというこ
とで始まった事業です
• 通産省の Σ プロジェクトに参加してま
した
• 途中から LUNA というブランド名でし
た
• BSD や Mach OS もポーティングしま
した
• Motorola の RISC チップ M88K も利用
32. 33. 34. 35.