Kernel FreeBSD

Bagian 2

Kernel FreeBSD

 

 

Kernel sangat penting diperhatikan karena kernel adalah hati operating system. Kernel sangat menentukan performa dari operating system UNIX. Semakin kecil ukuran file kernel, semakin baik, artinya tidak membutuhkan page memory yang besar. Kernel merupakan penghubung antara mesin dan shell. Sebelum software aplikasi mengakses hardware pipe penghubungnya adalah kernel. Kernel mengalokasikan memori tiap program, pembagian waktu proses, operasi Input output dan lain lain.

Kernel disini termasuk didalamnya  akan membahas, konfigurasi kernel awal, pengenalan hardware, pengenalan hardware dan instalasinya.

  1. Konfigurasi Kernel Awal

 

Kernel yang digunakan dalam FreeBSD saat atau sehabis installasi adalah kernel.GENERIC. Kernel ini dibuat sesuai dengan stadar yang dibuat oleh FreeBSD owner.  Kernel tersebut terletak pada direktory /. Kernel ini memuat beragam jenis hardware processor dan options tertentu yang terkadang tidak sesuai dengan komputer yang kita miliki. Sehingga sangat tidak effisien, dan kadang timbul konflik hardware. Untuk itu perlu menghilangkan device tertentu yang tidak dibutuhkan pada saat installasi. Agar saat boot seluruh device yang tercatat dalam kernel.GENERIC tersebut tidak di probe untuk mempersingkat waktu dan menghindari konflik hardware. Normalnya sehabis installasi konfigurasi kernel tersebut sudah disimpan dalam direktory /boot.

Konflik hardware biasanya dialami pada saat installasi FreeBSD, adakalanya installasi yang tidak tuntas juga menyebabkan tidak disimpannya kernel konfigurasi yang diletakkan pada direktory /boot. Untuk lebih memahami hal tersebut kita bahas masalah ini dalam bagian kernel.

Dibawah ini adalah tampilan kernel configuration menu yang diambil saat installasi FreeBSD atau bisa di dapat dengan menuliskan boot : kernel –c pada saat FreeBSD starting system.

 

 

 

Kernel Configuration Menu

 

Skip kernel configuration and continue with installation.

Start kernel configuration in full screen Visual mode.

Start kernel configuration in CLI mode.

 

Here you have the chance to go into kernel configuration mode, making any changes which may be necessary to properly adjust the kernel to match your hardware configuration.

If you are installing FreeBSD for the first time, select Visual Mode (press Down-Arrow then ENTER).

If you need to do more specialized kernel configuration and are an experienced FreeBSD user, select CLI mode.

If you are certain that you do not need to configure your kernel the simply press ENTER or Q now.

 

 

Pada tampilan UserConfig pada menu Visual mode dapat dilihat jika peralatan hardware yang ada mengalami konflik. 

 

—Active-Drivers—————–7 Conflicts——Dev—IRQ–Port–
Storage:          (Collapsed)
Network:          (Collapsed)
Communications:   (Collapsed)
Input:            (Collapsed)
Multimedia:
Miscellaneous:    (Collapsed)

—Inactive-Drivers———————————Dev————–
Storage:
Network:
Communications:   (Collapsed)
Input:
Multimedia:
Miscellaneous:    (Collapsed)
———————————————————————

———————————————————————
[Enter] Expand device list [X] Expand all lists
[TAB] Switch fields [Q] Save and Exit [?] Help

 

Untuk melihat secara detail dari menu diatas tekan X. Buanglah device yang tidak terpakai atau mengalami konflik dengan hardware lain. Jangan di-disable Keyboard (atkbd0) dan Syscons console driver (sc0) karena anda memerlukan ini.

