File:  [NetBSD Developer Wiki] / wikisrc / users / jun / intro.mdwn
Revision 1.1: download - view: text, annotated - select for diffs
Mon May 28 11:43:19 2012 UTC (9 years, 4 months ago) by wiki
Branches: MAIN
CVS tags: HEAD
web commit by jun

    1: ## NetBSD
    2: 
    3: ### こういうOSが欲しい
    4: - コンピュータは世界中にある
    5: - 昔の計算機から最近のパソコン/組込まで目についたすべてのコンピュータで動くOS
    6: - 手持ちの周辺機器が全部使えるOS
    7: - すべてのソフトウェアが動くOS
    8: - ソースコードを自由に使えるOS
    9: -  読む/書く/引用する/売る
   10: 
   11: ### NetBSD
   12: - 4.3/4.4BSD&386BSDベース
   13: - 1993年3月21日から開始 
   14: - 今年18周年
   15: - 2012年2月11日にNetBSD5.1
   16: - 58種類のハードウェアを単一ソースでサポート
   17: - ハードウェア依存/非依存部分を分離
   18: - 最新のネットワークプロトコルをサポート
   19: - IPv6 マルチキャスト標準サポート
   20: - 商用ルータ・プリンタ・家電製品に組み込まれる例も
   21: - http://www.NetBSD.org/
   22: 
   23: - http://commons.wikimedia.org/wiki/File:Unix_history-simple.png
   24: 
   25: ### NetBSDのライセンス
   26: - 著作権表示
   27: - ソースコードの再配布においては、上記の著作権表示、この条件の列挙、下記の注意書きを残すこと。
   28: - バイナリー形式の再配布においては、上記の著作権表示、この条件の列挙、下記の注意書きを、配布物に付属した文書および/または他のものに再現させること。
   29: - 注意書き
   30: - このソフトウェアに関して問題が生じても、作者は責任を負わない
   31:  [http://www.netbsd.org/ja/about/redistribution.html]
   32: 
   33: ### BSDライセンスとNetBSD
   34: - 著作権表示を保存する
   35: - 転用して販売できる
   36: - ソースの公開義務なし
   37:  [http://www.NetBSD.org/about/redistribution.html]
   38: - ライセンス条項が異なるソースを分離する
   39: - GNUは/usr/src/gnu以下に
   40: - /usr/src/external/gpl3
   41: 
   42: ### 管理元が異なるソースを分離する
   43: 
   44: - /usr/src/dist
   45: 	bzip2,dhcp,file,ipf,iscsi,libpcap,nawk,ntp,nvi...
   46: - /usr/src/crypto/dist
   47: 	heimdal,ipsec-tools
   48: - /usr/src/external
   49: 	bsd
   50: 	am-util,atf,bind,dhcpcd
   51: 	gpl2
   52: 	lvm2,xcvs
   53: 	intel-fw-oem
   54: 	intel-fw-public
   55: 	intel-public
   56: 	acpica
   57: 	mit
   58: 	xorg
   59: 
   60: ### GPLv3
   61: - ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-current/src/external/gpl3/README
   62: - http://www.gnu.org/licenses/gcc-exception-faq.html
   63: - gcc 4.1.3で止める→4.5.3に移行
   64: - GCCを捨ててpccかllvm
   65: - pccで動く(i386/2011/5/10)
   66: - gettextは0.14.4
   67: - ブートローダをGPLじゃないものに置き換える
   68: 
   69: ### 単一ソースコード
   70: - 単一ソースツリーで
   71: - CPUアーキテクチャ 15種類
   72: - 58種類のプラットホームで動く
   73: - 16種類のバスサポート
   74: - ATA,CardBus,EISA,PCI,PCMCIA,VME
   75: 
   76: ### 新しく移植するときには
   77: - まず、機種に依存しない部品を組み合わせる
   78: - CPU..バス..
   79: - 機種依存部分だけを追加する
   80: 
   81: - Alpha/arm/acorn26/acorn32/cats/evbarm/hpcarm/Netwinder
   82: - shark/WZero3/evbarm/hppa/hp700/i386/sun2/
   83: - Amiga/Atari/Cesfic/Hp300/Luna68k/Mac68k/Mvme68k/News68k/next68k
   84: 
   85: ### ドリームキャスト版CD
   86: - http://ftp.netbsd.org/pub/NetBSD/misc/tsutsui/dreamcast/
   87: dreamcastbootcd-20101010.tar.gz
   88: - CD-R付きNetBSDマシンで展開
   89: - CD-R入れる
   90: - makeすると、バイナリをダウンロードしてブートCDが焼ける
   91: - dreamcastに入れて起動
   92: 
   93: ### X68030
   94: - X68kエミュレータ
   95: - XM6i
   96: - NetBSDがブートします
   97: - http://www.xm6i.org/
   98: - OSC広島で祭り
   99: - 21世紀のX68
  100: - CPU内部の挙動を細かく観測できる
  101: - ATCエントリが見える
  102: 
  103: ### サポートハードウェア 56種類
  104: 
  105: ### 4.4BSD由来の機能
  106: - Nullfs – loopbackマウント
  107: - Unionfs – ファイルシステムを重ねる
  108: - Lfs – 高速書き込み性能
  109: - NFS – NFSv3 NFSoverTCP
  110: - IP virtual hosting
  111: 
  112: ### NetBSD独自の改良
  113: - NFS – WebNFS
  114: - NFS over IPv6
  115: - UVM virtual memory system
  116: - UBC  unified buffer cache system
  117: - Cardbus
  118: - Wscons
  119: - USB ver2.0
  120: - 64bit clean
  121: - Wireless networking
  122: - http://www.NetBSD.org/about/features.html
  123: - ZFS? Google Summer of Code
  124: 
  125: ### アーキテクチャに共通する部分
  126: - Package system
  127: - バス USB、CardBus
  128: - デバイスドライバ
  129: - オーディオフレームワーク
  130: - OSエミュレーション
  131: - バスサポート
  132: - 仮想デバイス
  133: - Concatenated disk driver
  134: - Memory disk driver
  135: - RAIDframe disk
  136: - Random device
  137: - Vnode disk
  138: - 物理デバイス
  139: - オーディオデバイス
  140: - WSCONS - ワークステーションコンソール
  141: - wsdisplay
  142: - wskbd
  143: - wsmouse
  144: 
  145: ### NetBSD:カーネル
  146: - 機種に依存する部分
  147: - i386/MIPS/SH/68000…
  148: - デバイスに依存する部分
  149: - PCIバス/ISAバス/PCMCIA…
  150: - その他
  151: - メモリ管理
  152: ### 新しいマシンをサポートするには
  153: - 搭載CPUがサポートされているか?
  154: - 搭載バスがサポートされているか?
  155: - 搭載デバイスがサポートされているか?
  156: - 共有部分はすべてで共有できる
  157: - サポートされていない部分だけを作り
  158: -     CVSツリーに追加する
  159: ### Package - /usr/pkgsrc 
  160: - 簡単にソフトウェアをコンパイル・インストール
  161: - 1997年8月開始ー今年で13年目 
  162: - 2011-Q2 もうすぐ準備
  163: - 41種類のジャンル
  164: - 9963種類以上のソフトウェア
  165: - Make installでソフトウェアのインストール
  166: - 各CPUアーキテクチャ間で共通
  167: - Mipsel –mips endian little
  168: - Arc – MIPSで動くNTマシン
  169: - Cobalt – Cobalt Qube1/2
  170: - Pmax – DEC station
  171: - Hpcmips – MIPS搭載WinCE
  172: - NetBSD/Solaris/Linux/Darwin/FreeBSD/OpenBSD/
  173: - IRIX/BSDOS/AIX/SUA(Interix)/DragonFlyBSD/OSF1/hpux
  174: ### エミュレータ
  175: - /usr/pkgsrc/emulators
  176: - gxemul
  177: - mips (pmax,hpcmips)
  178: - dreamcast
  179: - simh
  180: - NetBSD/vax
  181: - tme
  182: - sun2,sun3,SPARCstation 2
  183: - QEMU
  184: - PC
  185: - USBデバッグ
  186: ### Packagesジャンル一覧
  187: - ソフトウェアのコンパイル/インストール
  188: - drupal
  189: - cd /usr/pkgsrc/www/drupal6
  190: - make package
  191: - make install
  192: - 関連するソフトウェアがインストール
  193: - OpenOffice
  194: - cd /usr/pkgsrc/misc/openoffice3
  195: - make package
  196: - make install
  197: - /usr/pkg/bin/soffice ....
  198: ### NetBSDを使う時
  199: - OSをインストールする
  200: - pkgsrc.tar.gzを取得
  201: - 必要なパッケージをインストール
  202: - tcsh,icewm,kterm,anthy-elisp,ja-less
  203: - openoffice,firefox,gimp
  204: - 目的別
  205: - デスクトップ向け
  206: - 組み込み向け
  207: - pkgsrc/meta-pkgにいくつかある
  208: ### Package対応プラットフォーム
  209: - NetBSD
  210: - FreeBSD
  211: - OpenBSD
  212: - BSD/OS
  213: - Solaris
  214: - Linux
  215: - DragonflyBSD
  216: - (SSD Linux)
  217: ### Package – NetBSD以外での利用
  218: ### Packageとライセンスの取扱い
  219: - 個々のパッケージごとにLICENSE定義
  220: - 受け入れられるライセンスを制御したい
  221: - ツールとライブラリのライセンスが違う
  222: - ツールがGPL,ライブラリがLGPL
  223: - GPLv2とv3が混在する例
  224: - rubyとreadline6
  225: - GPL2とGPL2 or laterの区別
  226: - GPL3とリンクできるかできないか
  227: - http://d.hatena.ne.jp/obache/20090922/
  228: 
  229: ### NetBSDのリリース
  230: - リリース版2.0 3.0 4.0 5.0......
  231: - マイナーリリース 2.1.. 3.1...
  232: - パッチリリース   2.1.1... 3.1.1...
  233: - 開発版 2.99 3.99 4.99 5.99...
  234: - カーネルAPIの変更があるとき 2.99.1...
  235: ### NetBSD開発ロードマップ
  236: - NetBSD5.1サポート機能
  237: - RAIDframe parity maps, which greatly improve parity rewrite times  after unclean shutdown
  238: - X.Org updates
  239: - Support for many more network devices
  240: - Xen PAE dom0 support
  241: - Xen PCI pass-through support
  242: ### NetBSD6.0に入れたい機能
  243: - kernel modules
  244: - kernel scalability improvements
  245: - 64bit time_t (solves year 2038 problem)
  246: - DTrace
  247: - ZFS
  248: - NILFS
  249: - Logical Volume Manager
  250: - NPF (New Packet Filter)
  251: - Thread Local Storage
  252: - Xen SMP support 
  253: ### NetBSD6.0に入れたい機能(2)
  254: -  automated tests
  255: -  improved puffs (Pass-to-Userspace Framework File System)
  256: - improved rump (Runnable Userspace Meta Program kernel)
  257: - UltraSPARC III(+) support
  258: - MIPS 64bit support
  259: -  a lot of updated and new 3rd party software
  260: - Automated Testing Framework
  261: - cd /usr/tests;
  262: - atf-run | atf-report
  263: ### 組織構成
  264: - Core 5人 テクニカルマネージメント
  265: - Port maintainer 28人
  266: - 各実装に関する担当者
  267: - Developer
  268: - CVS/WWW/FTP等開発資産に書き込みできる
  269: - アクティブなのは188人
  270: - NetBSD Foundation,Inc
  271: - デラウェア州の法人組織
  272: - サーバマシンを所有
  273: - お金と寄付を管理
  274: - NetBSDの版権を管理
  275: ### developer
  276: - 直接ソースを変更できる
  277: - CVS/FTP/WWWサーバの内容
  278: - 世界中で188人
  279: - GNATSでバグ管理
  280: - Cvsweb.netbsd.org
  281: - 日本人38人
  282: ### NetBSD開発者世界分布図
  283: - NetBSD開発者分布図
  284: ### Developerになるには(1)
  285: - 	去年のクリパでやったこと
  286: - PGP/GnuPGの鍵を作る
  287: - fingerprint印刷
  288: - gpg --fingerprint jun@soum.co.jp
  289: - fingerprint交換
  290: - 他のDeveloperとfingerprint印刷を交換
  291: - 本人確認
  292: - 公的証明書を見せあって本人確認
  293: ### Developerになるには(2)
  294: - 相手の鍵を取り込んで、fingerprint照合
  295: - gpg-email-confirm soda@netbsd.org..
  296: - ランダムな文字列を送る
  297: - メールを暗号化して送り返してもらう
  298: - 送った文字列とメールアドレスを照合する
  299: - 鍵にサインしてもらって送り返してもらう
  300: - Developerサイン入り自分の鍵ができる
  301: - 自分の鍵束にimport
  302: - pgp.mit.eduにサイン入り自分の鍵を登録する
  303: ### 世界中で打ち合わせをする時間
  304: -  May 21 03:00 PM -0700 America/Los_Angeles
  305: -  May 21 06:00 PM -0400 America/New_York
  306: -  May 21 11:00 PM +0100 Europe/London
  307: -  May 22 00:00 AM +0200 Europe/Berlin
  308: -  May 22 01:00 AM +0300 Europe/Helsinki
  309: -  May 22 07:00 AM +0900 Asia/Tokyo
  310: -  May 22 08:00 AM +1000 Australia/Melbourne
  311: ### Port-maintainer
  312: - 移植責任者
  313: - 57種類のうち15種類以上は日本人が担当
  314: ### 日本人担当ハードウェア15/56
  315: - NetBSD動作マシン@日本
  316: ### 日本からの貢献
  317: - 国産ハードウェアサポート
  318: - ゲーム機・携帯情報端末サポート
  319: - IPv6/ IPSEC
  320: - Pkgsrc
  321: - CardBusサポート
  322: - MIPS/SH/m68K
  323: - NetBSD書籍が世界一多く出版される
  324: - developer53人
  325: ### WindowsCE向けNetBSD
  326: - MIPS系CPU搭載
  327: - NEC MobileGear
  328: - SHARP Tellios
  329: - SH系CPU搭載
  330: - HP ジョルナダシリーズ
  331: - SEGA DreamCast
  332: - StrongARM系CPU搭載
  333: - Compaq iPAQ
  334: - HP ジョルナダシリーズ
  335: - WZero3
  336: ### ブートまでの流れ
  337: - コンパクトフラッシュを2分割
  338: - WindowsCEの領域
  339: - NetBSD/hpcmipsの領域
  340: - WindowsCE上のブートローダからブート
  341: - メモリ空間を取れるだけ確保する
  342: - カーネルファイルをメモリ空間に送り込んで
  343: - NetBSDの世界へ飛び込んでゆく
  344: ### NetBSD/hpcsh
  345: - SH搭載WindowsCEマシン向け
  346: - HP Jornada680 690 620LX
  347: - 日立ペルソナ HPW50 230
  348: - (NetBSD/sh3+NetBSD/hpcmips)/2+α
  349: ### 従来の開発ノウハウとソフトウェア資産
  350: - NetBSD/hpcmipsとのソース共有化
  351: - NetBSD/Dreamcast互換
  352: - 
  353: - NetBSD/hpcarm
  354: - StrongArm搭載WindowsCEマシン向け
  355: - SA-1100/1110対応
  356: - HP Jornada720
  357: - WZero3
  358: - Compaq iPAQ
  359: - hpcファミリー中最速
  360: - 
  361: ### クロス開発環境
  362: - NetBSD/i386でクロスコンパイル
  363: - build.sh –m hpcmips –D /hpcmips-root
  364: - Pkgsrc/cross以下に各種パッケージ
  365: - Windows環境でクロスコンパイル
  366: - Cygwinなど
  367: - Linux上でクロスコンパイル
  368: - FreeBSD上でクロスコンパイル
  369: - distcc - コンパイルだけ速いマシンで
  370: - pkgsrcをクロスコンパイル
  371: - pkgsrcのcrossbuildでググる!
  372: - http://www.lins.jp/~obata/diary/200803242.html
  373: - クロス用toolsを作る
  374: ### バイナリ互換性を利用する
  375: - Cobalt Qube2でhpcmipsバイナリ作成
  376: - MIPSでendian little =mipsel同士なら動く
  377: - ユーザランドはほとんどそのまま動く
  378: - パッケージも共通化
  379: - NetBSD/{pmax,cobalt,arc,hpcmips}で共通
  380: - 数GBある各種アプリケーション群を共通にする
  381: - エミュレーション環境
  382: - Linux
  383: - I386以外のバイナリも動くようにする
  384: - FreeBSD
  385: - Windows2000/XP
  386: - PECOFF
  387: - Win32アプリケーションをそのまま動かす
  388: - ゲームなど
  389: - Unixware
  390: ### 移植成果をNetBSDに組み込む
  391: - カーネル部分を移植する
  392: - セルフコンパイルでスナップショット作成
  393: - パッケージソフトウェアセットを作る
  394: - ドキュメント整備
  395: - Web・マニュアル・FAQ
  396: - インストーラを作る
  397: - メーリングリストを作る
  398: ### プログラミング以外にすること
  399: - Port登録 NetBSD/???? 部分
  400: - Webページ作成
  401: - バグレポートデータベース作成
  402: - GNATS
  403: - マニュアル作成
  404: - インストールマニュアル・マニュアル・FAQ
  405: - メーリングリスト作成
  406: - ニュースとして報告
  407: ### EeePC&Netbook
  408: - Escape押して起動ディスク選択
  409: - バックアップCDあり
  410: - ディスプレイ
  411: - 82915GM
  412: - Attansic Technologies L2 100Mbit Ethernet Adapter
  413: - http://www.NetBSD.org/ports/i386/netbook.html
  414: - VAIO Type P
  415: - 
  416: ### NetBSD開発者情報
  417: - ftp/WWW/CVS/SUPサーバ
  418: - http://www.jp.netbsd.org/ja/JP/sites.html
  419: - 開発環境設定方法
  420: - http://www.netbsd.org/developers/
  421: - メーリングリスト
  422: - http://www.jp.netbsd.org/ja/JP/ml.html
  423: - netbsd-request@re.soum.co.jp
  424: - 1994/11-  10年以上! 参加者600名
  425: -  http://releng.netbsd.org  
  426: ### ソースコード取得方法
  427: - ftp
  428: - Cvs
  429: - cvsup
  430: - Sup
  431: - Anonymous CVS
  432: - rsync
  433: ### Japan NetBSD Users’ Group
  434: - 1999年8月21日成立
  435: - 日本のNetBSDユーザに便宜を図る
  436: - FTP/CVS/WWWサーバの管理
  437: - ドキュメント・WWWページ翻訳
  438: - 場所提供:IIJ
  439: - http://www.jp.netbsd.org/
  440: - 年一度定期総会・BoFを実施
  441: - 次回は2012/7/?
  442: - 東京 根津 東大武田先端知ビル
  443: ### www.netbsd.org 翻訳
  444: - 現在
  445: - www.netbsd.org上のCVSリポジトリ
  446: - 削除→各国のwwwサーバ
  447: - 各国の翻訳
  448: - ドイツ語
  449: - 韓国語
  450: - ポーランド語
  451: - フランス語
  452: - 緊急度の高い情報を正確に広報する
  453: - 古いドキュメントでもあった方がいいか
  454: - そもそも英語のドキュメントは正確か
  455: ### 国内BSDユーザグループ
  456: - http://www.netbsd.org/gallery/groups.html
  457: - BBQ
  458: - BSD Users Group,Shinshu
  459: - Chofu *BSD Users’ Group
  460: - Chiba *BSD Users’ Group
  461: - Daibou East *BSD Users Group
  462: - Echigo BSD Users Group
  463: - Kansai *BSD Users Group
  464: - Nagoya *BSD Users Group
  465: - Northern land BSD Users Group
  466: - Shikoku *BSD Users Group
  467: - Tohoku BSD Users Group
  468: ### まとめ
  469: - NetBSDはいろんなハードで動きます
  470: - 自作ソフトをいろんなCPUで試せます
  471: - 最初から移植を考えて設計されています
  472: - 試作機に移植する工数が最小ですみます
  473: - 自分の専門分野だけを組み込めます
  474: - 自由に利用可能で再配布可能なOSです
  475: - 移植するとIPv6マシンに変貌
  476: - さまざまなCPU向けIPv6スタックがあります
  477: - 愛着あるハードウェアが生き返ります
  478: - 最新のネットワークコードが利用できます
  479: - もしかしたらリサイクル団体なんでしょうか?

CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb