FreeBSDで遊ぶ
(ハードとソフトのページ)

powered
HOME
Ethnaのインストール
Pearのインストール
PHP-4.3.10+GD
  インストール

FreeBSD-5.3 SMP
  (Dual-CPU)化
FreeBSD-4.0 SMP
  (Dual-CPU)化
Timerプログラミング
危険なうさぎと遊ぶ
タイムサーバで遊ぶ
Vine2.6 Linux
リンク集

FreeBSD-4.0 SMP(Dual−CPU)化

1)FreeBSD-4.0稼動中PCスペック 

名 称
内 容
備考
CPU PentiumV600MHz×2(Dual)  
RAMメモリ 256MB (DIMM 128MB×2)
CASEケース SVECFD7130-DP 300W 4U FA19インチラック収納
M/B> TYAN製 S1832DL Tiger100
Video ATI 3D Rage Pro Turbo AGP 8MB
SCSI I/F Adaptec2930 20MB/Sec
HDD(RVC 内蔵) IDE(IBM) 15GB(system)×1, 30GB(data)×1
NetWorkCard Intel PILA8460B Management Adaptor
FDD 2モード・ドライブ
メンテナンスKey 108Key
メンテナンス(CRT) VGAモード

2)ちなみにFreeBSD-4.0にインストールされているサーバ関連
 (1)Apache-1.3.12、Samba-2.0.6 イントラネットで運用中です


3)FreeBSD Symmetric Multi-Processor Kernl
  (Symmetric Multi-Processor Kernl)

4)FreeBSD-4.0 インストール 19インチラックサーバ
FreeBSD-4.0  内部外観写真公開

 (1)カスタムカーネルの構築とインストール

FreeBSD ハンドブックより
Note: もし, あなたのシステムに/usr/src/sys 以下のディレクトリがなければ, カーネルのソースが インストールされていません. もっとも簡単な方法は (rootで) /stand/sysinstall を用いて以下のようにします. 設定(Configure) を選んでから 配布ファイル(Distribution) を選択し, src の中の sys をインストールしてください. つぎに, i386/confに移動して, GENERIC コンフィグレーションファイルをカーネルに与えたい名前にコピーしてください. たとえば:
  # cd /usr/src/sys/i386/conf
  # cp GENERIC MYKERNEL ← お好きな名称に変更 例:BSD01