—Active-Drivers————————————Dev—IRQ–Port–
Storage:
ATA/ATAPI compatible disk controller                 ata0   14  0x1f0
Floppy disk controller                               fdc0    6  0x3f0
Network:
Communications:
Parallel Port chipset                                ppc0    7
8250/16450/16550 Serial port                         sio0    4  0x3f8
8250/16450/16550 Serial port                         sio1    3  0x2f8
Input:
Keyboard                                             atkbd0  1
PS/2 Mouse                                           psm0   12
Syscons console driver                               sc0
Multimedia:
Miscellaneous:
Math coprocessor                                     npx0   13   0xf0
—Inactive-Drivers———————————Dev————–
Storage:
AdvanSys SCSI narrow controller                     adv0
Adaptec 154x SCSI controller                        aha0
Adaptec 152x SCSI controller                        aic0
ATA/ATAPI compatible disk controller                ata1    15  0x170
Buslogic SCSI controller                            bt0

Network:
IBM EtherJet, CS89x0-based Ethernet adapters        cs0         0x300
NE1000,NE2000,3C503,WD/SMC80xx Ethernet adapt        ed0     10  0x280
Fujitsu MD86960A/MB869685A Ethernet adapters         fe0      0x300
AT&T Starlan 10 and EN100,3C507,NI5210 Ether         ie0     10  0x300
DEC Etherworks 2 and 3 Ethernet adapters             le0      5  0x300
Isolan, Novell NE2100/NE32-VL Ethernet adapt         lnc0    10  0x280
SMC/Megahertz Ethernet adapters                      sn0     10  0x300

Communications:
8250/16450/16550 Serial port                        sio2
8250/16450/16550 Serial port                        sio3
Input:
Multimedia:
Miscellaneous:
PC-card controller                                  pcic1
PC-card controller                                  pcic0   10  0x3e0
———————————————————————

———————————————————————
[Enter] Expand device list [X] Expand all lists
[TAB] Switch fields [Q] Save and Exit [ ? ] Help

 

Layar diatas dibagi dalam 2 bagian besar yaitu driver yang active (Active Drivers) dan tidak aktif (Inactive Drivers). Driver yang tidak terpakai atau didisable akan terletak pada Inactive Drivers, sedangkan yang active akan tetap berada pada Active Drivers. Simpan konfigurasi ini dengan menekan “Q”  kemudian muncul pertanyaan sebagai berikut :

Save these parameters before exiting? ([Y]es/[N]o/[C]ancel)

Jawab “y” maka dimulai proses probing kernel. Probing kernel ini akan disimpan dalam buffer. Untuk menampilan kernel message ini dapat menggunakan perintah :

$dmesg

 

Maka akan tampil sebagai berikut :

$dmesg

