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.
- 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
- 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:
- Mengubah Konfigurasi file conf kernel di /sys/i386/conf.
- Membuat system configurasi dengan perintah “config”.
- Meng-compile kernel dengan perintah “make depend” dan “make”.
- 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