慣習として, この名前はすべて大文字でつづられます. もし, いくつかの異なるハードウェアのFreeBSDマシンを扱うなら, この名前にホスト名を含めるとよいでしょう. ここでは, 例として MYKERNEL と呼ぶことにします.
Note: この作業は root権限でおこなう必要があります. そうでなければ, permission deniedというエラーが出ます.
では, MYKERNEL をあなたの好きなエディタで編集してください. もし, システムをインストールしたばかりならば, 利用できるエディタは viだけかもしれません. ここでは使い方 の説明はしませんが, 参考図書にあるような多くの本で詳しく説明 されていますので, そちらを参照してください. FreeBSD にはより簡単なエディタとして ``ee'' があります. 初心者の方であればこちらをエディタに選ぶとよいでしょう. まずファイルの最初の方のコメント行を編集し, あなたのコンフィグ レーションに合せて変更した点などを記述して GENERIC と区別がつくようにしておきましょう.
もし SunOSや他の BSDオペレーティングシステムでカーネルの 再構築をしたことがあれば, このファイルはとても親しみやすいでしょう. しかし, DOSのようなその他の オペレーティングシステムしか知らない人から見れば, GENERIC コンフィグレーションファイルはとても なじみにくいものかもしれません. そのような場合は, コンフィグレーションファイル の節をゆっくりと注意深く読んでください.
Note: 古いバージョンの FreeBSD からアップグレードを おこなう場合, 新しいカーネルソースを得た場所より新しいバージョンの config(8) を取ってくる必要があるかもしれません. これは /usr/src/usr.sbinにあります. したがってこれらのソースをダ ウンロードする必要があります. 次のコマンドを実行する前に (configを)作りインストールをしておいてください.

 (2) (2)編集個所は5758行目のコメント#を取り除くだけです 以下の2箇所です
    56行目には # To make an SMP kernel, the next two are needed
    (SMPカーネルを有効にするためには、次の2個所を必要とします)

    1        #
    2        # GENERIC -- Generic kernel configuration file for FreeBSD/i386
    3        #
    4        # For more information on this file, please read the handbook section on
    5        # Kernel Configuration Files:
    6        #
    7        #    http://www.freebsd.org/handbook/kernelconfig-config.html
    8        #
    9        # The handbook is also available locally in /usr/share/doc/handbook
   10        # if you've installed the doc distribution, otherwise always see the
   11        # FreeBSD World Wide Web server (http://www.FreeBSD.ORG/) for the
   12        # latest information.
   13        #
   14        # An exhaustive list of options and more detailed explanations of the
   15        # device lines is also present in the ./LINT configuration file. If you are
   16        # in doubt as to the purpose or necessity of a line, check first in LINT.
   17        #
   18        # $FreeBSD: src/sys/i386/conf/GENERIC,v 1.246 2000/03/09 16:32:55 jlemon Exp $
   19        
   20        machine                i386
   21        cpu                       I386_CPU
   22        cpu                       I486_CPU
   23        cpu                       I586_CPU
   24        cpu                       I686_CPU
   25        ident                     GENERIC
   26        maxusers 32
   27        
   28        #makeoptions         DEBUG=-g         #Build kernel with gdb(1) debug symbols
   29
   30        options   MATH_EMULATE                #Support for x87 emulation
   31        options   INET                        #InterNETworking
   32        options   INET6                       #IPv6 communications protocols
   33        options   FFS                         #Berkeley Fast Filesystem
   34        options   FFS_ROOT                    #FFS usable as root device [keep this!]
   35        options   MFS                         #Memory Filesystem
   36        options   MD_ROOT                     #MD is a potential root device
   37        options   NFS                         #Network Filesystem
   38        options   NFS_ROOT                    #NFS usable as root device, NFS required
   39        options   MSDOSFS                     #MSDOS Filesystem
   40        options   CD9660                      #ISO 9660 Filesystem
   41        options   CD9660_ROOT                 #CD-ROM usable as root, CD9660 required
   42        options   PROCFS                      #Process filesystem
   43        options   COMPAT_43                   #Compatible with BSD 4.3 [KEEP THIS!]
   44        options   SCSI_DELAY=15000            #Delay (in ms) before probing SCSI
   45        options   UCONSOLE                    #Allow users to grab the console
   46        options   USERCONFIG                  #boot -c editor
   47        options   VISUAL_USERCONFIG           #visual boot -c editor
   48        options   KTRACE                      #ktrace(1) support
   49        options   SYSVSHM                     #SYSV-style shared memory
   50        options   SYSVMSG                     #SYSV-style message queues
   51        options   SYSVSEM                     #SYSV-style semaphores
   52        options   P1003_1B                    #Posix P1003_1B real-time extentions
   53        options   _KPOSIX_PRIORITY_SCHEDULING
   54        options                  ICMP_BANDLIM #Rate limit bad replies
   55        
   56        # To make an SMP kernel, the next two are needed
   57        options            SMP                # Symmetric MultiProcessor Kernel
   58        options            APIC_IO            # Symmetric (APIC) I/O
   59        # Optionally these may need tweaked, (defaults shown):
   60        #options NCPU=2                       # number of CPUs
   61        #options NBUS=4                       # number of busses
   62        #options NAPIC=1                      # number of IO APICs
   63        #options NINTR=24                     # number of INTs
   64        
   65        device                   isa
   66        device                   eisa
   67        device                   pci


編集し終ったら、次のコマンドによってコンパイル, インストール を行って下さい。
# /usr/sbin/config MYKERNEL
# cd ../../compile/MYKERNEL
# make depend
# make
# make install
 新しいカーネルはルートディレクトリに /kernelという 名前でコピーされ、今までのカーネルは /kernel.old という名前へ変更されます。では、システムをシャットダウン、リブートして新しいカーネルを使って下さい。うまく行かない場合は、この章の終りの 問題が起きた場合には を参照して下さい。この章の新しいカーネルがブートしない場合のリカバリの方法を注意深く読んでおいて下さい。
 (3)FreeBSD-4.0でTOPコマンドで、MAP(Duaul)CPU0(画面-1)、
    CPU1(画面-2)が動作が確認されればOKです。
画面-1
画面-1
画面-2
画面-2