avail memory = 58880000 (57500K bytes)
Preloaded elf kernel “kernel” at 0xc065d000.
md1: Malloc disk
npx0: <math processor> on motherboard
npx0: INT 16 interface
pcib0: <Host to PCI bridge> on motherboard
pci0: <PCI bus> on pcib0
pcib1: <VIA 82C598MVP (Apollo MVP3) PCI-PCI (AGP bridge> at device 1.0 on pci0
pci1: <PCI bus> on pcib1
pci1: <Matrox MGA G200 AGP graphics accelerator> at 0.0 irq 11
isab0: <VIA 82C586 PCI-ISA bridge> at device 7.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <VIA 82C586 ATA33 controller> port 0xe000-0xe00f at device 7.1 on pci0
ata0: at 0x1f0 irq 14 on atapci0
uhci0: <VIA 83C572 USB controller> port 0xe400-0xe41f irq 10 at device 7.2 on pci0
usb0: <VIA 83C572 USB controller> on uhci0
usb0: USB revision 1.0
uhub0: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
chip1: <VIA 82C586B ACPI interface> at device 7.3 on pci0
isa0: too many dependant configs (8)
isa0: unexpected small tag 14
fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f5,0x3f7 irq6 drq2 on isa0
fdc0: FIFO enabled, 8 bytes threshold
fd0: <1440-KB 3.5″ drive> on fdc0 drive 0
atkbdc0: <keyboard controller (i8042)> at port 0x60-0x6f on isa0
atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0
kbd0 at atkbd0
psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: model Generic PS/2 mouse, device ID 0
vga0: <Generic ISA VGA> at port 0x3c0-0c3df iomem 0xa0000-0xbffff on isa0
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags-0x300>
sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
sio0: type 16550A
sio1: at port 0x2f8-0x2ff irq3 on isa0
sio1: type 16550A
ppc0: <Parallel port> at port 0x378-0x37f irq 7 on isa0
ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode
ppc0: FIFO with 16/16/15 bytes threshold
ppi0: <Parallel I/O> on ppbus0
plip0: <PLIP network interface> on ppbus0
ad0: 8063MB <IBM-DHEA-38451> [16383/16/63] at ata0-master using UDMA33
acd0: CDROM <DELTA OTC-H101/ST3 F/W by OIPD> at ata0-slave using PIO4
Mounting root from ufs:/dev/md0c

 

 

 

 

 

 

 

 

  1. Membuat Kernel Baru

 

Agar kernel benar benar sesuai dengan komputer yang kita miliki, diperlukan sebuah kernel baru dengan konfigurasi yang tepat. Untuk itu kita harus memahami hardware komputer yang dimiliki.

Direktory source kernel terdapat pada /usr/src/sys/ atau di link /sys. Sedang script conf nya terdapat pada /usr/src/sys/i386/conf.

Catatan : jika /usr/src/sys dan link /sys tidak ada itu disebabkan karena pada saat installasi distribution yang dipilih tidak menyertakan kernel source. Untuk dapat dilakukan dengan manual dengan perintah /stand/sys/install oleh root, pilih Configure, kemudian Distributions, src, dan sys.

Tahapan pembuatan kernel baru:

  1. Mengubah Konfigurasi file conf kernel di /sys/i386/conf.
  2. Membuat system configurasi dengan perintah “config”.
  3. Meng-compile kernel dengan perintah “make depend” dan “make”.
  4. Install kernel dengan perintah “make install”.

 

Konfigurasi Kernel

 

Dalam direktory /usr/src/sys/i386/conf terdapat file antara lain :

-rw-r–r–  1 root  wheel   7902 Dec  5  1999 GENERIC

-rw-r–r–  1 root  wheel  81274 Dec 16  1999 LINT

-rw-r–r–  1 root  wheel   1271 Aug 29  1999 LKM

-rw-r–r–  1 root  wheel   7719 Sep  6  1999 Makefile.i386

-rw-r–r–  1 root  wheel   7074 Aug 30  1999 PCCARD

-rw-r–r–  1 root  wheel    243 Aug 29  1999 devices.i386

-rw-r–r–  1 root  wheel  18197 Dec  7  1999 files.i386

-rw-r–r–  1 root  wheel   4055 Apr 25  1999 kernel.script

-rw-r–r–  1 root  wheel   8687 May 23  2000 kernelbuild.log

-rw-r–r–  1 root  wheel   5696 Aug 29  1999 majors.i386

-rw-r–r–  1 root  wheel   4493 Nov 17  1999 options.i386

 

File LINT adalah reference untuk membuat kernel baru dengan daftar hardware yang disupport oleh FreeBSD versi ini. Bila kesulitan mendapatkan jenis device anda dapat membuka file ini.

File GENERIC adalah conf kernel.GENERIC atau kernel yang dipakai sehabis installasi. Untuk membuat kernel baru cp file GENERIC ke nama lain sebagai ident.

 

$ cp GENERIC KERNELKU

 

Nama kernel dibuat dengan huruf besar semua. Jika anda menangani lebih dari satu mesin dengan hardware yang berbeda, sangat bagus jika nama kernel dibuat dengan nama mesin.

Edit file KERNELKU sesuai dengan hardware komputer yang dimiliki, tentu saja kita harus mengenal dengan baik jenis peralatan dan konfigurasi kernel itu sendiri, sehingga didapat hasil yang maksimal.

Brikut ini adalah penjelasan untuk file kernel.GENERIC yang diambil dari FreeBSD versi 4.1-RELEASE. Kernel konfigurasi dapat dijelaskan sebagai berikut :

 

machine         “i386”

 

Mendeskripsikan arsitektur cpu yang dipakai antara lain i386, alpha, atau pc98. Kita gunakan “i386” karena mesin kita menggunakan x86 compatible

 

cpu type

cpu             “I386_CPU”

cpu             “I486_CPU”

cpu             “I586_CPU”

cpu             “I686_CPU”

 

Deskripsi cpu chip yang didukung oleh kernel. Bisa ditentukan dari beberapa kombinasi yang telah ada. Untuk costum kernel yang terbaik adalah spesifik hanya CPU yang dimiliki. Dapat juga dicantumkan beberapa type CPU sekaligus dalam hal khusus seperti mesin yang berbeda dalam satu arsitektur mesin tentunya.

 

ident         KERNELKU

 

Merupakan identitas kernel, dapat diubah sesuai dengan keinginan, misalnya diganti dengan nama host. Sebaiknya nama ini disamakan dengan nama file konfigurasi, karena ada kalanya saat pembuatan diperlukan membuat beberapa kernel sekaligus.

 

maxusers number

 

Menentukan ukuran berapa banyak table system. Rumus yang dipakai adalah 20 + 16 * maxusers, jika anda set maxusers 1, maka anda hanya memiliki 36 process simultan, termasuk didalamnya 18 proses pada saat awal dan 15 proses saat booting. Maka jika anda set maxusers 64 maka anda memiliki 1044 proses simultan. Maxusers tidak membatasi jumlah user yang login dalam system.

 

#makeoptions    DEBUG=-g   #Build kernel with gdb(1) debug symbols

options         MATH_EMULATE      #Support for x87 emulation

 

Baris ini memperbolehkan kernel membuat simulasi math co-processor jika komputer anda tidak memilikinya seperti 386 atau 486 sx. Jika menggunakan komputer yang digunakan adalah 486 DX atau 386, 486SX yang menggunakan math-co-processor 387 dan 487 chip, atau Pentium dan atasnya, dapat dihilangkan baris ini.

 

options INET #InterNETworking

 

Network support. Tinggalkan baris ini juga tidak memiliki rencana koneksi dengan network. Beberapa program menggunakan loopback networking untuk membuat koneksi dengan pc anda, jadi option ini amat penting.

 

options INET6 #IPv6 communications protocols

 

Enable untuk komunikasi dengan protocol IPv6.

 

options       FFS          #Berkeley Fast Filesystem

options       FFS_ROOT     #FFS usable as root device [keep this!]

 

Ini adalah dasar hard drive filesystem. Tinggalkan baris ini jika melakukan boot dari hard disk.

 

options MFS   #Memory Filesystem options

MD_ROOT       #MD is a potential root device

 

Memory mapped filesystem. Ini adalah basic RAM disk untuk media penyimpan cepat untuk temporary files. Misal membuat /tmp dengan ramdisk maka anda dapat mencantumkan baris berikut ini kedalam /etc/fstab :

 

/dev/ad1s2b    /tmp mfs rw 0 0

 

Untuk memudahkan reboot komputer atau jalankan perintah mount /tmp.

options      NFS          #Network Filesystem

options      NFS_ROOT     #NFS usable as root device, NFS required

 

Network Filesystem, jika anda merencanakan untuk mounting file server over TCP/IP anda dapat menggunakan options ini.

 

options          MSDOSFS      #MSDOS Filesystem

 

MSDOS filesystem. Suatu saat anda memerlukan untuk mounting filesystem dos dalam FreeBSD, biarkan baris ini tetap ada jika anda membutuhkan untuk membaca file system dos.

options       CD9660       #ISO 9660 Filesystem

options       CD9660_ROOT  #CD-ROM usable as root, CD9660 required

 

CD9660 merupakan standar ISO 9660 filesystem untuk CDROM. Jika anda tidak memiliki CDROM drive lebih baik diremark. Untuk CD audio anda tidak memerlukan system ini.

 

options          PROCFS       #Process filesystem

 

Proses filesystem. Ini berlaku filesystem untuk mounted di /proc, dan memperkenankan program seperti ps untuk memberikan informasi proses yang sedang berjalan.

 

options          COMPAT_43   #Compatible with BSD 4.3 [KEEP THIS!]

 

Kompatible dengan 4.3 BSD.

 

options     SCSI_DELAY=15000    #Delay (in ms) before probing SCSI

 

Jika hanya memiki IDE hard drive baris ini dapat remark. Options ini digunakan SCSI device dalam system yaitu untuk memberi waktu jeda (pause) sebelum probing kernel melakukan probing.

 

options          UCONSOLE            #Allow users to grab the console

 

Memperbolehkan user untuk membuat console baru, yang  mana sering digunakan dalam X user. Contohnya untuk membuat console xterm dengan xterm –C, yang mana digunakan untuk write, talk, dan pesan lain yang diterima, kernel yang mengirimkan pesan console.

 

    options          USERCONFIG          #boot -c editor

 

Options ini memperbolehkan user menggunakan boot konfigurasi editor dari boot menu.

 

options          VISUAL_USERCONFIG   #visual boot -c editor

 

Memperbolehkan user untuk menggunakan visual konfigurasi editor dari boot menu.

 

options          KTRACE              #ktrace(1) support

 

Memperkenankan kernel prosess tracing yang mana digunakan dalam debugging

 

options          SYSVSHM             #SYSV-style shared memory

 

Option ini menyediakan untuk System V share memory. Biasa digunakan dalam XSHM extention dalam Xwindows, yang mana beberapa graphics-intesive program akan otomatis mengambil untuk kecepatan ekstra. Jika menggunakan Xwindows, harus include-kan option ini.

options          SYSVSEM             #SYSV-style semaphores

 

Mendukung untuk System V semaphore.

 

options          SYSVMSG             #SYSV-style message queues

 

Mendukung untuk System V messages

 

options    P1003_1B        #Posix P1003_1B real-time extentions

options     _KPOSIX_PRIORITY_SCHEDULING

 

Tambahan Ekstensi Real-time di 1993 POSIX. Beberapa aplikasi dalam port menggunkan ini seperti Star Office )

 

options        ICMP_BANDLIM        #Rate limit bad replies

 

Ini adalah option untuk respon ICMP error dalam bandwidth limiter. Untuk melindungi dari DOS attacks.

 

device          isa

 

Semua PC support ISA bus, FreeBSD salahsatunya mensuport untuk ini.

 

device          eisa

 

Jika anda memiliki EISA motherboard. Jika di enablekan maka semua device yang berada dalam EISA bus akan auto-detect dan configurasinya.

 

device          pci

 

Include this if you have a PCI motherboard. This enables auto-detection of PCI cards and gatewaying from the PCI to ISA bus.

 

    # Floppy drives

    device          fdc0        at isa? port IO_FD1 irq 6 drq 2

    device          fd0         at fdc0 drive 0

    device          fd1         at fdc0 drive 1

 

Floppy drive controller. fd0 adalah A: floppy drive, and fd1 adalah B: drive.

   

device          ata

 

Driver  ini untum mendukung semua ATA dan ATAPI device. Hanya memerlukan satu deive baris ata agar kernel dapat mendeteksi semua PCI ATA/ATAPI device.

 

device          atadisk                 # ATA disk drives

 

Ini diperlukan dengan device ata untuk ATAPI disk drive

 

device          atapicd                 # ATAPI CDROM drives

 

Digunakan untuk device ata ATAPI CDROM drive.

 

device          atapifd                 # ATAPI floppy drives

 

Digunakan untuk device ata for ATAPI floppy drives.

 

device          atapist                 # ATAPI tape drives

 

Digunakan untuk device ata for ATAPI tape drives.

 

options         ATA_STATIC_ID           #Static device numbering

 

Untuk membuat nomor kontroler statik (seperti driver lama) atau nomor device dinamik lain .

 

# ATA and ATAPI devices

device          ata0        at isa? port IO_WD1 irq 14

device          ata1        at isa? port IO_WD2 irq 15

 

Use the above for older, non-PCI systems.

 

# SCSI Controllers

device          ahb        # EISA AHA1742 family

device          ahc        # AHA2940 and onboard AIC7xxx devices

device          amd        # AMD 53C974 (Teckram DC-390(T))

device          dpt        # DPT Smartcache – See LINT for options!

device          isp        # Qlogic family

device          ncr        # NCR/Symbios Logic

device          sym        # NCR/Symbios Logic (newer chipsets)

device          adv0       at isa?

device          adw

device          bt0        at isa?

device          aha0       at isa?

device          aic0       at isa?

 

SCSI controllers.  Jika tidak memiliki hardware ini dan hanya memiliki IDE dalam system sebaiknya di remark.

 

# SCSI peripherals

device          scbus      # SCSI bus (required)

device          da         # Direct Access (disks)

device          sa         # Sequential Access (tape etc)

device          cd         # CD

device          pass       # Passthrough device (direct SCSI access)

 

SCSI peripherals.

 

# RAID controllers

device          ida        # Compaq Smart RAID

device          amr        # AMI MegaRAID

device          mlx        # Mylex DAC960 family

 

Mendukung untuk RAID controllers.

 

# atkbdc0 controls both the keyboard and the PS/2 mouse

device          atkbdc0    at isa? port IO_KBD

 

Keyboard controller (atkbdc) menyediakan I/O service untuk AT keyboard dan PS/2 device. Controller digunakan untuk keyboard driver (atkbd) dan PS/2 device driver (psm).

device          atkbd0     at atkbdc? irq 1

 

Atkbd driver, bersama dengan atkbdc controller, menyediakan access ke AT 84 keyboard atau AT enhanced keyboard yang terhubung dengan AT keyboard controller.

 

device          psm0       at atkbdc? irq 12

 

Device mouse ps2

 

device          vga0        at isa?

 

Driver card video

# splash screen/screen saver

pseudo-device          splash

 

Splash screen di start up!.

 

# syscons is the default console driver, resembling an SCO console

device          sc0          at isa?

 

Sc0 adalah console driver, dimana mirip dengan SCO console.

 

# Enable this and PCVT_FREEBSD for pcvt vt220 compatible console driver

#device          vt0     at isa?

options         XSERVER          # support for X server on a vt console

#options         FAT_CURSOR       # start with block cursor

#If you have a ThinkPAD, uncomment this along with the rest of the PCVT lines

#options         PCVT_SCANSET=2   # IBM keyboards are non-std

 

Ini adalah VT220-compatible console driver, backward compatible to VT100/102. Bekerja baik untuk beberapa jenis laptop yang mana memiliki hardware yang tidak kompatible dengan sc0. Jika anda mengaktifkan Xwindows options XSERVER harus diaktifkan.

 

# Floating point support – do not disable.

device          npx0     at nexus? port IO_NPX irq 13

 

npx0 adalah interface simulasi math-co processor unit di FreeBSD

 

# Power management support (see LINT for more options)

device          apm0     at nexus? disable flags 0x20  # APM

 

Advanced Power Management support. digunakan laptops.

 

 

# PCCARD (PCMCIA) support

device          card

device          pcic0    at isa? irq 10 port 0x3e0 iomem 0xd0000

device          pcic1    at isa? irq 11 port 0x3e2 iomem 0xd4000 disable

 

Mendukung untuk PCMCIA. Anda memerlukan ini jika di install di laptop, adakalanya juga dapat di pasang di PC jika anda menggunakan PCCARD untuk wavelan.

# Serial (COM) ports

device          sio0     at isa? port IO_COM1 flags 0x10 irq 4

device          sio1     at isa? port IO_COM2 irq 3

device          sio2     at isa? disable port IO_COM3 irq 5

device          sio3     at isa? disable port IO_COM4 irq 9

 

4 serial port reference dari COM1 hingga COM4 seperti dalam MS-DOS dan Windows

 

# Parallel port

device          ppc0    at isa? irq 7

 

Ini adalah ISA-bus antarmuka parallel port.

 

device          ppbus      # Parallel port bus (required)

 

Melengkapi dan mendukung untuk parallel port bus.

 

device          lpt        # Printer

 

Mendukung untuk parallel port printers.

Semua 3 bagian diatas diperlukan untuk enable parallel printer support.

 

device          plip       # TCP/IP over parallel

 

Ini adalah driver untuk  parallel network interface.

device          ppi        # Parallel port interface device

 

The general-purpose I/O (“geek port”) + IEEE1284 I/O.

 

#device         vpo        # Requires scbus and da

 

Untuk Iomega Zip drive. Dibutuhkan untuk scbus dan da. Sangat bagus dengan port EPP 1.9 mode.

 

# PCI Ethernet NICs.

device          de         # DEC/Intel DC21x4x (“Tulip”)

device          fxp        # Intel EtherExpress PRO/100B (82557, 82558)

device          tx         # SMC 9432TX (83c170 “EPIC”)

device          vx         # 3Com 3c590, 3c595 (“Vortex”)

device          wx         # Intel Gigabit Ethernet Card (“Wiseman”)

 

Beberapa variasi PCI network card driver, remark jika tidak ada dalam system anda.

 

# PCI Ethernet NICs that use the common MII bus controller code.

device          miibus     # MII bus support

 

MII bus mendukung untuk beberapa card ethernet PCI 10/100 NICs,

 

device          dc         # DEC/Intel 21143 and various workalikes

device          rl         # RealTek 8129/8139

device          sf         # Adaptec AIC-6915 (“Starfire”)

device          sis        # Silicon Integrated Systems SiS 900/SiS 7016

device          ste        # Sundance ST201 (D-Link DFE-550TX)

device          tl         # Texas Instruments ThunderLAN

device          vr         # VIA Rhine, Rhine II

device          wb         # Winbond W89C840F

device          xl         # 3Com 3c90x (“Boomerang”, “Cyclone”)

 

Driver itu digunakan MII bus controller code. Jika anda memiliki salah satu device ini maka device miibus harus disertakan, kalau tidak device ini tidak akan terdeteksi, atau bahkan pada saat kompile kernel akan terjadi error.

 

# ISA Ethernet NICs.

device          ed0    at isa? port 0x280 irq 10 iomem 0xd8000

device          ex

device          ep

# WaveLAN/IEEE 802.11 wireless NICs. Note: the WaveLAN/IEEE really

# exists only as a PCMCIA device, so there is no ISA attachment needed

# and resources will always be dynamically assigned by the pccard code.

device          wi

# Aironet 4500/4800 802.11 wireless NICs. Note: the declaration below will

# work for PCMCIA and PCI cards, as well as ISA cards set to ISA PnP

# mode (the factory default). If you set the switches on your ISA

# card for a manually chosen I/O address and IRQ, you must specify

# those parameters here.

device          an

# The probe order of these is presently determined by i386/isa/isa_compat.c.

device          ie0    at isa? port 0x300 irq 10 iomem 0xd0000

device          fe0    at isa? port 0x300

device          le0    at isa? port 0x300 irq 5 iomem 0xd0000

device          lnc0   at isa? port 0x280 irq 10 drq 0

device          cs0    at isa? port 0x300

device          sn0    at isa? port 0x300 irq 10

# requires PCCARD (PCMCIA) support to be activated

      #device         xe0    at isa?

 

ISA ethernet driver. Penting diperhatikan disini jika anda memasang lebih dari satu card ethernet ISA, diperlukan pengalamatan memory, interupt dan juga address port, untuk itu harus benar benar jangan sampai terjadi konflik antara hardware satu dengan yang lain.

Lihat /usr/src/sys/i386/conf/LINT untuk card ethernet lain yang didukung oleh beberapa driver. Device wi0 biasanya digunakan utnuk wavelan pada product lucent.

 

# Pseudo devices – the number indicates how many units to allocated.

pseudo-device   loop          # Network loopback

 

Ini adalah loopback device untuk TCP/IP. Seperti ketika telnet atau ftp ke localhost (127.0.0.1).

 

pseudo-device   ether         # Ethernet support

 

ether hanya digunakan jika memiliki Ethernet card.

 

pseudo-device   sl      1     # Kernel SLIP

 

sl ini untuk mendukung SLIP.

 

pseudo-device   ppp     1     # Kernel PPP

 

Untuk mendukung kernel PPP untuk koneksi dialup.

 

pseudo-device   tun           # Packet tunnel.

 

Digunakan untuk PPP software. Nomor setelah tun spesifik nomor simulasi PPP.

 

pseudo-device   pty           # Pseudo-ttys (telnet etc)

 

Ini adalah pseudo-terminal atau simulasi login port. Ini digunakan untuk session telnet atau rlogin yang datang, xterm dan beberapa aplikasi lain seperti emacs. Nomor menunjukkan berapa nomor dari pty yang akan dibuat. Jika memerlukan lebih banyak dari 16 simulasi xterm windows dan atau remote login, pastikan nomor tersebut di naikkan dengan maksimal 256.

 

pseudo-device   md            # Memory “disks”

 

Memory disk pseudo-devices.

 

pseudo-device   gif     4     # IPv6 and IPv4 tunneling

 

Ini diimplementasikan untuk IPv6 over IPv4 tunneling, IPv4 over IPv6 tunneling, IPv4 over IPv4 tunneling, and IPv6 over IPv6 tunneling.

 

pseudo-device   faith   1     # IPv6-to-IPv4 relaying (translation)

 

Pseudo-device menangkap packets yang dikirim dan mengalihkan ke IPv4/IPv6 translation daemon.

 

# The `bpf’ pseudo-device enables the Berkeley Packet Filter.

# Be aware of the administrative consequences of enabling this!

pseudo-device   bpf           # Berkeley packet filter

 

Berkeley Packet Filter. Pseudo-device memperbolehkan network interface untuk menempatkan mode pemilihan (promiscuous mode), pengambilan packet dalam broadcast network (e.g., an ethernet).

 

# USB support

#device         uhci          # UHCI PCI->USB interface

#device         ohci          # OHCI PCI->USB interface

#device         usb           # USB Bus (required)

#device         ugen          # Generic

#device         uhid          # “Human Interface Devices”

#device         ukbd          # Keyboard

#device         ulpt          # Printer

#device         umass         # Disks/Mass storage-Requires scbus and da

#device         ums           # Mouse

# USB Ethernet, requires mii

#device         aue           # ADMtek USB ethernet

#device         cue           # CATC USB ethernet

#device         kue           # Kawasaki LSI USB ethernet

 

Mendukung beberapa USB device.

Untuk informasi lebih lanjut tentang device yang didukung oleh FreeBSD, silahkan membuka file /usr/src/sys/i386/conf/LINT.

Setelah konfigurasi file selesai di perbaiki, langkah berikutnya adalah sebagai berikut, anda bekerja dalam direktory /sys/i386 atau /usr/src/sys/i386 :

 

$ /usr/sbin/config MYKERNEL

$ cd ../../compile/MYKERNEL

$ make depend

$ make

$ make install

 

Perintah diatas adalah dalam rangka compile kernel kemudian installasi kedalam direktory /, dan dalam direktory / setelah kernel ini terinstall terdapat 3 file kernel :

 

kernel

kernel.GENERIC

kernel.old

 

File kernel adalah kernel baru yang terpasang, kernel.GENERIC adalah kernel dari owner FreeBSD seperti telah dijelaskan dimuka, sedangkan kernel.old adalah kernel sebelum make install. 3 file kernel ini sangat berguna jadi jangan sampai di delete. Karena suatu saat jika kernel yang terinstallasi terdapat masalah maka pada saat booting startup anda dapat memakai kernel sebelumnya atau bahkan masuk ke kernel.GENERIC.

Download file pdf

Leave a Reply

Your email address will not be published. Required fields are marked *