Ä¿³Î 2.4 Intro
Ä¿³Î 2.4 Intro
v0.2, 2000³â 8¿ù 30ÀÏ
°³¹ßÄ¿³Î 2.4.0-tset ¹öÀüÀ» ÄÄÆÄÀÏÇϱâÀ§ÇÑ ±âº»ÀûÀÎ ¹è°æÁö½Ä°ú ÀϹÝÀû »ç¾çÀÇ PC¿¡¼ÀÇ ÄÄÆÄÀÏ ¿É¼Ç¹× ¹æ¹ý ±×¸®°í Ä¿³Î 2.4 ¿¡¼ ¹«¾ùÀÌ ´Þ¶óÁ³´ÂÁö¸¦ ´Ù·é´Ù.
(ÀÌ ±ÛÀ» ¾²´Â ÇöÀç °¡Àå ÃֽŠ°³¹ß Ä¿³ÎÀÎ 2.4.0-test7À» ±âÁØÀ¸·Î ÀÌ·ÐÀûÀÎ¸é º¸´Ü
½ÇÁ¦·Î ¾î¶»°Ô ÇؾßÇÏ´ÂÁö¿¡ ÁßÁ¡À» µÎ¾ú´Ù.)
Ä¿³ÎÀ̶õ ¿î¿µÃ¼Á¦(Operating System)¿¡¼ °¡Àå ÇÙ½ÉÀûÀÎ ¿ªÇÒÀÎ ÀÚ¿ø
(¸Þ¸ð¸®, ÇÁ·Î¼¼¼µî)À» °ü¸®ÇÏ¸ç ½Ã½ºÅÛÀÌ ¿øÈ°È÷ µ¹¾Æ°¥ ¼ö ÀÖµµ·Ï
Á¦¾îÇØ ÁØ´Ù. ÇöÀç ¿ì¸®°¡ ¸®´ª½º(OS)¶ó°í Çϴ°͵µ ½ÇÁ¦ÀûÀ¸·Ð ¸®´ª½º¶õ ¿î¿µÃ¼Á¦ÀÇ
Ä¿³Î À̸§À» ¸»Çϴ°ÍÀε¥ ÀÌ°ÍÀÌ È®ÀåµÈ Àǹ̷Π»ç¿ëµÇ¾î ÇöÀçÀÇ '¸®´ª½º'¶õ OS¸¦
ÁöĪÇÏ°Ôµµ µÈ°ÍÀÌ´Ù.
±×·¯¹Ç·Î Linux = kernelÀ̶õ µî½ÄÀÌ ¼º¸³ÇÑ´Ù.
¿ì¼±ÀûÀ¸·Î ¾ÈÁ¤ ¹öÀü°ú °¡Àå ÃֽŠ°³¹ß¹öÀüÀ» ¿øÇÑ´Ù¸é
http://kernel.pe.kr
·Î Á¢¼ÓÇÏ¸é µÈ´Ù.
±× ÀÌ¿Ü¿¡´Â ´ÙÀ½ ¹Ì·¯ »çÀÌÆ®¿¡¼ ±¸ÇÒ¼ö ÀÖ´Ù.
SHELL¿¡¼ finger @finger.kernel.org ¸í·ÉÀ¸·Î ÃֽŠĿ³Î¹öÀüÀ» ¾Ë ¼ö ÀÖ´Ù.
ÀÌ ¹®¼¸¦ ÀÛ¼ºÇÏ´Â ÇöÀç ÃֽŹöÀüÀº ´ÙÀ½°ú °°´Ù.
- stable version : 2.2.16
- beta version : 2.4.0-test7
- prepatch version : 2.4.0-test8/pre1
Ä¿³ÎÀº stable version(¾ÈÁ¤¹öÀü)°ú beta version(°³¹ß¹öÀü)À¸·Î ³ª´©´Âµ¥ ÀÌ
µÎ ¹öÀüÀÇ Â÷ÀÌ´Â minor number°¡ ¦¼öÀÌ³Ä È¦¼öÀ̳ķΠ±¸ºÐÇÑ´Ù.
(minor number¶õ Ä¿³Î 2.2.16ÀÌ ÀÖ´Ù¸é °¡¿îµ¥ ¼öÀÎ 2°¡ minor numberÀÌ°í
Á¦ÀÏ ¾ÕÀÇ 2´Â major number ÀÌ´Ù. ¸¶Âù°¡Áö·Î 2.3.99¿¡¼± major´Â 2ÀÌ°í minor´Â
3ÀÌ´Ù.)
±×·¸´Ù¸é 2.4.0-test ¹öÀüµéÀº minor number°¡ ¦¼öÀε¥ ¿Ö °³¹ß¹öÀüÀ̶ó°í Çϳª?
±× ÀÌÀ¯´Â 2.3.99ÀÇ ÆÐÄ¡¹öÀüµéÀÌ ÀÌÁ¦ °ÅÀÇ 2.4 ¾ÈÁ¤¹öÀü¿¡ °¡±î¿öÁ³´Ù´Â Àǹ̷Î
Linus°¡ 2.4.0-test¶ó À̸§ ºÙÀΰÍÀÌ´Ù.
¿©·¯ °¡Áö ¹æ¹ýµéÀÌ ÀÖÁö¸¸ ÀúÀåµÈ Ä¿³Î¿É¼Ç¼³Á¤ ÆÄÀÏÀÌ ÀÖ´Ù¸é oldconfig¸¦
ÀúÀåµÈ ÆÄÀÏÀÌ ¾ø´Ù¸é menuconfig¸¦ ÃßõÇÑ´Ù.
- make oldconfig ¶Ç´Â make menucofig
make oldconfig¸¦ ÇϱâÀ§Çؼ± ´ÙÀ½°ú °°Àº ÀÛ¾÷ÀÌ ÇÊ¿äÇÏ´Ù.
¿¹Àü¿¡ ¼³Á¤ÇÑ Ä¿³Î¿É¼ÇÀÌ kernel.config ¶õ À̸§À¸·Î ÀúÀåµÇ¾îÀÖ´Ù¸é
ÀÌ ÆÄÀÏÀ» »õ ¹öÀüÀÇ Ä¿³ÎÀÌ ÀÖ´Â /usr/src/linux µð·ºÅ丮¿¡ .config¶õ À̸§À¸·Î
Ä«ÇÇÇÑ´Ù.
# cp kernel.config /usr/src/linux/.config
À§¿Í°°ÀÌ ÇÑÈÄ make oldconfig¸¦ ½ÇÇàÇÏ¸é ¿¹Àü ¿É¼ÇÀ» ±×´ë·Î Àû¿ë½ÃÄÑÁÖ¸ç
Ȥ½Ã³ª »õ·Î¿î ¿É¼ÇÀÌ ÀÖ´Ù¸é ȸ鿡 º¸¿©ÁÖ¸ç ¼±ÅÃÇÒ ¼ö ÀÖµµ·Ï ÇØÁØ´Ù.
- make dep
- make clean
- make bzlilo
make bzlilo¶õ ´ÙÀ½°ú °°Àº ¸í·ÉµéÀ» ¼øÂ÷ÀûÀ¸·Î ½ÇÇàÇÑ°Í°ú °°´Ù.
# make bzImage
# cp /usr/src/linux/arch/i386/boot/bzImage /vmlinuz
# /sbin/lilo
- mv /vmlinuz /boot/vmlinuz-2.4.0-test7
- mv /System.map /boot/System-2.4.0-test7
- vi /etc/lilo.conf
ÀϹÝÀûÀ¸·Î ´ÙÀ½°ú °°Àº ȸéÀ» º¼ ¼ö ÀÖÀ»°ÍÀÌ´Ù.
boot=/dev/hda
map=/boot/map
install=/boot/boot.b
prompt
timeout=50
default=linux
image=/boot/vmlinuz-2.4.0-test7 ---> »õ·Î »ý¼ºÇÑ Ä¿³ÎÀ̹ÌÁö¸¦ linux¶õ ·¹À̺í
label=linux ·Î ºÎÆÃÇÒ ¼ö ÀÖµµ·Ï ÇϱâÀ§ÇØ
read-only
root=/dev/hda1
image=/boot/vmlinuz-2.2.16 ---> ¿¹Àü Ä¿³ÎÀÌ 2.2.16À̶ó°í °¡Á¤ÇßÀ»¶§
label=old old¶õ ·¹À̺í·Î Á¤ÀÇÇÑ´Ù.
read-only
root=/dev/hda1
- /sbin/lilo
¸ðµâÀÌ »ý¼ºµÇ´Â µð·ºÅ丮´Â '/lib/modules/2.4.0-test7'ÀÌ°í ¸¸¾à ÇöÀç Ä¿³ÎÀÇ ¸ðµâÀ»
´Ù½Ã »ý¼ºÇÏ·Á°í ÇÑ´Ù¸é ÇöÀç Ä¿³ÎÀÇ ¸ðµâ µð·ºÅ丮¸¦ Áö¿ì°í ´Ù½Ã ÄÄÆÄÀÏ Çϱ⠹ٶõ´Ù.
(Ä¿³Î 2.4.0-test ¹öÀü¿¡¼´Â ¸ðµâÀÇ µð·ºÅ丮±¸Á¶°¡ ¸¹ÀÌ ¹Ù²î¾ú´Ù.)
- make modules
- make modules_install
RedHat ±â¹Ý 6.1ÀÌ»óÀÇ ¹èÆ÷ÆÇÀ̶ó¸é modutils¸¸ ¾÷±×·¹À̵å ÇÏ¸é µÉ°ÍÀÌ´Ù.
(modutils¸¦ ¾÷Çϴµ¥ glibc¹öÀüÀÌ ³·´Ù¸é glibcµµ ¾÷ÇØ¾ß ÇÑ´Ù. glibc´Â ·ÎÄÉÀÏ°ú
timezone, ¿©·¯ ¶óÀ̺귯¸®¸¦ Æ÷ÇÔÇؼ ÀÇÁ¸¼º ¹®Á¦¿¡ ¸¹Àº ¿µÇâÀ» ³¢Ä¡¹Ç·Î
¾÷±×·¹À̵å Çϴµ¥ ÁÖÀǸ¦ ÇÊ¿ä·Î ÇÑ´Ù. rpm ¹öÀüÀÌ ³·´Ù¸é rpmµµ ¾÷ÇØ¾ß ÇÑ´Ù.)
2.4.0-test Ä¿³ÎÀ» »ç¿ëÇϱâÀ§Çؼ ´ÙÀ½ »çÇ×À» È®ÀÎÇ϶ó.
ÆÐÅ°Áö ¸í ¹öÀü È®Àιæ¹ý
o Gnu C 2.7.2.3 # gcc --version
o Gnu make 3.77 # make --version
o binutils 2.9.1.0.22 # ld -v
o util-linux 2.10o # kbdrate -v
o modutils 2.3.13 # insmod -V
o e2fsprogs 1.18 # /sbin/tune2fs --version
o pcmcia-cs 3.1.19 # cardmgr -V
o PPP 2.4.0 # pppd --version
o isdn4k-utils 3.1beta7 # isdnctrl 2>&1|grep version
- Bogo Mips°¡ µÎ ¹è·Î ¿Ã¶ó°£´Ù.(AMD-K6 ¿Í È®ÀÎ ¸øÇÑ Processor Á¦¿Ü)
$ cat /proc/cpuinfo ¸¦ Çغ¸¸é È®ÀÎÇÒ ¼ö ÀÖ´Ù.
Bogo(bogos : °¡Â¥)À̹ǷΠ½Å·ÚÇÒ¼ø ¾øÁö¸¸ ±âºÐ¸¸Àº ÁÁÁö¾ÊÀº°¡?
- modutils ¾÷±×·¹À̵å½Ã ¹Ù²î´Â °Íµé
¸¸¾à modutils ¹öÀüÀÌ ¾Õ¿¡¼ ¸í½ÃÇÑ ¹öÀüº¸´Ù ³·Àºµ¥ ¸ðµâ ÄÄÆÄÀÏÀ» ÇÑ´Ù¸é
¿¡·¯°¡ ³´Ù. ²À modutils¸¦ ¾÷ ÇØ¾ß ¸ðµâ ÄÄÆÄÀÏÀ» ÇÒ ¼ö ÀÖ´Ù.
modutils¸¦ ¾÷ÇÏ¸é ¿¹ÀüÀÇ /etc/conf.modules°¡ /etc/modules.conf·Î ¹Ù²î°í
USB ¸ðµâµµ ÀÚµ¿·ÎµùÀÌ °¡´ÉÇÏ¸ç ¸¹Àº ¿¹¾à¾î¸¦ Áö¿øÇÑ´Ù.
´ÙÀ½ ftp »çÀÌÆ®¿¡¼ ±¸ÇÒ¼ö ÀÖ´Ù.
ftp://ftp.kernel.org/pub/linux/utils/kernel/modutils/v2.3/
- ¸ðµâÀÌ À§Ä¡ÇÑ /lib/modules/2.4.0-test7 µð·ºÅ丮 ±¸Á¶
Ä¿³Î 2.4.0-test6 ÀÌ»óÀÇ ¹öÀüºÎÅÍ ¸ðµâµéÀÌ À§Ä¡ÇÏ´Â '/lib/modules/Ä¿³Î¹öÀü' ÀÇ
µð·ºÅ丮 ±¸Á¶°¡ ´õ ¼¼ºÐÈ µÇ°í ´ÙÀ½°ú °°Àº Çü½ÄÀ¸·Î ¹Ù²î¾ú´Ù.
ÇöÀç ÇÊÀÚÀÇ µð·ºÅ丮 ±¸Á¶ÀÌ´Ù.
[kernel@suni00/lib/modules/2.4.0-test7]$ ls -l
lrwxrwxrwx 1 root root 26 Sep 4 17:09 build -> /usr/src/linux-2.4.0-test7/
drwxr-xr-x 6 root root 1024 Sep 4 17:09 kernel/
-rw-r--r-- 1 root root 1340 Sep 5 20:33 modules.dep
-rw-r--r-- 1 root root 3235 Sep 5 20:33 modules.pcimap
drwxr-xr-x 2 root root 1024 Sep 4 17:09 pcmcia/
À§ÀÇ kernel µð·ºÅ丮¿¡ µé¾î°¡º¸¸é ´ÙÀ½°ú °°ÀÌ ¼¼ºÐÈ µÇ¾îÀÖ´Ù.
[kernel@suni00/lib/modules/2.4.0-test7/kernel]$ ls -l
drwxr-xr-x 3 root root 1024 Sep 4 17:09 arch/
drwxr-xr-x 8 root root 1024 Sep 4 17:10 drivers/
drwxr-xr-x 9 root root 1024 Sep 4 17:09 fs/
drwxr-xr-x 4 root root 1024 Sep 4 17:09 net/
drivers µð·ºÅ丮 ±¸Á¶¸¦ º¸¸é ¿¹Àü ¸ðµâµéÀÇ µð·ºÅ丮 ±¸Á¶°¡ ¿©±â·Î ¿Å°Ü ¿ÔÀ½À»
¾Ë ¼ö ÀÖ´Ù.
[kernel@suni00/lib/modules/2.4.0-test7/kernel/drivers]$ ls -l
drwxr-xr-x 2 root root 1024 Sep 4 17:09 block/
drwxr-xr-x 3 root root 1024 Sep 4 17:09 char/
drwxr-xr-x 2 root root 1024 Sep 4 17:09 ide/
drwxr-xr-x 2 root root 1024 Sep 4 17:09 net/
drwxr-xr-x 2 root root 1024 Sep 4 17:09 sound/
drwxr-xr-x 2 root root 1024 Sep 4 17:10 video/
- UID,GID bit°¡ 16bit¿¡¼ 32bit·Î ¹Ù²î¾ú´Ù.
2^16Àº 65536À̹ǷΠ»ç¿ëÀÚ¸¦ 65536¸í ±îÁö ¸¸µé¼ö ÀÖÁö¸¸ Ä¿³Î 2.4¿¡¼´Â
2^32 Áï 4294967296¸íÀ» ¸¸µé¼ö ÀÖ´Ù.(½Ã½ºÅÛ ÄÝÀÇ º¯°æµµ ÇÊ¿ä·Î Çϸç
Çö½ÇÀûÀ¸·Î ÀÌ·¸°Ô ¸¹Àº À¯Àú¸¦ ÇÑ ¼¹ö¿¡ µÐ´Ù´Â°ÍÀº ¹«¸®ÀÌ´Ù.)
- »ý¼º°¡´ÉÇÑ ÇÁ·Î¼¼½ºÀÇ ¼öÀÇ Á¦ÇÑÀÌ ¾ø¾îÁ³´Ù.
2.2.x Ä¿³ÎÀÇ ¼Ò½º¸¦ º¸¸é include/linux/tasks.h¿¡¼ NR_TASKSÀÇ °³¼ö°¡ 512·Î
Á¤ÀǵǾî ÀÖ´Ù. 512ÀÌ»óÀÇ ÇÁ·Î¼¼½º¸¦ »ý¼ºÇÒ ¼ö ÀÖµµ·Ï ÇÏ·Á¸é ÀÌ °ªÀ» °íÃÄ
ÁÖ¾î¾ß Çߴµ¥ x86 machine¿¡¼´Â GDT(Global Descriptor Table)ÀÇ Á¦ÇѶ§¹®¿¡
4092±îÁö ¹Û¿¡ ÇÒ ¼ö ¾øµµ·Ï µÇ¾îÀÖ¾ú´Ù.
2.4.0-test ¹öÀü¿¡¼´Â task ÀڷᱸÁ¶°¡ µ¿ÀûÀ¸·Î ÇÒ´çµÇ¾î NR_TASKS °ªÀÌ
¾ø¾îÁ³°í ¸Þ¸ð¸®ÀÇ ÇѰ踸ÀÌ À¯ÀÏÇÑ Á¦¾àÀ¸·Î µû¸¥´Ù.
- °øÀ¯¸Þ¸ð¸®¸¦ »ç¿ëÇϱâÀ§ÇØ /var/shm(¶Ç´Â /dev/shm)À» ¸¶¿îÆ® ÇؾßÇÑ´Ù.
Ä¿³Î 2.3 °³¹ß¹öÀüÀ» óÀ½ ÄÄÆÄÀÏÇÏ°í ºÎÆÃÇßÀ»¶§ Á¦ÀÏ Ã³À½ Á÷¸éÇß´ø ¹®Á¦Àε¥
System V °øÀ¯¸Þ¸ð¸®¸¦ »ç¿ëÇÏÁö ¸øÇؼ ºÎÆýà ÀÚµ¿À¸·Î ¶ß´Â ¾ÆÆÄÄ¡ µ¥¸óÀÌ
¶ßÁö ¸øÇÏ´Â ¹®Á¦¿Í ¿©·¯ ÇÁ·Î±×·¥À» ½ÇÇàÇßÀ»¶§ °øÀ¯¸Þ¸ð¸®¸¦ »ç¿ëÇÏÁö ¸øÇØ
¿¡·¯°¡ ³ª´Â ¹®Á¦°¡ ¹ß»ýÇß¾ú´Ù. 2.4-test ¹öÀüÀ» ¾²±âÀ§Çؼ± ²À ÇØÁà¾ß ÇÏ´Â
ºÎºÐÀÌ´Ù.
# mkdir /var/shm
# vi /etc/fstab
none /var/shm shm defaults 0 0
- ipchains°¡ iptables·Î ¹Ù²î¾ú´Ù.
menuconfig ¿É¼Ç¿¡¼ Networking options ---> [*] Network packet filtering
(replaces ipchains) ¸¦ ¼±ÅÃÇÏ°í IP: Netfilter Configuration --->
<M> ipchains (2.2-style) support ¸¦ ¼±ÅÃÇϸé Ä¿³Î 2.2.x ¿Í °°Àº
¹æ½ÄÀ¸·Î ¾µ ¼ö ÀÖ´Ù.
- Magic SysRq key ÀÇ º¯È
Magic SysRq key¶õ ½Ã½ºÅÛÀÇ Á¦¾î°¡ ºÒ°¡´ÉÇÑ »óÅÂ(ÀϹÝÀûÀ¸·Î '´Ù¿î'µÇ¾ú´Ù°íÇÑ´Ù.)
¿¡¼µµ Á¦¾î¸¦ °¡´ÉÇÏ°Ô ÇØÁֹǷΠĿ³Î ÄÄÆÄÀϽà Kernel hacking --->
[*] Magic SysRq key¸¦ üũÇØÁÖÀÚ.
2.4.0-test °³¹ß Ä¿³Î¿¡¼ Magic SysRq key¸¦ »ç¿ëÇÒ·Á¸é ´ÙÀ½°ú °°ÀÌ
/proc/sys/kernel/sysrq °ªÀ» 1·Î ¸¸µé¾î¾ß ÇÑ´Ù.
# echo 1 > /proc/sys/kernel/sysrq
Å° Á¶ÇÕ
Alt+SysRq+R use Raw keyboard events
Alt+SysRq+K kill current VT in use
Alt+SysRq+E tErminate all running processes (except init)
Alt+SysRq+I kIll all processes (except init)
Alt+SysRq+L kilL all processes (including init)
Alt+SysRq+B reBoot
Alt+SysRq+S Sync all drives
Alt+SysRq+U Umount all filesystems
Alt+SysRq+O turn the machine Off
Alt+SysRq+P dump Processor's registers
Alt+SysRq+T dump current Tasks
Alt+SysRq+M dump some Memory info
Alt+SysRq+[0-9] set kernel log level and redirect it to console
x86 ¸Ó½Å¿¡¼´Â Alt¸¦ ´©¸¥»óÅ¿¡¼ Print Screen(Sys Rq)Å°¸¦ ´©¸£°í
°¢ ¾ËÆĺªÅ°¸¦ ´©¸£¸é Àû¿ëµÈ´Ù.
¸¸¾à ½Ã½ºÅÛÀÌ ´Ù¿î µÇ¾ú´Ù¸é °°Àº ´ÙÀ½°ú ¼ø¼ÀÇ Á¶ÇÕÀ¸·Î ½Ã½ºÅÛ¿¡ ¼Õ»óÀ»
ÁÖÁö¾Ê°í ¾ÈÀüÇÏ°Ô ÀçºÎÆà ÇÒ ¼ö ÀÖÀ»°ÍÀÌ´Ù.
Alt+SysRq+S : ¹öÆÛ¿¡ÀÖ´Â °ÍµéÀ» µð½ºÅ©·Î sync(µ¿±âÈ)½ÃŲ´Ù.
Alt+SysRq+E : init ÇÁ·Î¼¼½º¸¦ Á¦¿ÜÇÑ ¸ðµç ÇÁ·Î¼¼½º¸¦ Á¾·á½ÃŲ´Ù.
Alt+SysRq+U : ÆÄÀÏ ½Ã½ºÅÛÀ» unmount ½ÃŲ´Ù.
Alt+SysRq+B : ½Ã½ºÅÛ ÀçºÎÆÃ
- Codepage 949 (UnifiedHangul) Áö¿ø(Ä¿³Î 2.4.0-test5ºÎÅÍ Áö¿øÇϸç
¾ÈÁ¤¹öÀüÀº 2.2.16¿¡¼ Áö¿øÇÑ´Ù.)
¸®´ª½º¿¡¼ À©µµ ÆÄƼ¼Ç(vfat)À» ¸¶¿îÆ® ÇßÀ»¶§ ÇѱÛÀÌ '????'ÀÌ·±½ÄÀ¸·Î
º¸ÀÌ´Â ¹®Á¦¸¦ ÇØ°áÇØ ÁØ´Ù.
- Devfs(Device Filesystem)
devfs¶õ /proc¿Í °°Àº °¡»ó ÆÄÀϽýºÅÛÀ¸·Î Richard Gooch¿¡ ÀÇÇØ ÀÛ¾÷µÇ¾ú´Ù.
devfs¸¦ »ç¿ëÇÒ·Á¸é ´ÙÀ½°ú °°Àº °úÁ¤À» °ÅÃľßÇϸç devfs¸¦ ¾²Áö ¾Ê¾Æµµ 2.4.0-test
Ä¿³ÎÀ» »ç¿ëÇϴµ¥ »ó°üÀº ¾ø´Ù.
devfs¸¦ »ç¿ëÇÏ°íÀÚ ÇÑ´Ù¸é devfs´Â ¸Þ¸ð¸®»ó¿¡ Á¸ÀçÇÏ´Â °¡»ó ÆÄÀϽýºÅÛÀ̹ǷΠ¸¸¾à
/dev ¿¡ Ư¼öÇÑ ¸ñÀûÀÇ µð¹ÙÀ̽º ÆÄÀÏ ¶Ç´Â µð·ºÅ丮¸¦ »ý¼ºÇß´Ù¸é ÀçºÎÆýà /dev
µð·ºÅ丮¿¡ ¸¸µé¾ú´ø°ÍÀÌ »ç¶óÁú°ÍÀ̹ǷΠÀç ÀÛ¼ºÇØÁà¾ß ÇÑ´Ù.
ºÎÆÃÇÒ¶§¸¶´Ù mknod ¸í·ÉÀ¸·Î ÇÊ¿äÇÑ µð¹ÙÀ̽º¸¦ ´Ù½Ã ¸¸µå´Â°Í º¸´Ü ¼Ð ½ºÅ©¸³Æ®¸¦
ÀÛ¼ºÇϴ°ÍÀÌ Æí¸®ÇÒ °ÍÀÌ´Ù.
¿¹¸¦µé¾î X-4.0ÀÌ»óÀÇ NVdirver¸¦ ¾´´Ù¸é /dev µð·ºÅ丮¿¡ nvidia0, nvidia1, nvidia2,
nvidia3, nvidiactl°ú °°Àº ij¸¯ÅÍ µð¹ÙÀ̽º ÆÄÀÏÀÌ ¸¸µé¾îÁ® ÀÖ¾î¾ß X¸¦ ¶ç¿ï¼ö
ÀÖÀ¸¹Ç·Î ºÎÆýà ¸¸µé¾îÁú¼ö ÀÖµµ·Ï ¼Ð ½ºÅ©¸³Æ®¸¦ ÀÛ¼ºÇÑ´Ù¸é ¾à°£ÀÇ ¼ö°í¸¦
´ú ¼ö ÀÖÀ»°ÍÀÌ´Ù.
´ÙÀ½°ú °°Àº ¹æ¹ýÀ¸·Î devfs¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù.
1. Ä¿³Î ÄÄÆÄÀÏ ¿É¼Ç¿¡¼ ´ÙÀ½ »çÇ×À» üũÇÑ´Ù.
Code maturity level options --->
[*] Prompt for development and/or incomplete code/drivers
File systems --->
[*] /dev file system support (EXPERIMENTAL)
[*] Automatically mount at boot
[*] Debug devfs
2. devfsd ¼Ò½º ÆÄÀÏÀ» ±¸ÇÑ´Ù.
http://www.atnf.csiro.au/~rgooch/linux/ ¿¡¼ devfsd-v1.3.10.tar.gz ÀÌ»óÀÇ
¹öÀüÀ» ´Ù¿î ¹Þ¾Æ ´ÙÀ½ ÀÛ¾÷À» ÇÑ´Ù.
# tar xvvzf devfsd-v1.3.10.tar.gz -> Àû´çÇÑ µð·ºÅ丮¿¡ ¾ÐÃàÀ» Ǭ´Ù.
# make -> ÄÄÆÄÀÏÇؼ devfsd¶õ ÆÄÀÏÀ» ¾ò´Â´Ù.
# mv devfsd /sbin/ -> /sbin µð·ºÅ丮·Î ¿Å±ä´Ù.
# cp modules.devfs /etc/ -> modules.devfs¿Í devfsd.conf¸¦
# cp devfsd.conf /etc/ /etc µð·ºÅ丮·Î ¿Å±ä´Ù.
3. /etc/rc.d/rc.sysinit ½ºÅ©¸³Æ®¿¡ ´ÙÀ½ ºÎºÐÀ» Ãß°¡ÇÑ´Ù.
# Mount /proc (done here so volume labels can work with fsck)
action "Starting devfsd" /sbin/devfsd /dev <--- À̺κÐÀ» Ãß°¡ÇÑ´Ù.
action "Mounting proc filesystem" mount -n -t proc /proc /proc
4. /etc/securetty ÆÄÀÏÀ» ´ÙÀ½°ú °°ÀÌ ¼öÁ¤ÇÑ´Ù.
1
2
3
4 # tty1 ÀÌ·±½ÄÀ¸·Î µÇ¾îÀÖ´Â°Í ¸ðµÎ tty¸¦ »«
5 # ¼ýÀںκи¸ ³²µµ·Ï ÇØÁØ´Ù.
6
7
8
5. /etc/security/console.perms ¿¡¼ ´ÙÀ½°ú °°ÀÌ ¹Ù²ãÁØ´Ù.
<console>=tty[0-9][0-9]* :[0-9]\.[0-9] :[0-9] À» ÁÖ¼®Ã³¸®ÇÏ´øÁö »èÁ¦ÇÏ°í
<console>=tty[0-9][0-9]* [0-9][0-9]* :[0-9]\.[0-9] :[0-9] À¸·Î ¹Ù²ãÁØ´Ù.
6. /etc/lilo.conf ¿¡ ´ÙÀ½À» Ãß°¡
append = "devfs=mount"
devfs¸¦ ¾²Áö ¾Ê°Ú´Ù¸é append = "devfs=nomount" ÇÏ¸é µÈ´Ù.
ÀϹÝÀûÀÎ µ¥½ºÅ©Å¾ PC»ç¾ç(1 CPU, No SCSI)¿¡¼ ÇÊ¿ä·Î ÇÏ´Â Ä¿³Î¿É¼ÇµéÀ» ¼³¸íÇϸç
±×´ÙÁö Çʿ伺ÀÌ ¾ø´Â ¿É¼ÇµéÀº Á¦¿Ü½ÃÄ×´Ù.
Code maturity level options --->
- [*] Prompt for development and/or incomplete code/drivers - °³¹ß ¼öÁØÀÇ ¿É¼Çµéµµ ¼±Åð¡´ÉÇÏ°Ô ÇØÁØ´Ù.
Loadable module support --->
- [*] Enable loadable module support - ¸ðµâÀ» »ç¿ëÇÒ¼ö ÀÖ°Ô ÇØÁÜ.
- [*] Kernel module loader - Ä¿³ÎÀÌ ¾Ë¾Æ¼ ¸ðµâÀ» ¿Ã·ÁÁØ´Ù.
Processor type and features --->
- (Pentium-Pro/Celeron/Pentium-II) Processor family
- (X) Pentium-Pro/Celeron/Pentium-II - Å×½ºÆ® PC°¡ Pentium IIÀ̹ǷΠ... ½Ã½ºÅÛ¿¡ ¸Â´Â°É ¼±ÅÃÇÑ´Ù.
- [*] MTRR (Memory Type Range Register) support - ÇÁ·Î¼¼¼°¡
¸Þ¸ð¸® ¿µ¿ª Á¢±ÙÀ» Á¦¾îÇÒ¼ö ÀÖÀ½. ±×·¡ÇÈÀÇ ¾²±â ¼Óµµ Çâ»ó
General setup --->
- [*] Networking support - ³×Æ®¿öÅ· Áö¿ø
- [*] PCI support - PCI Áö¿ø
- (Any) PCI access mode - Ä¿³ÎÀÌ Á÷Á¢ ¾×¼¼½º ½Ãµµ
- [*] System V IPC - System V IPC¸¦ Áö¿øÇÏ°Ô ÇÔ, Shared
Memoryµµ ¿©±â¼ Áö¿øÇÑ´Ù.
- [*] BSD Process Accounting - ÇÁ·Î¼¼½º Á¤º¸¸¦ ÆÄÀÏ¿¡ ÀúÀå
- [*] Sysctl support - ƯÁ¤ Ä¿³ÎÀÇ ÆĶó¹ÌÅÍ¿Í º¯¼öµéÀ» µ¿ÀûÀ¸·Î
º¯°æ½Ãų¼ö ÀÖµµ·Ï ÇÔ
- (ELF) Kernel core (/proc/kcore) format - ELF core Æ÷¸Ë
- <*> Kernel support for a.out binaries - a.out ¹ÙÀ̳ʸ® Áö¿ø
- <*> Kernel support for ELF binaries - ELF ¹ÙÀ̳ʸ® Áö¿ø
Plug and Play configuration --->
- <*> Plug and Play support - Plug and Play Áö¿ø
Block devices --->
- <*> Normal PC floppy disk support - Ç÷ÎÇÇ µå¶óÀ̹ö ÀåÄ¡ Áö¿ø
- <M> Loopback device support - ÇÑ ÆÄÀÏÀ» ÇϳªÀÇ ÆÄÀÏ ½Ã½ºÅÛó·³
ÀÎ½Ä ½ÃÅ´
Networking options --->
- <*> Packet socket - ³×Æ®¿÷ µð¹ÙÀ̽º¿ÍÀÇ Á÷Á¢Åë½ÅÀ» ÇÏ°Ô ÇØÁØ´Ù.
- <*> Packet socket: mmapped IO - ´õ ºü¸¥ Åë½ÅÀ» ÇÒ ¼öÀÖ°Ô
ÇÑ´Ù.
- <*> Unix domain sockets
- [*] TCP/IP networking - TCP/IP ³×Æ®¿öÅ· Áö¿ø
- [*] IP: TCP syncookie support (disabled per default) -
¼ºñ½º °ÅºÎ °ø°ÝÀ» ¹ÞÀ»¶§ ´ëóÇØÁÜ
ATA/IDE/MFM/RLL support --->
- <*> ATA/IDE/MFM/RLL support
- IDE, ATA and ATAPI Block devices --->
- <*> Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support -
IDE¸¦ »ç¿ëÇÒ¼ö ÀÖµµ·Ï ÇØÁØ´Ù.
- <*> Include IDE/ATA-2 DISK support - Çϵåµð½ºÅ©
»ç¿ë°¡´ÉÇÏ°Ô ÇÔ
- <*> Include IDE/ATAPI CDROM support - CD-ROM
»ç¿ë°¡´ÉÇÏ°Ô ÇÔ
- <M> Include IDE/ATAPI FLOPPY support - ZIP µå¶óÀ̺êµîÀ»
»ç¿ë°¡´ÉÇÏ°Ô ÇÔ
- --- IDE chipset support/bugfixes
- <*> Generic PCI IDE chipset support - PCI ¹æ½ÄÀÇ IDE
Áö¿ø
- <*> Sharing PCI IDE interrupts support - IRQ °øÀ¯
Áö¿ø
- <*> Generic PCI bus-master DMA support - DMA Áö¿ø
- <*> Use PCI DMA by default when available - VIA
VP2 Ĩ¼ÂÀ» »ç¿ëÇÑ´Ù¸é Àý´ë ¼±ÅÃÇÏÁö ¸»°Í
- <*> HPT366 chipset support - Ultra DMA 66 Áö¿ø
Network device support --->
- [*] Network device support
- Ethernet (10 or 100Mbit) --->
- [*] Ethernet (10 or 100Mbit) - ÀÚ½ÅÀÇ ½Ã½ºÅÛ¿¡ ¸Â´Â°É
¼±Åà (RealTek 8139µîÀ» ¾´´Ù¸é [*]EISA, VLB, PCI and on board controllers¸¦
¼±ÅÃÇϸé ÇϺΠ¸ñ·ÏÀÌ ³ª¿Â´Ù.)
Character devices --->
- [*] Virtual terminal - °¡»ó Å͹̳ΠÁö¿ø
- [*] Support for console on virtual terminal -
°¡»óÅ͹̳ÎÀ» ½Ã½ºÅÛ ÄַܼΠ¾µ¼öÀÖ°Ô ÇØÁØ´Ù.
- [*] Unix98 PTY support - Unix98 °¡»óÅ͹̳ΠÁö¿ø
- [*] (256) Maximum number of Unix98 PTYs in use (0-2048) Unix98 PTY °³¼öÀÇ ÃÖ´ë°ª
- Mice --->
- <*> Mouse Support (not serial and bus mice)
- [*] PS/2 mouse (aka "auxiliary device") support -
PS/2 ¸¶¿ì½º Áö¿ø
- <M> /dev/agpgart (AGP Support) - AGP Áö¿ø (ÇϺθ޴ºÁß ÀÚ½ÅÀÇ º¸µå¿¡
¸Â´Â°Å ¼±ÅÃ)
File systems --->
- <*> Kernel automounter support - ¿ø°Ý ÆÄÀÏ ½Ã½ºÅÛÀ» ÀÚµ¿À¸·Î
¸¶¿îÆ® ÇØÁØ´Ù.(NFSµîÀ» »ç¿ëÇÒ¶§) NÀ»¼±ÅÃÇصµ »ó°ü¾ø´Ù.
- <M> DOS FAT fs support - FAT ±â¹ÝÀÇ ÆÄÀÏ ½Ã½ºÅÛ Áö¿ø
- <M> MSDOS fs support - MSDOS ÆÄƼ¼Ç ¸¶¿îÆ® Áö¿ø
- <M> VFAT (Windows-95) fs support - À©µµÁî ÆÄƼ¼Ç Áö¿ø
- <M> ISO 9660 CDROM file system support - CD-ROM ÆÄÀÏ ½Ã½ºÅÛ
Áö¿ø
- [*] Microsoft Joliet CDROM extensions - Joliet CDROMÀ»
ÀÐÀ» ¼ö ÀÖ°Ô ÇÑ´Ù.
- [*] /proc file system support - ÇÁ·Î¼¼½º¸¦ À§ÇÑ °¡»ó
ÆÄÀÏ ½Ã½ºÅÛ
- [*] /dev/pts file system for Unix98 PTYs - À§¿¡¼ [*] Unix98 PTY
support ¸¦ ¼±ÅÃÇß´Ù¸é ¼±ÅÃÇØ¾ß ÇÑ´Ù.
- <*> Second extended fs support - ÇöÀç ¸®´ª½º ÆÄÀÏ ½Ã½ºÅÛ
- Network File Systems --->
- <M> NFS file system support - ³×Æ®¿÷ ÆÄÀÏ ½Ã½ºÅÛ Áö¿ø
- <M> SMB file system support (to mount Windows shares etc.) - À©µµÁîÀÇ ³×Æ®¿÷ ±â´ÉµéÀ» °øÀ¯ÇÒ¼ö ÀÖ°Ô ÇØÁØ´Ù.
- Native Language Support --->
- Default NLS Option: "cp949" - µðÆúÆ®·Î ÇѱÛÀÌ ¼±Åõǵµ·Ï ÇÑ´Ù.
- <*> Codepage 437 (United States, Canada)
- <*> Codepage 949 (UnifiedHangul) - À©µµÆÄƼ¼ÇÀ» ¸¶¿îÆ®
ÇßÀ»¶§ ÇѱÛÀ» º¼¼öÀÖµµ·Ï ÇØÁØ´Ù.
- <*> NLS ISO 8859-1 (Latin 1; Western European Languages)
Console drivers --->
- [*] VGA text console - VGA Ç¥ÁØ µð½ºÇ÷¹À̸¦ ÅëÇØ ÅؽºÆ®
¸ðµå¿¡¼ »ç¿ë°¡´ÉÇÏ°Ô ÇÑ´Ù.
Sound ---> ½Ã½ºÅÛ¿¡ ¸Â´Â°É ¼±ÅÃÇÑ´Ù
Kernel hacking --->
- [*] Magic SysRq key - ½Ã½ºÅÛÀÌ ´Ù¿îµÇ´õ¶óµµ Á¦¾îÇÒ ¼öÀÖµµ·Ï
ÇØÁØ´Ù.
Ä¿³Î ÄÄÆÄÀÏÀ» ÇÒ·Á¸é ¾î´ÀÁ¤µµ ÀÚ½ÅÀÇ ½Ã½ºÅÛ¿¡ °üÇÑ Çϵå¿þ¾îÀû Áö½ÄÀÌ ÀÖ¾î¾ß
ÇÑ´Ù. ±×·¡ÇÈ Ä«µå, ºñµð¿À Ä«µå, »ç¿îµå Ä«µå, ³×Æ®¿÷ Ä«µåµîÀº Ä¿³Î ÄÄÆÄÀϽÃ
°¢°¢¿¡ ¸Â´Â°ÍÀ» ¼±ÅÃÇÏ°í ¾ÕÀÇ ¿É¼ÇÀ» Âü°íÇÑ´Ù¸é ¹«¸®¾øÀÌ ÄÄÆÄÀÏ °¡´ÉÇÒ°ÍÀÌ´Ù.
´ÙÀ½Àº Ä¿³Î ÇÁ·ÎÁ§Æ® ȨÀ¸·Î ¹®ÀÇÇÑ Áú¹®µéÁß ¸î°¡Áö¸¦ Ãß·Áº¸¾Ò´Ù.
Á¤¸» Àâ´ÙÇÑ °ÍÀ̶ó ¼Ò°³Çϱ⠺βô·¯¿î°Íµµ ÀÖ°í ¾Ë¾ÆµÎ¸é À¯¿ëÇÑ °ÍµµÀÖÀ¸´Ï
Âü°íÇϱ⠹ٶõ´Ù.
Ãʱ⠸®´ª½º Ä¿³Î 0.01ÀÇ Å©±â°¡ 470KB¹Û¿¡ µÇÁö ¾Ê¾Ò´Âµ¥ ÇöÀç ÃֽŠ°³¹ß Ä¿³Î
2.4.0-test5ÀÇ Å©±â´Â 103MB³ª µÈ´Ù. ³î¶øÁö ¾ÊÀº°¡?
¿ì¸®´Â Ä¿³Î ÄÄÆÄÀÏÀ» ÇÒ ¶§ make zImage, make bzImage ÀÌ·± ½ÄÀ¸·Î
Ä¿³Î À̹ÌÁö¸¦ ¾ÐÃàÇÑ´Ù.( make zlilo, zdisk, bzlilo ¸ðµÎ ¸¶Âù°¡Áö...)
¾Æ¹«·± Àǹ® ¾øÀÌ ¹«ÀǽÄÀûÀ¸·Î ´ç¿¬È÷ ÀÌ·¸°Ô ¾²°í ÀÖ´Ù.
¿©±â¿¡´Â ¾à°£ÀÇ ¹è°æÁö½ÄÀÌ ÇÊ¿äÇѵ¥ °£·«È÷ ¼³¸íÇÏ°Ú´Ù.
¿ì¸®°¡ ÈçÈ÷ ¾Æ´Â ¸ÅŲÅä½ÃÀÇ M68°è¿ processor´Â 8bitȯ°æ¿¡¼
32bitȯ°æÀ¸·Î ¹ßÀüµÇ¾úÁö¸¸ ÀÎÅÚÀÇ 8086°è¿Àº DOSÀÇ ´ëÁß¼º ¶§¹®¿¡
¹Ù·Î 32bit ȯ°æÀ¸·Î °¡Áö ¸øÇÏ°í 16bit ȯ°æÀ» °¡Áö°Ô µÇ¾ú´Ù.
´ëÁßÀûÀ¸·Î ¸¹ÀÌ ¾²ÀÌ°í ÀÖ´Â DOS¸¦ °è¼Ó ¾µ ¼ö ÀÖµµ·Ï Çϱâ À§Çؼ¿´´Ù.
ÀÌ·¯ÇÑ ÀÌÀ¯ ¶§¹®¿¡ ¸®¾ó¸ðµå, º¸È£¸ðµå, °¡»ó86¸ðµå°¡ »ý°å´Ù.
¸®¾ó¸ðµå, º¸È£¸ðµå, °¡»ó86¸ðµå ¸ðµÎ ¼¼±×¸ÕÆ®·¹Áö½ºÅÍ¿Í ¿ÀÇÁ¼Â
·¹Áö½ºÅ͸¦ ÀÌ¿ëÇÏ¿© ÁÖ¼Ò¸¦ ÁöÁ¤Çϴµ¥ ÀÌµé ·¹Áö½ºÅÍÀÇ »ç¿ë¹æ¹ýÀÌ ´Ù¸£´Ù.
¸®¾ó¸ðµå´Â ¼¼±×¸ÕÆ®x10h + ¿ÀÇÁ¼ÂÀ¸·Î ÁÖ¼Ò¸¦ ¸¸µå´Âµ¥ 16bit¿¡¼
¼¼±×¸ÕÆ®¿Í ¿ÀÇÁ¼ÂÀÇ ÃÖ´ë °ªÀº FFFFÀÌ´Ù.
±×·¯¹Ç·Î ÃÖ´ë·Î ÁöÁ¤ÇÒ¼ö ÀÖ´Â ÁÖ¼Ò´Â FFFF0 + FFFF°¡ µÈ´Ù.
ÀÌ°É °è»êÇϸé 1MB + 64KB°¡ µÈ´Ù.
º¸È£¸ðµå¿¡¼± ÁÖ¼ÒÁöÁ¤ ¹æ½ÄÀÌ ¸®¾ó¸ðµå¿Í´Â ¸¹ÀÌ ´Ù¸£¸ç ÆäÀÌ¡ µîÀ»
ÀÌ¿ëÇÏ¿© 32bit ¸ðµÎ ÁÖ¼Ò °ªÀ» ¸¸µé ¼ö ÀÖÀ¸¹Ç·Î ÀÌ·ÐÀûÀ¸·Ð 4GBÀÇ
¸Þ¸ð¸®¸¦ ÀÌ¿ëÇÒ ¼öÀÖÀ¸¸ç °¡»ó86¸ðµå ¶ÇÇÑ ¼±ÇüÁÖ¼Ò¸¦ ¸¸µé¾î³»´Â
°úÁ¤¸¸ ´Ù¸£¹Ç·Î ±âº» ¸ÅÄ¿´ÏÁòÀº º¸È£¸ðµå¿Í °°´Ù.
(º¸È£¸ðµå¿Í °¡»ó86¸ðµåÀÇ ÁÖ¼Ò »ý¼º ¹ýÀº »ý·«ÇÑ´Ù.)
ÇÁ·Î±×·¥Àº code ºÎºÐ°ú dataºÎºÐÀ¸·Î ³ª´©¾îÁö´Âµ¥ ¸®¾ó¸ðµå¿¡¼
ÇÁ·Î±×·¥ÀÇ codeºÎºÐÀº ¹Ýµå½Ã À§ ÃÖ´ë ÁÖ¼Ò ÁöÁ¤¿µ¿ª ³»¿¡ ÀÖ¾î¾ß
ÇÑ´Ù´Â °ÍÀÌ´Ù.
¸®¾ó¸ðµå¿¡¼´Â ¿©·¯ °³ÀÇ ÇÁ·Î±×·¥ÀÌ ¸Þ¸ð¸®¿¡ ¿Ã¶ó¿Í¼ ¼öÇàµÉ ¼ö ¾øÀ¸¸ç
(¸¸¾à ¿©·¯ °³ÀÇ ÇÁ·Î±×·¥ÀÌ ¸Þ¸ð¸®¿¡¼ ¼öÇàµÈ´Ù¸é ´Ù¸¥ ÇÁ·Î±×·¥¿µ¿ªÀ»
ħ¹ü ÇÒ ¼ö Àֱ⠶§¹®ÀÌ´Ù.) interrupt¸¦ ÀÌ¿ëÇÏ´Â RAM»óÁÖ ÇÁ·Î±×·¥¸¸ÀÌ
¸Þ¸ð¸®¸¦ °°ÀÌ Â÷ÁöÇÒ ¼ö ÀÖ´Ù.
À§¿¡¼ ¼³¸íÇÑ ¸®¾ó¸ðµåÀÇ ¾à 1MBÁ¤µµÀÇ ¿µ¿ª Áß Coventional Memory°¡
640KB¸¦ Â÷ÁöÇÏ°í ³ª¸ÓÁö´Â ºñµð¿À·¥ À̳ª ±âŸ µð¹ÙÀ̽º°¡ Â÷ÁöÇÑ´Ù.
±×·¯¹Ç·Î Ä¿³Î À̹ÌÁö´Â Coventional Memory Áï 640KB³»¿¡ µé¾î°¡¾ß ÇϹǷÎ
Ä¿³Î À̹ÌÁöÀÇ Å©±â°¡ 640KBº¸³ª ÀÛ¾Æ¾ß ÇÑ´Ù.
Ä¿³Î À̹ÌÁöÀÇ ¾ÐÃàÀ¸·Î ÀÌ·¯ÇÑ Á¦¾àÀ» ºÎºÐÀûÀ¸·Î ±Øº¹ÇÏ¿´À¸³ª
640KBÀÇ ÀϺδ ¿©·¯ °¡Áö ¹öÆÛ(DMA buffer)³ª ƯÁ¤ ÁÖ¼Ò°¡ ½Ã½ºÅÛ¿¡
¿¹¾àµÇ¾î ÀÖÀ¸¹Ç·Î 640KBº¸´Ù ´õ ÀÛÀº Å©±âÀÇ Ä¿³ÎÀÌ ¿ä±¸µÈ´Ù.
ÀÌ·¯ÇÑ ¹®Á¦ÀÇ ´ë¾ÈÀ¸·Î Ä¿³ÎÀ» Extended Memory¿¡ ÀûÀçÇÏ´Â ¹æ¹ýÀ» »ý°¢ÇØ
º¼ ¼ö ÀÖ´Ù.
Extended Memory ¿µ¿ª¿¡ ÀÚÀ¯·ÎÀÌ ÀûÀçÇϱâ À§Çؼ´Â º¸È£¸ðµå¸¦
»ç¿ëÇؾßÇϴµ¥ º¸È£¸ðµå¿¡¼´Â BIOS¿Í °°ÀÌ ½Ã½ºÅÛÀÌ ¿ÏÀüÈ÷ ÁغñµÇ±â ÀüÀÇ
±âº»ÀûÀÎ ±â´ÉµéÀ» »ç¿ëÇÒ ¼ö ¾ø´Ù.
ÀÌ·² °æ¿ì µð½ºÅ©¸¦ ¾×¼¼½ºÇÏ´Â ÀÚüÀûÀÎ ÇÔ¼ö¸¦ ÁغñÇÏ¿© Ä¿³ÎÀ»
Extended Memory ¿¡ ÀûÀçÇϰųª ¾Æ´Ï¸é Ä¿³ÎÀ» ÁÙÀÌ´Â ¼ö¹Û¿¡ ¾ø´Â °ÍÀÌ´Ù.
¿©±â¿¡ ´ëÇؼ± ÀüÇô ¸ð¸£°í ÀÖ¾ú´Âµ¥ ¾î´À ³¯ 2.4.0-test1-ac18 ¹öÀüÀ» ´õ´õ¿í
ÃÖÀûÈÇϱâ À§ÇØ Ä¿³Î ÄÄÆÄÀÏÀ» ÇÏ°í lilo.conf¿¡ À̹ÌÁö¸¦ µî·Ï½ÃÅ°°í lilo¶õ
¸í·ÉÀ¸·Î Ä¿³Î À̹ÌÁö¸¦ writeÇϴµ¥ ´ÙÀ½°ú °°Àº ¸Þ¼¼Áö°¡ ³ª¿Ô´Ù.
Only 19 image names can be defined
±×¶§±îÁö ³ªÀÇ lilo.conf¿¡´Â 19°³ÀÇ Ä¿³Î À̹ÌÁö°¡ Á¤ÀǵǾîÀÖ¾ú´Âµ¥ Çϳª ´õ
Ãß°¡Çؼ 20°³ °¡ µÇÀÚ À§¿Í °°Àº ¸Þ¼¼Áö¸¦ Ãâ·ÂÇÑ °ÍÀ̾ú´Ù.
Ä¿³Î À̹ÌÁö¸¦ 20°³ ÀÌ»ó µî·Ï(?)ÇÏÁö ¾Ê¾Ò´Ù¸é ¾Æ¸¶ ¸ô¶úÀ» °ÍÀÌ´Ù.
°á·ÐÀûÀ¸·Ð ¼Óµµ ¶§¹®ÀÌ´Ù.
½º¿ÒÆÄÀÏÀ» ¾´´Ù¸é ÆÄÀÏ¿¡ Á¢±ÙÇϱâÀ§ÇØ VFS¿Í ÆÄÀÏ ½Ã½ºÅÛ µå¶óÀ̹ö ±×¸®°í
ÆÄÀÏÁ¤º¸¸¦ ´ã°íÀÖ´Â ¿©·¯ °¡Áö¸¦ Àоî¿À°í ¾µ¶§µµ ÀÏ¹Ý ÆÄÀÏÀÌ writing µÇ´Â °æ·Î¸¦
°ÅÄ¥ °ÍÀÌ´Ù. ½º¿Ò ÆÄƼ¼Ç¿¡¼´Â À§ÀÇ °úÁ¤¾øÀÌ Æ¯Á¤ ºí·°¿¡ ¹Ù·Î Á¢±ÞÇÒ ¼ö ÀÖÀ¸¹Ç·Î
ºÒ ÇÊ¿äÇÑ ¿À¹öÇìµå°¡ ¹ß»ýÇÏÁö ¾Ê¾Æ ¼Óµµ°¡ ´õ ºü¸£±â ¶§¹®ÀÌ´Ù.
ÇöÀç ¸®´ª½ºÀÇ ±âº» ÆÄÀÏ ½Ã½ºÅÛÀº ext2ÀÌ´Ù. (SuSE´Â Reiser ÆÄÀϽýºÅÛÀÌ´Ù.)
ext2¶õ Second Extended File SystemÀÇ ¾à¾îÀ̸ç Ãʱ⠸®´ª½º ÆÄÀÏ ½Ã½ºÅÛÀ̾ú´ø
MINIX¿¡¼´Â ÃÖ´ë ÆÄÀÏÀ̸§ 14¹®ÀÚ, ÃÖ´ë ÆÄƼ¼Ç 64MB¹Û¿¡ µÇÁö ¾Ê¾Ò°í ÀÌ·± ¿©·¯ °¡Áö
¹®Á¦·Î ÆÄÀÏ ½Ã½ºÅÛÀÌ ¿À´Ã³¯ÀÇ ext2±îÁö ¹ßÀüÇÏ¿´´Ù.
ext2¿¡¼´Â 255¹®ÀÚÀÇ ÆÄÀϸí, ÃÖ´ë 2GBÀÇ ÆÄÀÏ, 4TBÀÇ µð½ºÅ© ¿ë·®À» Áö¿øÇϸç
¼ºêµð·ºÅ丮´Â Å×½ºÆ®Çغ»°á°ú 32000°³±îÁö¸¸ ¸¸µé¾îÁ³´Ù.
´ÙÀ½À» Âü°íÇ϶ó.
#!/bin/sh
count=70000
i=1
while [ $i -lt $count ]
do
mkdir $i && echo "$i"
i=$(($i+1))
done
À§´Â ¼ºê µð·ºÅ丮¸¦ ¸¸µé¾îÁÖ´Â shell scriptÀÌ¸ç ¼ºê µð·ºÅ丮 À̸§Àº 1¹øºÎÅÍ
count·Î ÁöÁ¤ÇÑ °ª¸¸Å ¸¸µé¾î ÁØ´Ù.
- ext2 ÆÄÀÏ ½Ã½ºÅÛ¿¡¼ÀÇ ¼ºê µð·ºÅ丮 »ý¼º
Ä¿³Î ¹öÀü : 2.2.14-5.0
$ ls -l
drwxrwxr-x 32000 suni00 suni00 475136 7¿ù 12 15:41 tmp/
$du -sh
128M .
µð·ºÅ丮 ¸µÅ©ÀÇ inode ¶§¹®¿¡ ./¿Í ../¸¦ Æ÷ÇÔÇÏ¿© 32000 ±îÁö ¹Û¿¡ »ý¼ºµÇÁö
¾Ê´Â°É ¾Ë ¼ö ÀÖ´Ù.
¶Ç ext2ÀÇ ºí·° »çÀÌÁî´Â 4KBÀ̹ǷΠ»ý¼ºµð·ºÅ丮µéÀÇ ÃÑ ¿ë·®ÀÌ 128MB³ª
Â÷ÁöÇÏ¿´½À´Ï´Ù.
- Reiser ÆÄÀÏ ½Ã½ºÅÛ¿¡¼ÀÇ ¼ºê µð·ºÅ丮 »ý¼º
Ä¿³Î ¹öÀü : 2.2.16°ú 2.4.0-test1-ac18
$ls -l
drwxrwxr-x 64535 suni00 suni00 1548888 Jul 12 15:48 tmp/
$du -sh
30M .
À§¿¡¼ º¸´Ù½ÃÇÇ 64535°³°¡ »ý¼ºµÇ¾ú°í µð·ºÅ丮µéÀÇ ¿ë·®Àº ext2º¸´Ù ÈξÀ ÀûÀº
30MB ¹Û¿¡ Â÷ÁöÇÏÁö ¾Ê´Â°É ¾Ë ¼ö ÀÖ´Ù.
(Reiser ÆÄÀÏ ½Ã½ºÅÛ¿¡¼ÀÇ ºó µð·ºÅ丮ÀÇ »çÀÌÁî´Â 48Byte¸¦ Â÷ÁöÇß´Ù.)
µð·ºÅ丮 ¸µÅ©°¡ µÑ ´Ù 2Byte ¹üÀ§±îÁö Ç¥ÇöÇÒ ¼ö ÀÖ´Â °Í °°Àºµ¥ ÆÄÀÏ ½Ã½ºÅÛ¿¡
µû¶ó À§¿Í °°Àº Â÷ÀÌ°¡ ³µ´Ù.
ÇöÀç ¸®´ª½ºÀÇ ±âº» ÆÄÀÏ ½Ã½ºÅÛÀÎ ext2´Â ½Å·Ú¼º, Ãæµ¹ º¹±¸ µîÀÇ ¹®Á¦°¡ Àִµ¥
ÀÌ·± ºÎºÐµéÀ» ÇØ°á ÇÒ ¼ö ÀÖ´Â °ÍÀÌ Àú³Î¸µ ÆÄÀÏ ½Ã½ºÅÛÀÌ´Ù. Reiser ÆÄÀÏ ½Ã½ºÅÛ
¶ÇÇÑ ÀÌ·± Àú³Î¸µ ÆÄÀÏ ½Ã½ºÅÛÀÇ ÀÏÁ¾À¸·Î ÀÌ¹Ì SuSE¿¡¼´Â ±âº» ÆÄÀÏ ½Ã½ºÅÛÀ¸·Î
Reiser¸¦ ¼±ÅÃÇÏ°í ÀÖ´Ù. ¸ÓÁö¾Ê¾Æ ¸®´ª½ºÀÇ ±âº» ÆÄÀÏ ½Ã½ºÅÛµµ Àú³Î¸µ ÆÄÀÏ
½Ã½ºÅÛÀ¸·Î ¹Ù²ð °ÍÀÌ´Ù.
- ÆÐÄ¡ÆÄÀÏ ¹Þ¾Æ¿À±â
http://devlinux.com/projects/reiserfs/ ¶Ç´Â
http://kernel.pe.kr/data.php ¿¡¼ ÀÚ½ÅÀÇ ¹öÀü¿¡ ¸Â´Â ÆÐÄ¡¸¦ ¹Þ¾Æ¿Â´Ù.
- ÆÐÄ¡¸¦ Àû¿ë½ÃŲ´Ù.(/usr/src/linux ¿¡¼ ÆÐÄ¡ÇÑ´Ù.)
# patch -p1 < ÆÐÄ¡ÆÄÀϸí (¾ÐÃàÀ» Ç®¾úÀ»¶§)
¶Ç´Â
# gzip -cd ÆÐÄ¡ÆÄÀϸí.gz | patch -p1
- Ä¿³Î¿É¼Ç ¼±ÅÃ
Code maturity level options --->
[*] Prompt for development and/or incomplete code/drivers ¸¦ ¼±ÅÃÇÏ°í
File systems ---> <*> Reiserfs support ¼±ÅÃÇÑ´Ù.
- Ä¿³Î ÄÄÆÄÀÏ¹× ¸ðµâ ÄÄÆÄÀÏ, lilo Á¤º¸µµ °íÃÄÁØ´Ù.
- ReiserFS À¯Æ¿ ÄÄÆÄÀÏ(mkreiserfsÀ» ¸¸µé±âÀ§ÇØ)
# cd /usr/src/linux/fs/reiserfs/utils/
# make
# make install
- ReiserFS°¡ Àû¿ëµÈ Ä¿³Î À̹ÌÁö·Î ÀçºÎÆÃÇÑ´Ù.
- ReiserFS ¸¸µé±â
(/dev/hdb1 ¿¡ ¸¸µç´Ù°í °¡Á¤ÇÏ¸ç ±âÁ¸ ext2 ÆÄÀϽýºÅÛÀÇ
µ¥ÀÌÅÍ´Â Áö¿öÁö¹Ç·Î ¹é¾÷ÇÏ´øÁö ¾Æ´Ô »õ Çϵ带 ´Þ¾Ò´Ù°í °¡Á¤ÇÑ´Ù.)
# umount /dev/hdb1 (mount µÇ¾îÀÖÁö ¾Ê´Ù¸é ÀÌ°Ç ÇÊ¿ä¾ø´Ù.)
# mkreiserfs /dev/hdb1
# mount /dev/hdb1 /TEST(mount ½Ãų µð·ºÅ丮´Â °¢ÀÚ ¾Ë¾Æ¼..)
- /etc/fstab ¼öÁ¤Çϱâ
/dev/hdb1 /TEST reiserfs defaults 1 2
ext2¸¦ reiserfs·Î ¹Ù²Ù¸é µÈ´Ù.
- È®ÀÎÇϱâ
$ mount
...
/dev/hdb1 on /TEST type reiserfs (rw)
...
À§¿Í °°ÀÌ reiserfs ¶ó°í ³ª¿À¸é ¼º°ø
Reiser ÆÄÀÏ ½Ã½ºÅÛÀ» ¸¸µé°í ¸¶¿îÆ® ½ÃÅ°¸é ±âº»À¸·Î 32MBÀÇ ¿ë·®À» Àâ¾Æ¸Ô´Â´Ù.
ÀÌ °ø°£¿¡´Ù°¡ ÀÚüÀûÀÎ Á¤º¸¸¦ ±â·ÏÇϹǷΠReiser ÆÄÀÏ ½Ã½ºÅÛÀ» À§Çؼ± ÃÖ¼Ò
32MBÀÌ»óÀÇ ÆÄƼ¼ÇÀ» ÇÊ¿ä·Î ÇÑ´Ù.(³ªÀÇ /boot ÆÄƼ¼ÇÀº 16MB¿©¼ reiserfs¸¦
Àû¿ë½ÃÅ°Áö ¸øÇÏ¿´´Ù.)
ÇöÀç nVidia¿¡¼ ³ª¿À´Â X 4.0 µå¶óÀ̹öµéÀº Ä¿³Î 2.2.xÀÇ ¾ÈÁ¤¹öÀü¿¡¸¸ Àû¿ëµÈ´Ù.
°³¹ß¹öÀü¿¡ Àû¿ë½Ãų·Á¸é
http://www.darkrock.co.uk/nv/¿¡¼ NVIDIA_kernel-0.9-2.3.x.tar.gz¸¦ ¹Þ¾Æ
ÄÄÆÄÀÏ ÇؾßÇÑ´Ù.(Å×½ºÆ®Çغ» °á°ú Ä¿³Î 2.4.0-test1-ac18±îÁö¸¸ Àû¿ëµÈ´Ù.)
¾î¶² Çб³ÀÇ Àü»ê°ü·Ã °ú¸ñ ¸®Æ÷Æ®ÀÎÁö ÀÌ·± Áú¹®À» ¸¹ÀÌ ¹Þ¾Ò´Ù.
Ä¿³Î ¹öÀü¸¸À» °¡Â¥·Î ¹Ù²Ü·Á´Â ÀÌÀ¯¸¦ ¸ð¸£°Ú´Ù.
# vi /usr/src/linux/Makefile
VERSION = 2
PATCHLEVEL = 4
SUBLEVEL = 0
EXTRAVERSION = -test1-ac18
# vi /usr/src/linux/include/linux/version.h
#define UTS_RELEASE "2.4.0-test1-ac18"
#define LINUX_VERSION_CODE 132096
#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))
À§ÀÇ Makefile¿¡¼ ¹öÀü Á¤º¸¸¦ °íÃÆ´Ù¸é ÄÄÆÄÀÏÇÒ¶§ version.h´Â ÀÚµ¿À¸·Î ¹Ù²ï´Ù.
ÀÌ µÎ ÆÄÀϵéÀ» ¿øÇÏ´Â ¹öÀüÀ¸·Î ¹Ù²Ù°í ÄÄÆÄÀÏ ÇÏ¸é µÈ´Ù.
À߸ø ¹Ù²Ù¾î¼ Ä¿³Î ¹öÀüÀÌ ¸ÂÁö ¾ÊÀ» °æ¿ì System.map¿¡¼ ¹öÀüÀÌ Æ²¸®´Ù°í ¸Þ¼¼Áö¸¦
º¸³¾ °ÍÀÌ´Ù. ±×·² °æ¿ì ÇØ´ç Ä¿³Î À̹ÌÁöÀÇ System.mapÀ» ¾ø¾Ö¹ö·Áµµ ¹«°üÇÏ´Ù.
(System.mapÀÌ ¾ø´Ù¸é ¾îµð¼ ¹®Á¦°¡ ¹ß»ýÇß´ÂÁö ¾Ë ¼ö ¾øÀ» °ÍÀÌ´Ù.)
ÀÌ°Ç ±×³É ³»°¡ ÇÏ°í ½Í¾î¼ ÇغôÙ.
# vi /usr/src/linux/arch/i386/kernel/setup.c
$ cat /proc/cpuinfo Á¤º¸¸¦ °íÃÄÁØ´Ù.
# vi /usr/src/linux/init/main.c
$ dmesg ÀÇ º¸°í ¹Ó½º¸¦ °íÃÄÁØ´Ù.
À§ µÎ ÆÄÀÏÀ» ¿øÇÏ´Â ´ë·Î °íÄ¡¸é µÈ´Ù. ¾à°£ÀÇ C ÇÁ·Î±×·¡¹Ö¸¸ ÇÒ ¼ö ÀÖ´Ù¸é
½±°Ô ¿øÇϴ´ë·Î ¹Ù²Ü ¼ö ÀÖÀ»°ÍÀÌ´Ù.
À§¿Í °°Àº Áú¹®À» ÇϽô ºÐµéÀÌ °¡²û °è½Åµ¥ MS-WINDOWS Ä¿³ÎÀ» ¾î¶»°Ô ¼Õº¼ ¼ö
Àְڴ°¡? (°Ë»ö¿£Áø¿¡¼ kernel·Î °Ë»öÇؼ Ä¿³Î ÇÁ·ÎÁ§Æ® ȨÀ¸·Î µé¾î¿Ô´Ù´õ±º¿ä.)
¼ºÀÇ´Â ´ë´ÜÇϳª ´ÜÁö ¼Õ»ó ¾ÈµÈ ´Ù¸¥ KERNEL32.DLLÀ» Ä«ÇÇÇ϶ó°í ÇÒ ¼ö¹Û¿¡...
Ä¿³Î 2.4 Intro
Ä¿³Î 2.4 Intro
v0.2, 2000³â 8¿ù 30ÀÏ
°³¹ßÄ¿³Î 2.4.0-tset ¹öÀüÀ» ÄÄÆÄÀÏÇϱâÀ§ÇÑ ±âº»ÀûÀÎ ¹è°æÁö½Ä°ú ÀϹÝÀû »ç¾çÀÇ PC¿¡¼ÀÇ ÄÄÆÄÀÏ ¿É¼Ç¹× ¹æ¹ý ±×¸®°í Ä¿³Î 2.4 ¿¡¼ ¹«¾ùÀÌ ´Þ¶óÁ³´ÂÁö¸¦ ´Ù·é´Ù.
(ÀÌ ±ÛÀ» ¾²´Â ÇöÀç °¡Àå ÃֽŠ°³¹ß Ä¿³ÎÀÎ 2.4.0-test7À» ±âÁØÀ¸·Î ÀÌ·ÐÀûÀÎ¸é º¸´Ü
½ÇÁ¦·Î ¾î¶»°Ô ÇؾßÇÏ´ÂÁö¿¡ ÁßÁ¡À» µÎ¾ú´Ù.)
Ä¿³ÎÀ̶õ ¿î¿µÃ¼Á¦(Operating System)¿¡¼ °¡Àå ÇÙ½ÉÀûÀÎ ¿ªÇÒÀÎ ÀÚ¿ø
(¸Þ¸ð¸®, ÇÁ·Î¼¼¼µî)À» °ü¸®ÇÏ¸ç ½Ã½ºÅÛÀÌ ¿øÈ°È÷ µ¹¾Æ°¥ ¼ö ÀÖµµ·Ï
Á¦¾îÇØ ÁØ´Ù. ÇöÀç ¿ì¸®°¡ ¸®´ª½º(OS)¶ó°í Çϴ°͵µ ½ÇÁ¦ÀûÀ¸·Ð ¸®´ª½º¶õ ¿î¿µÃ¼Á¦ÀÇ
Ä¿³Î À̸§À» ¸»Çϴ°ÍÀε¥ ÀÌ°ÍÀÌ È®ÀåµÈ Àǹ̷Π»ç¿ëµÇ¾î ÇöÀçÀÇ '¸®´ª½º'¶õ OS¸¦
ÁöĪÇÏ°Ôµµ µÈ°ÍÀÌ´Ù.
±×·¯¹Ç·Î Linux = kernelÀ̶õ µî½ÄÀÌ ¼º¸³ÇÑ´Ù.
¿ì¼±ÀûÀ¸·Î ¾ÈÁ¤ ¹öÀü°ú °¡Àå ÃֽŠ°³¹ß¹öÀüÀ» ¿øÇÑ´Ù¸é
http://kernel.pe.kr
·Î Á¢¼ÓÇÏ¸é µÈ´Ù.
±× ÀÌ¿Ü¿¡´Â ´ÙÀ½ ¹Ì·¯ »çÀÌÆ®¿¡¼ ±¸ÇÒ¼ö ÀÖ´Ù.
SHELL¿¡¼ finger @finger.kernel.org ¸í·ÉÀ¸·Î ÃֽŠĿ³Î¹öÀüÀ» ¾Ë ¼ö ÀÖ´Ù.
ÀÌ ¹®¼¸¦ ÀÛ¼ºÇÏ´Â ÇöÀç ÃֽŹöÀüÀº ´ÙÀ½°ú °°´Ù.
- stable version : 2.2.16
- beta version : 2.4.0-test7
- prepatch version : 2.4.0-test8/pre1
Ä¿³ÎÀº stable version(¾ÈÁ¤¹öÀü)°ú beta version(°³¹ß¹öÀü)À¸·Î ³ª´©´Âµ¥ ÀÌ
µÎ ¹öÀüÀÇ Â÷ÀÌ´Â minor number°¡ ¦¼öÀÌ³Ä È¦¼öÀ̳ķΠ±¸ºÐÇÑ´Ù.
(minor number¶õ Ä¿³Î 2.2.16ÀÌ ÀÖ´Ù¸é °¡¿îµ¥ ¼öÀÎ 2°¡ minor numberÀÌ°í
Á¦ÀÏ ¾ÕÀÇ 2´Â major number ÀÌ´Ù. ¸¶Âù°¡Áö·Î 2.3.99¿¡¼± major´Â 2ÀÌ°í minor´Â
3ÀÌ´Ù.)
±×·¸´Ù¸é 2.4.0-test ¹öÀüµéÀº minor number°¡ ¦¼öÀε¥ ¿Ö °³¹ß¹öÀüÀ̶ó°í Çϳª?
±× ÀÌÀ¯´Â 2.3.99ÀÇ ÆÐÄ¡¹öÀüµéÀÌ ÀÌÁ¦ °ÅÀÇ 2.4 ¾ÈÁ¤¹öÀü¿¡ °¡±î¿öÁ³´Ù´Â Àǹ̷Î
Linus°¡ 2.4.0-test¶ó À̸§ ºÙÀΰÍÀÌ´Ù.
¿©·¯ °¡Áö ¹æ¹ýµéÀÌ ÀÖÁö¸¸ ÀúÀåµÈ Ä¿³Î¿É¼Ç¼³Á¤ ÆÄÀÏÀÌ ÀÖ´Ù¸é oldconfig¸¦
ÀúÀåµÈ ÆÄÀÏÀÌ ¾ø´Ù¸é menuconfig¸¦ ÃßõÇÑ´Ù.
- make oldconfig ¶Ç´Â make menucofig
make oldconfig¸¦ ÇϱâÀ§Çؼ± ´ÙÀ½°ú °°Àº ÀÛ¾÷ÀÌ ÇÊ¿äÇÏ´Ù.
¿¹Àü¿¡ ¼³Á¤ÇÑ Ä¿³Î¿É¼ÇÀÌ kernel.config ¶õ À̸§À¸·Î ÀúÀåµÇ¾îÀÖ´Ù¸é
ÀÌ ÆÄÀÏÀ» »õ ¹öÀüÀÇ Ä¿³ÎÀÌ ÀÖ´Â /usr/src/linux µð·ºÅ丮¿¡ .config¶õ À̸§À¸·Î
Ä«ÇÇÇÑ´Ù.
# cp kernel.config /usr/src/linux/.config
À§¿Í°°ÀÌ ÇÑÈÄ make oldconfig¸¦ ½ÇÇàÇÏ¸é ¿¹Àü ¿É¼ÇÀ» ±×´ë·Î Àû¿ë½ÃÄÑÁÖ¸ç
Ȥ½Ã³ª »õ·Î¿î ¿É¼ÇÀÌ ÀÖ´Ù¸é ȸ鿡 º¸¿©ÁÖ¸ç ¼±ÅÃÇÒ ¼ö ÀÖµµ·Ï ÇØÁØ´Ù.
- make dep
- make clean
- make bzlilo
make bzlilo¶õ ´ÙÀ½°ú °°Àº ¸í·ÉµéÀ» ¼øÂ÷ÀûÀ¸·Î ½ÇÇàÇÑ°Í°ú °°´Ù.
# make bzImage
# cp /usr/src/linux/arch/i386/boot/bzImage /vmlinuz
# /sbin/lilo
- mv /vmlinuz /boot/vmlinuz-2.4.0-test7
- mv /System.map /boot/System-2.4.0-test7
- vi /etc/lilo.conf
ÀϹÝÀûÀ¸·Î ´ÙÀ½°ú °°Àº ȸéÀ» º¼ ¼ö ÀÖÀ»°ÍÀÌ´Ù.
boot=/dev/hda
map=/boot/map
install=/boot/boot.b
prompt
timeout=50
default=linux
image=/boot/vmlinuz-2.4.0-test7 ---> »õ·Î »ý¼ºÇÑ Ä¿³ÎÀ̹ÌÁö¸¦ linux¶õ ·¹À̺í
label=linux ·Î ºÎÆÃÇÒ ¼ö ÀÖµµ·Ï ÇϱâÀ§ÇØ
read-only
root=/dev/hda1
image=/boot/vmlinuz-2.2.16 ---> ¿¹Àü Ä¿³ÎÀÌ 2.2.16À̶ó°í °¡Á¤ÇßÀ»¶§
label=old old¶õ ·¹À̺í·Î Á¤ÀÇÇÑ´Ù.
read-only
root=/dev/hda1
- /sbin/lilo
¸ðµâÀÌ »ý¼ºµÇ´Â µð·ºÅ丮´Â '/lib/modules/2.4.0-test7'ÀÌ°í ¸¸¾à ÇöÀç Ä¿³ÎÀÇ ¸ðµâÀ»
´Ù½Ã »ý¼ºÇÏ·Á°í ÇÑ´Ù¸é ÇöÀç Ä¿³ÎÀÇ ¸ðµâ µð·ºÅ丮¸¦ Áö¿ì°í ´Ù½Ã ÄÄÆÄÀÏ Çϱ⠹ٶõ´Ù.
(Ä¿³Î 2.4.0-test ¹öÀü¿¡¼´Â ¸ðµâÀÇ µð·ºÅ丮±¸Á¶°¡ ¸¹ÀÌ ¹Ù²î¾ú´Ù.)
- make modules
- make modules_install
RedHat ±â¹Ý 6.1ÀÌ»óÀÇ ¹èÆ÷ÆÇÀ̶ó¸é modutils¸¸ ¾÷±×·¹À̵å ÇÏ¸é µÉ°ÍÀÌ´Ù.
(modutils¸¦ ¾÷Çϴµ¥ glibc¹öÀüÀÌ ³·´Ù¸é glibcµµ ¾÷ÇØ¾ß ÇÑ´Ù. glibc´Â ·ÎÄÉÀÏ°ú
timezone, ¿©·¯ ¶óÀ̺귯¸®¸¦ Æ÷ÇÔÇؼ ÀÇÁ¸¼º ¹®Á¦¿¡ ¸¹Àº ¿µÇâÀ» ³¢Ä¡¹Ç·Î
¾÷±×·¹À̵å Çϴµ¥ ÁÖÀǸ¦ ÇÊ¿ä·Î ÇÑ´Ù. rpm ¹öÀüÀÌ ³·´Ù¸é rpmµµ ¾÷ÇØ¾ß ÇÑ´Ù.)
2.4.0-test Ä¿³ÎÀ» »ç¿ëÇϱâÀ§Çؼ ´ÙÀ½ »çÇ×À» È®ÀÎÇ϶ó.
ÆÐÅ°Áö ¸í ¹öÀü È®Àιæ¹ý
o Gnu C 2.7.2.3 # gcc --version
o Gnu make 3.77 # make --version
o binutils 2.9.1.0.22 # ld -v
o util-linux 2.10o # kbdrate -v
o modutils 2.3.13 # insmod -V
o e2fsprogs 1.18 # /sbin/tune2fs --version
o pcmcia-cs 3.1.19 # cardmgr -V
o PPP 2.4.0 # pppd --version
o isdn4k-utils 3.1beta7 # isdnctrl 2>&1|grep version
- Bogo Mips°¡ µÎ ¹è·Î ¿Ã¶ó°£´Ù.(AMD-K6 ¿Í È®ÀÎ ¸øÇÑ Processor Á¦¿Ü)
$ cat /proc/cpuinfo ¸¦ Çغ¸¸é È®ÀÎÇÒ ¼ö ÀÖ´Ù.
Bogo(bogos : °¡Â¥)À̹ǷΠ½Å·ÚÇÒ¼ø ¾øÁö¸¸ ±âºÐ¸¸Àº ÁÁÁö¾ÊÀº°¡?
- modutils ¾÷±×·¹À̵å½Ã ¹Ù²î´Â °Íµé
¸¸¾à modutils ¹öÀüÀÌ ¾Õ¿¡¼ ¸í½ÃÇÑ ¹öÀüº¸´Ù ³·Àºµ¥ ¸ðµâ ÄÄÆÄÀÏÀ» ÇÑ´Ù¸é
¿¡·¯°¡ ³´Ù. ²À modutils¸¦ ¾÷ ÇØ¾ß ¸ðµâ ÄÄÆÄÀÏÀ» ÇÒ ¼ö ÀÖ´Ù.
modutils¸¦ ¾÷ÇÏ¸é ¿¹ÀüÀÇ /etc/conf.modules°¡ /etc/modules.conf·Î ¹Ù²î°í
USB ¸ðµâµµ ÀÚµ¿·ÎµùÀÌ °¡´ÉÇÏ¸ç ¸¹Àº ¿¹¾à¾î¸¦ Áö¿øÇÑ´Ù.
´ÙÀ½ ftp »çÀÌÆ®¿¡¼ ±¸ÇÒ¼ö ÀÖ´Ù.
ftp://ftp.kernel.org/pub/linux/utils/kernel/modutils/v2.3/
- ¸ðµâÀÌ À§Ä¡ÇÑ /lib/modules/2.4.0-test7 µð·ºÅ丮 ±¸Á¶
Ä¿³Î 2.4.0-test6 ÀÌ»óÀÇ ¹öÀüºÎÅÍ ¸ðµâµéÀÌ À§Ä¡ÇÏ´Â '/lib/modules/Ä¿³Î¹öÀü' ÀÇ
µð·ºÅ丮 ±¸Á¶°¡ ´õ ¼¼ºÐÈ µÇ°í ´ÙÀ½°ú °°Àº Çü½ÄÀ¸·Î ¹Ù²î¾ú´Ù.
ÇöÀç ÇÊÀÚÀÇ µð·ºÅ丮 ±¸Á¶ÀÌ´Ù.
[kernel@suni00/lib/modules/2.4.0-test7]$ ls -l
lrwxrwxrwx 1 root root 26 Sep 4 17:09 build -> /usr/src/linux-2.4.0-test7/
drwxr-xr-x 6 root root 1024 Sep 4 17:09 kernel/
-rw-r--r-- 1 root root 1340 Sep 5 20:33 modules.dep
-rw-r--r-- 1 root root 3235 Sep 5 20:33 modules.pcimap
drwxr-xr-x 2 root root 1024 Sep 4 17:09 pcmcia/
À§ÀÇ kernel µð·ºÅ丮¿¡ µé¾î°¡º¸¸é ´ÙÀ½°ú °°ÀÌ ¼¼ºÐÈ µÇ¾îÀÖ´Ù.
[kernel@suni00/lib/modules/2.4.0-test7/kernel]$ ls -l
drwxr-xr-x 3 root root 1024 Sep 4 17:09 arch/
drwxr-xr-x 8 root root 1024 Sep 4 17:10 drivers/
drwxr-xr-x 9 root root 1024 Sep 4 17:09 fs/
drwxr-xr-x 4 root root 1024 Sep 4 17:09 net/
drivers µð·ºÅ丮 ±¸Á¶¸¦ º¸¸é ¿¹Àü ¸ðµâµéÀÇ µð·ºÅ丮 ±¸Á¶°¡ ¿©±â·Î ¿Å°Ü ¿ÔÀ½À»
¾Ë ¼ö ÀÖ´Ù.
[kernel@suni00/lib/modules/2.4.0-test7/kernel/drivers]$ ls -l
drwxr-xr-x 2 root root 1024 Sep 4 17:09 block/
drwxr-xr-x 3 root root 1024 Sep 4 17:09 char/
drwxr-xr-x 2 root root 1024 Sep 4 17:09 ide/
drwxr-xr-x 2 root root 1024 Sep 4 17:09 net/
drwxr-xr-x 2 root root 1024 Sep 4 17:09 sound/
drwxr-xr-x 2 root root 1024 Sep 4 17:10 video/
- UID,GID bit°¡ 16bit¿¡¼ 32bit·Î ¹Ù²î¾ú´Ù.
2^16Àº 65536À̹ǷΠ»ç¿ëÀÚ¸¦ 65536¸í ±îÁö ¸¸µé¼ö ÀÖÁö¸¸ Ä¿³Î 2.4¿¡¼´Â
2^32 Áï 4294967296¸íÀ» ¸¸µé¼ö ÀÖ´Ù.(½Ã½ºÅÛ ÄÝÀÇ º¯°æµµ ÇÊ¿ä·Î Çϸç
Çö½ÇÀûÀ¸·Î ÀÌ·¸°Ô ¸¹Àº À¯Àú¸¦ ÇÑ ¼¹ö¿¡ µÐ´Ù´Â°ÍÀº ¹«¸®ÀÌ´Ù.)
- »ý¼º°¡´ÉÇÑ ÇÁ·Î¼¼½ºÀÇ ¼öÀÇ Á¦ÇÑÀÌ ¾ø¾îÁ³´Ù.
2.2.x Ä¿³ÎÀÇ ¼Ò½º¸¦ º¸¸é include/linux/tasks.h¿¡¼ NR_TASKSÀÇ °³¼ö°¡ 512·Î
Á¤ÀǵǾî ÀÖ´Ù. 512ÀÌ»óÀÇ ÇÁ·Î¼¼½º¸¦ »ý¼ºÇÒ ¼ö ÀÖµµ·Ï ÇÏ·Á¸é ÀÌ °ªÀ» °íÃÄ
ÁÖ¾î¾ß Çߴµ¥ x86 machine¿¡¼´Â GDT(Global Descriptor Table)ÀÇ Á¦ÇѶ§¹®¿¡
4092±îÁö ¹Û¿¡ ÇÒ ¼ö ¾øµµ·Ï µÇ¾îÀÖ¾ú´Ù.
2.4.0-test ¹öÀü¿¡¼´Â task ÀڷᱸÁ¶°¡ µ¿ÀûÀ¸·Î ÇÒ´çµÇ¾î NR_TASKS °ªÀÌ
¾ø¾îÁ³°í ¸Þ¸ð¸®ÀÇ ÇѰ踸ÀÌ À¯ÀÏÇÑ Á¦¾àÀ¸·Î µû¸¥´Ù.
- °øÀ¯¸Þ¸ð¸®¸¦ »ç¿ëÇϱâÀ§ÇØ /var/shm(¶Ç´Â /dev/shm)À» ¸¶¿îÆ® ÇؾßÇÑ´Ù.
Ä¿³Î 2.3 °³¹ß¹öÀüÀ» óÀ½ ÄÄÆÄÀÏÇÏ°í ºÎÆÃÇßÀ»¶§ Á¦ÀÏ Ã³À½ Á÷¸éÇß´ø ¹®Á¦Àε¥
System V °øÀ¯¸Þ¸ð¸®¸¦ »ç¿ëÇÏÁö ¸øÇؼ ºÎÆýà ÀÚµ¿À¸·Î ¶ß´Â ¾ÆÆÄÄ¡ µ¥¸óÀÌ
¶ßÁö ¸øÇÏ´Â ¹®Á¦¿Í ¿©·¯ ÇÁ·Î±×·¥À» ½ÇÇàÇßÀ»¶§ °øÀ¯¸Þ¸ð¸®¸¦ »ç¿ëÇÏÁö ¸øÇØ
¿¡·¯°¡ ³ª´Â ¹®Á¦°¡ ¹ß»ýÇß¾ú´Ù. 2.4-test ¹öÀüÀ» ¾²±âÀ§Çؼ± ²À ÇØÁà¾ß ÇÏ´Â
ºÎºÐÀÌ´Ù.
# mkdir /var/shm
# vi /etc/fstab
none /var/shm shm defaults 0 0
- ipchains°¡ iptables·Î ¹Ù²î¾ú´Ù.
menuconfig ¿É¼Ç¿¡¼ Networking options ---> [*] Network packet filtering
(replaces ipchains) ¸¦ ¼±ÅÃÇÏ°í IP: Netfilter Configuration --->
<M> ipchains (2.2-style) support ¸¦ ¼±ÅÃÇϸé Ä¿³Î 2.2.x ¿Í °°Àº
¹æ½ÄÀ¸·Î ¾µ ¼ö ÀÖ´Ù.
- Magic SysRq key ÀÇ º¯È
Magic SysRq key¶õ ½Ã½ºÅÛÀÇ Á¦¾î°¡ ºÒ°¡´ÉÇÑ »óÅÂ(ÀϹÝÀûÀ¸·Î '´Ù¿î'µÇ¾ú´Ù°íÇÑ´Ù.)
¿¡¼µµ Á¦¾î¸¦ °¡´ÉÇÏ°Ô ÇØÁֹǷΠĿ³Î ÄÄÆÄÀϽà Kernel hacking --->
[*] Magic SysRq key¸¦ üũÇØÁÖÀÚ.
2.4.0-test °³¹ß Ä¿³Î¿¡¼ Magic SysRq key¸¦ »ç¿ëÇÒ·Á¸é ´ÙÀ½°ú °°ÀÌ
/proc/sys/kernel/sysrq °ªÀ» 1·Î ¸¸µé¾î¾ß ÇÑ´Ù.
# echo 1 > /proc/sys/kernel/sysrq
Å° Á¶ÇÕ
Alt+SysRq+R use Raw keyboard events
Alt+SysRq+K kill current VT in use
Alt+SysRq+E tErminate all running processes (except init)
Alt+SysRq+I kIll all processes (except init)
Alt+SysRq+L kilL all processes (including init)
Alt+SysRq+B reBoot
Alt+SysRq+S Sync all drives
Alt+SysRq+U Umount all filesystems
Alt+SysRq+O turn the machine Off
Alt+SysRq+P dump Processor's registers
Alt+SysRq+T dump current Tasks
Alt+SysRq+M dump some Memory info
Alt+SysRq+[0-9] set kernel log level and redirect it to console
x86 ¸Ó½Å¿¡¼´Â Alt¸¦ ´©¸¥»óÅ¿¡¼ Print Screen(Sys Rq)Å°¸¦ ´©¸£°í
°¢ ¾ËÆĺªÅ°¸¦ ´©¸£¸é Àû¿ëµÈ´Ù.
¸¸¾à ½Ã½ºÅÛÀÌ ´Ù¿î µÇ¾ú´Ù¸é °°Àº ´ÙÀ½°ú ¼ø¼ÀÇ Á¶ÇÕÀ¸·Î ½Ã½ºÅÛ¿¡ ¼Õ»óÀ»
ÁÖÁö¾Ê°í ¾ÈÀüÇÏ°Ô ÀçºÎÆà ÇÒ ¼ö ÀÖÀ»°ÍÀÌ´Ù.
Alt+SysRq+S : ¹öÆÛ¿¡ÀÖ´Â °ÍµéÀ» µð½ºÅ©·Î sync(µ¿±âÈ)½ÃŲ´Ù.
Alt+SysRq+E : init ÇÁ·Î¼¼½º¸¦ Á¦¿ÜÇÑ ¸ðµç ÇÁ·Î¼¼½º¸¦ Á¾·á½ÃŲ´Ù.
Alt+SysRq+U : ÆÄÀÏ ½Ã½ºÅÛÀ» unmount ½ÃŲ´Ù.
Alt+SysRq+B : ½Ã½ºÅÛ ÀçºÎÆÃ
- Codepage 949 (UnifiedHangul) Áö¿ø(Ä¿³Î 2.4.0-test5ºÎÅÍ Áö¿øÇϸç
¾ÈÁ¤¹öÀüÀº 2.2.16¿¡¼ Áö¿øÇÑ´Ù.)
¸®´ª½º¿¡¼ À©µµ ÆÄƼ¼Ç(vfat)À» ¸¶¿îÆ® ÇßÀ»¶§ ÇѱÛÀÌ '????'ÀÌ·±½ÄÀ¸·Î
º¸ÀÌ´Â ¹®Á¦¸¦ ÇØ°áÇØ ÁØ´Ù.
- Devfs(Device Filesystem)
devfs¶õ /proc¿Í °°Àº °¡»ó ÆÄÀϽýºÅÛÀ¸·Î Richard Gooch¿¡ ÀÇÇØ ÀÛ¾÷µÇ¾ú´Ù.
devfs¸¦ »ç¿ëÇÒ·Á¸é ´ÙÀ½°ú °°Àº °úÁ¤À» °ÅÃľßÇϸç devfs¸¦ ¾²Áö ¾Ê¾Æµµ 2.4.0-test
Ä¿³ÎÀ» »ç¿ëÇϴµ¥ »ó°üÀº ¾ø´Ù.
devfs¸¦ »ç¿ëÇÏ°íÀÚ ÇÑ´Ù¸é devfs´Â ¸Þ¸ð¸®»ó¿¡ Á¸ÀçÇÏ´Â °¡»ó ÆÄÀϽýºÅÛÀ̹ǷΠ¸¸¾à
/dev ¿¡ Ư¼öÇÑ ¸ñÀûÀÇ µð¹ÙÀ̽º ÆÄÀÏ ¶Ç´Â µð·ºÅ丮¸¦ »ý¼ºÇß´Ù¸é ÀçºÎÆýà /dev
µð·ºÅ丮¿¡ ¸¸µé¾ú´ø°ÍÀÌ »ç¶óÁú°ÍÀ̹ǷΠÀç ÀÛ¼ºÇØÁà¾ß ÇÑ´Ù.
ºÎÆÃÇÒ¶§¸¶´Ù mknod ¸í·ÉÀ¸·Î ÇÊ¿äÇÑ µð¹ÙÀ̽º¸¦ ´Ù½Ã ¸¸µå´Â°Í º¸´Ü ¼Ð ½ºÅ©¸³Æ®¸¦
ÀÛ¼ºÇϴ°ÍÀÌ Æí¸®ÇÒ °ÍÀÌ´Ù.
¿¹¸¦µé¾î X-4.0ÀÌ»óÀÇ NVdirver¸¦ ¾´´Ù¸é /dev µð·ºÅ丮¿¡ nvidia0, nvidia1, nvidia2,
nvidia3, nvidiactl°ú °°Àº ij¸¯ÅÍ µð¹ÙÀ̽º ÆÄÀÏÀÌ ¸¸µé¾îÁ® ÀÖ¾î¾ß X¸¦ ¶ç¿ï¼ö
ÀÖÀ¸¹Ç·Î ºÎÆýà ¸¸µé¾îÁú¼ö ÀÖµµ·Ï ¼Ð ½ºÅ©¸³Æ®¸¦ ÀÛ¼ºÇÑ´Ù¸é ¾à°£ÀÇ ¼ö°í¸¦
´ú ¼ö ÀÖÀ»°ÍÀÌ´Ù.
´ÙÀ½°ú °°Àº ¹æ¹ýÀ¸·Î devfs¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù.
1. Ä¿³Î ÄÄÆÄÀÏ ¿É¼Ç¿¡¼ ´ÙÀ½ »çÇ×À» üũÇÑ´Ù.
Code maturity level options --->
[*] Prompt for development and/or incomplete code/drivers
File systems --->
[*] /dev file system support (EXPERIMENTAL)
[*] Automatically mount at boot
[*] Debug devfs
2. devfsd ¼Ò½º ÆÄÀÏÀ» ±¸ÇÑ´Ù.
http://www.atnf.csiro.au/~rgooch/linux/ ¿¡¼ devfsd-v1.3.10.tar.gz ÀÌ»óÀÇ
¹öÀüÀ» ´Ù¿î ¹Þ¾Æ ´ÙÀ½ ÀÛ¾÷À» ÇÑ´Ù.
# tar xvvzf devfsd-v1.3.10.tar.gz -> Àû´çÇÑ µð·ºÅ丮¿¡ ¾ÐÃàÀ» Ǭ´Ù.
# make -> ÄÄÆÄÀÏÇؼ devfsd¶õ ÆÄÀÏÀ» ¾ò´Â´Ù.
# mv devfsd /sbin/ -> /sbin µð·ºÅ丮·Î ¿Å±ä´Ù.
# cp modules.devfs /etc/ -> modules.devfs¿Í devfsd.conf¸¦
# cp devfsd.conf /etc/ /etc µð·ºÅ丮·Î ¿Å±ä´Ù.
3. /etc/rc.d/rc.sysinit ½ºÅ©¸³Æ®¿¡ ´ÙÀ½ ºÎºÐÀ» Ãß°¡ÇÑ´Ù.
# Mount /proc (done here so volume labels can work with fsck)
action "Starting devfsd" /sbin/devfsd /dev <--- À̺κÐÀ» Ãß°¡ÇÑ´Ù.
action "Mounting proc filesystem" mount -n -t proc /proc /proc
4. /etc/securetty ÆÄÀÏÀ» ´ÙÀ½°ú °°ÀÌ ¼öÁ¤ÇÑ´Ù.
1
2
3
4 # tty1 ÀÌ·±½ÄÀ¸·Î µÇ¾îÀÖ´Â°Í ¸ðµÎ tty¸¦ »«
5 # ¼ýÀںκи¸ ³²µµ·Ï ÇØÁØ´Ù.
6
7
8
5. /etc/security/console.perms ¿¡¼ ´ÙÀ½°ú °°ÀÌ ¹Ù²ãÁØ´Ù.
<console>=tty[0-9][0-9]* :[0-9]\.[0-9] :[0-9] À» ÁÖ¼®Ã³¸®ÇÏ´øÁö »èÁ¦ÇÏ°í
<console>=tty[0-9][0-9]* [0-9][0-9]* :[0-9]\.[0-9] :[0-9] À¸·Î ¹Ù²ãÁØ´Ù.
6. /etc/lilo.conf ¿¡ ´ÙÀ½À» Ãß°¡
append = "devfs=mount"
devfs¸¦ ¾²Áö ¾Ê°Ú´Ù¸é append = "devfs=nomount" ÇÏ¸é µÈ´Ù.
ÀϹÝÀûÀÎ µ¥½ºÅ©Å¾ PC»ç¾ç(1 CPU, No SCSI)¿¡¼ ÇÊ¿ä·Î ÇÏ´Â Ä¿³Î¿É¼ÇµéÀ» ¼³¸íÇϸç
±×´ÙÁö Çʿ伺ÀÌ ¾ø´Â ¿É¼ÇµéÀº Á¦¿Ü½ÃÄ×´Ù.
Code maturity level options --->
- [*] Prompt for development and/or incomplete code/drivers - °³¹ß ¼öÁØÀÇ ¿É¼Çµéµµ ¼±Åð¡´ÉÇÏ°Ô ÇØÁØ´Ù.
Loadable module support --->
- [*] Enable loadable module support - ¸ðµâÀ» »ç¿ëÇÒ¼ö ÀÖ°Ô ÇØÁÜ.
- [*] Kernel module loader - Ä¿³ÎÀÌ ¾Ë¾Æ¼ ¸ðµâÀ» ¿Ã·ÁÁØ´Ù.
Processor type and features --->
- (Pentium-Pro/Celeron/Pentium-II) Processor family
- (X) Pentium-Pro/Celeron/Pentium-II - Å×½ºÆ® PC°¡ Pentium IIÀ̹ǷΠ... ½Ã½ºÅÛ¿¡ ¸Â´Â°É ¼±ÅÃÇÑ´Ù.
- [*] MTRR (Memory Type Range Register) support - ÇÁ·Î¼¼¼°¡
¸Þ¸ð¸® ¿µ¿ª Á¢±ÙÀ» Á¦¾îÇÒ¼ö ÀÖÀ½. ±×·¡ÇÈÀÇ ¾²±â ¼Óµµ Çâ»ó
General setup --->
- [*] Networking support - ³×Æ®¿öÅ· Áö¿ø
- [*] PCI support - PCI Áö¿ø
- (Any) PCI access mode - Ä¿³ÎÀÌ Á÷Á¢ ¾×¼¼½º ½Ãµµ
- [*] System V IPC - System V IPC¸¦ Áö¿øÇÏ°Ô ÇÔ, Shared
Memoryµµ ¿©±â¼ Áö¿øÇÑ´Ù.
- [*] BSD Process Accounting - ÇÁ·Î¼¼½º Á¤º¸¸¦ ÆÄÀÏ¿¡ ÀúÀå
- [*] Sysctl support - ƯÁ¤ Ä¿³ÎÀÇ ÆĶó¹ÌÅÍ¿Í º¯¼öµéÀ» µ¿ÀûÀ¸·Î
º¯°æ½Ãų¼ö ÀÖµµ·Ï ÇÔ
- (ELF) Kernel core (/proc/kcore) format - ELF core Æ÷¸Ë
- <*> Kernel support for a.out binaries - a.out ¹ÙÀ̳ʸ® Áö¿ø
- <*> Kernel support for ELF binaries - ELF ¹ÙÀ̳ʸ® Áö¿ø
Plug and Play configuration --->
- <*> Plug and Play support - Plug and Play Áö¿ø
Block devices --->
- <*> Normal PC floppy disk support - Ç÷ÎÇÇ µå¶óÀ̹ö ÀåÄ¡ Áö¿ø
- <M> Loopback device support - ÇÑ ÆÄÀÏÀ» ÇϳªÀÇ ÆÄÀÏ ½Ã½ºÅÛó·³
ÀÎ½Ä ½ÃÅ´
Networking options --->
- <*> Packet socket - ³×Æ®¿÷ µð¹ÙÀ̽º¿ÍÀÇ Á÷Á¢Åë½ÅÀ» ÇÏ°Ô ÇØÁØ´Ù.
- <*> Packet socket: mmapped IO - ´õ ºü¸¥ Åë½ÅÀ» ÇÒ ¼öÀÖ°Ô
ÇÑ´Ù.
- <*> Unix domain sockets
- [*] TCP/IP networking - TCP/IP ³×Æ®¿öÅ· Áö¿ø
- [*] IP: TCP syncookie support (disabled per default) -
¼ºñ½º °ÅºÎ °ø°ÝÀ» ¹ÞÀ»¶§ ´ëóÇØÁÜ
ATA/IDE/MFM/RLL support --->
- <*> ATA/IDE/MFM/RLL support
- IDE, ATA and ATAPI Block devices --->
- <*> Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support -
IDE¸¦ »ç¿ëÇÒ¼ö ÀÖµµ·Ï ÇØÁØ´Ù.
- <*> Include IDE/ATA-2 DISK support - Çϵåµð½ºÅ©
»ç¿ë°¡´ÉÇÏ°Ô ÇÔ
- <*> Include IDE/ATAPI CDROM support - CD-ROM
»ç¿ë°¡´ÉÇÏ°Ô ÇÔ
- <M> Include IDE/ATAPI FLOPPY support - ZIP µå¶óÀ̺êµîÀ»
»ç¿ë°¡´ÉÇÏ°Ô ÇÔ
- --- IDE chipset support/bugfixes
- <*> Generic PCI IDE chipset support - PCI ¹æ½ÄÀÇ IDE
Áö¿ø
- <*> Sharing PCI IDE interrupts support - IRQ °øÀ¯
Áö¿ø
- <*> Generic PCI bus-master DMA support - DMA Áö¿ø
- <*> Use PCI DMA by default when available - VIA
VP2 Ĩ¼ÂÀ» »ç¿ëÇÑ´Ù¸é Àý´ë ¼±ÅÃÇÏÁö ¸»°Í
- <*> HPT366 chipset support - Ultra DMA 66 Áö¿ø
Network device support --->
- [*] Network device support
- Ethernet (10 or 100Mbit) --->
- [*] Ethernet (10 or 100Mbit) - ÀÚ½ÅÀÇ ½Ã½ºÅÛ¿¡ ¸Â´Â°É
¼±Åà (RealTek 8139µîÀ» ¾´´Ù¸é [*]EISA, VLB, PCI and on board controllers¸¦
¼±ÅÃÇϸé ÇϺΠ¸ñ·ÏÀÌ ³ª¿Â´Ù.)
Character devices --->
- [*] Virtual terminal - °¡»ó Å͹̳ΠÁö¿ø
- [*] Support for console on virtual terminal -
°¡»óÅ͹̳ÎÀ» ½Ã½ºÅÛ ÄַܼΠ¾µ¼öÀÖ°Ô ÇØÁØ´Ù.
- [*] Unix98 PTY support - Unix98 °¡»óÅ͹̳ΠÁö¿ø
- [*] (256) Maximum number of Unix98 PTYs in use (0-2048) Unix98 PTY °³¼öÀÇ ÃÖ´ë°ª
- Mice --->
- <*> Mouse Support (not serial and bus mice)
- [*] PS/2 mouse (aka "auxiliary device") support -
PS/2 ¸¶¿ì½º Áö¿ø
- <M> /dev/agpgart (AGP Support) - AGP Áö¿ø (ÇϺθ޴ºÁß ÀÚ½ÅÀÇ º¸µå¿¡
¸Â´Â°Å ¼±ÅÃ)
File systems --->
- <*> Kernel automounter support - ¿ø°Ý ÆÄÀÏ ½Ã½ºÅÛÀ» ÀÚµ¿À¸·Î
¸¶¿îÆ® ÇØÁØ´Ù.(NFSµîÀ» »ç¿ëÇÒ¶§) NÀ»¼±ÅÃÇصµ »ó°ü¾ø´Ù.
- <M> DOS FAT fs support - FAT ±â¹ÝÀÇ ÆÄÀÏ ½Ã½ºÅÛ Áö¿ø
- <M> MSDOS fs support - MSDOS ÆÄƼ¼Ç ¸¶¿îÆ® Áö¿ø
- <M> VFAT (Windows-95) fs support - À©µµÁî ÆÄƼ¼Ç Áö¿ø
- <M> ISO 9660 CDROM file system support - CD-ROM ÆÄÀÏ ½Ã½ºÅÛ
Áö¿ø
- [*] Microsoft Joliet CDROM extensions - Joliet CDROMÀ»
ÀÐÀ» ¼ö ÀÖ°Ô ÇÑ´Ù.
- [*] /proc file system support - ÇÁ·Î¼¼½º¸¦ À§ÇÑ °¡»ó
ÆÄÀÏ ½Ã½ºÅÛ
- [*] /dev/pts file system for Unix98 PTYs - À§¿¡¼ [*] Unix98 PTY
support ¸¦ ¼±ÅÃÇß´Ù¸é ¼±ÅÃÇØ¾ß ÇÑ´Ù.
- <*> Second extended fs support - ÇöÀç ¸®´ª½º ÆÄÀÏ ½Ã½ºÅÛ
- Network File Systems --->
- <M> NFS file system support - ³×Æ®¿÷ ÆÄÀÏ ½Ã½ºÅÛ Áö¿ø
- <M> SMB file system support (to mount Windows shares etc.) - À©µµÁîÀÇ ³×Æ®¿÷ ±â´ÉµéÀ» °øÀ¯ÇÒ¼ö ÀÖ°Ô ÇØÁØ´Ù.
- Native Language Support --->
- Default NLS Option: "cp949" - µðÆúÆ®·Î ÇѱÛÀÌ ¼±Åõǵµ·Ï ÇÑ´Ù.
- <*> Codepage 437 (United States, Canada)
- <*> Codepage 949 (UnifiedHangul) - À©µµÆÄƼ¼ÇÀ» ¸¶¿îÆ®
ÇßÀ»¶§ ÇѱÛÀ» º¼¼öÀÖµµ·Ï ÇØÁØ´Ù.
- <*> NLS ISO 8859-1 (Latin 1; Western European Languages)
Console drivers --->
- [*] VGA text console - VGA Ç¥ÁØ µð½ºÇ÷¹À̸¦ ÅëÇØ ÅؽºÆ®
¸ðµå¿¡¼ »ç¿ë°¡´ÉÇÏ°Ô ÇÑ´Ù.
Sound ---> ½Ã½ºÅÛ¿¡ ¸Â´Â°É ¼±ÅÃÇÑ´Ù
Kernel hacking --->
- [*] Magic SysRq key - ½Ã½ºÅÛÀÌ ´Ù¿îµÇ´õ¶óµµ Á¦¾îÇÒ ¼öÀÖµµ·Ï
ÇØÁØ´Ù.
Ä¿³Î ÄÄÆÄÀÏÀ» ÇÒ·Á¸é ¾î´ÀÁ¤µµ ÀÚ½ÅÀÇ ½Ã½ºÅÛ¿¡ °üÇÑ Çϵå¿þ¾îÀû Áö½ÄÀÌ ÀÖ¾î¾ß
ÇÑ´Ù. ±×·¡ÇÈ Ä«µå, ºñµð¿À Ä«µå, »ç¿îµå Ä«µå, ³×Æ®¿÷ Ä«µåµîÀº Ä¿³Î ÄÄÆÄÀϽÃ
°¢°¢¿¡ ¸Â´Â°ÍÀ» ¼±ÅÃÇÏ°í ¾ÕÀÇ ¿É¼ÇÀ» Âü°íÇÑ´Ù¸é ¹«¸®¾øÀÌ ÄÄÆÄÀÏ °¡´ÉÇÒ°ÍÀÌ´Ù.
´ÙÀ½Àº Ä¿³Î ÇÁ·ÎÁ§Æ® ȨÀ¸·Î ¹®ÀÇÇÑ Áú¹®µéÁß ¸î°¡Áö¸¦ Ãß·Áº¸¾Ò´Ù.
Á¤¸» Àâ´ÙÇÑ °ÍÀ̶ó ¼Ò°³Çϱ⠺βô·¯¿î°Íµµ ÀÖ°í ¾Ë¾ÆµÎ¸é À¯¿ëÇÑ °ÍµµÀÖÀ¸´Ï
Âü°íÇϱ⠹ٶõ´Ù.
Ãʱ⠸®´ª½º Ä¿³Î 0.01ÀÇ Å©±â°¡ 470KB¹Û¿¡ µÇÁö ¾Ê¾Ò´Âµ¥ ÇöÀç ÃֽŠ°³¹ß Ä¿³Î
2.4.0-test5ÀÇ Å©±â´Â 103MB³ª µÈ´Ù. ³î¶øÁö ¾ÊÀº°¡?
¿ì¸®´Â Ä¿³Î ÄÄÆÄÀÏÀ» ÇÒ ¶§ make zImage, make bzImage ÀÌ·± ½ÄÀ¸·Î
Ä¿³Î À̹ÌÁö¸¦ ¾ÐÃàÇÑ´Ù.( make zlilo, zdisk, bzlilo ¸ðµÎ ¸¶Âù°¡Áö...)
¾Æ¹«·± Àǹ® ¾øÀÌ ¹«ÀǽÄÀûÀ¸·Î ´ç¿¬È÷ ÀÌ·¸°Ô ¾²°í ÀÖ´Ù.
¿©±â¿¡´Â ¾à°£ÀÇ ¹è°æÁö½ÄÀÌ ÇÊ¿äÇѵ¥ °£·«È÷ ¼³¸íÇÏ°Ú´Ù.
¿ì¸®°¡ ÈçÈ÷ ¾Æ´Â ¸ÅŲÅä½ÃÀÇ M68°è¿ processor´Â 8bitȯ°æ¿¡¼
32bitȯ°æÀ¸·Î ¹ßÀüµÇ¾úÁö¸¸ ÀÎÅÚÀÇ 8086°è¿Àº DOSÀÇ ´ëÁß¼º ¶§¹®¿¡
¹Ù·Î 32bit ȯ°æÀ¸·Î °¡Áö ¸øÇÏ°í 16bit ȯ°æÀ» °¡Áö°Ô µÇ¾ú´Ù.
´ëÁßÀûÀ¸·Î ¸¹ÀÌ ¾²ÀÌ°í ÀÖ´Â DOS¸¦ °è¼Ó ¾µ ¼ö ÀÖµµ·Ï Çϱâ À§Çؼ¿´´Ù.
ÀÌ·¯ÇÑ ÀÌÀ¯ ¶§¹®¿¡ ¸®¾ó¸ðµå, º¸È£¸ðµå, °¡»ó86¸ðµå°¡ »ý°å´Ù.
¸®¾ó¸ðµå, º¸È£¸ðµå, °¡»ó86¸ðµå ¸ðµÎ ¼¼±×¸ÕÆ®·¹Áö½ºÅÍ¿Í ¿ÀÇÁ¼Â
·¹Áö½ºÅ͸¦ ÀÌ¿ëÇÏ¿© ÁÖ¼Ò¸¦ ÁöÁ¤Çϴµ¥ ÀÌµé ·¹Áö½ºÅÍÀÇ »ç¿ë¹æ¹ýÀÌ ´Ù¸£´Ù.
¸®¾ó¸ðµå´Â ¼¼±×¸ÕÆ®x10h + ¿ÀÇÁ¼ÂÀ¸·Î ÁÖ¼Ò¸¦ ¸¸µå´Âµ¥ 16bit¿¡¼
¼¼±×¸ÕÆ®¿Í ¿ÀÇÁ¼ÂÀÇ ÃÖ´ë °ªÀº FFFFÀÌ´Ù.
±×·¯¹Ç·Î ÃÖ´ë·Î ÁöÁ¤ÇÒ¼ö ÀÖ´Â ÁÖ¼Ò´Â FFFF0 + FFFF°¡ µÈ´Ù.
ÀÌ°É °è»êÇϸé 1MB + 64KB°¡ µÈ´Ù.
º¸È£¸ðµå¿¡¼± ÁÖ¼ÒÁöÁ¤ ¹æ½ÄÀÌ ¸®¾ó¸ðµå¿Í´Â ¸¹ÀÌ ´Ù¸£¸ç ÆäÀÌ¡ µîÀ»
ÀÌ¿ëÇÏ¿© 32bit ¸ðµÎ ÁÖ¼Ò °ªÀ» ¸¸µé ¼ö ÀÖÀ¸¹Ç·Î ÀÌ·ÐÀûÀ¸·Ð 4GBÀÇ
¸Þ¸ð¸®¸¦ ÀÌ¿ëÇÒ ¼öÀÖÀ¸¸ç °¡»ó86¸ðµå ¶ÇÇÑ ¼±ÇüÁÖ¼Ò¸¦ ¸¸µé¾î³»´Â
°úÁ¤¸¸ ´Ù¸£¹Ç·Î ±âº» ¸ÅÄ¿´ÏÁòÀº º¸È£¸ðµå¿Í °°´Ù.
(º¸È£¸ðµå¿Í °¡»ó86¸ðµåÀÇ ÁÖ¼Ò »ý¼º ¹ýÀº »ý·«ÇÑ´Ù.)
ÇÁ·Î±×·¥Àº code ºÎºÐ°ú dataºÎºÐÀ¸·Î ³ª´©¾îÁö´Âµ¥ ¸®¾ó¸ðµå¿¡¼
ÇÁ·Î±×·¥ÀÇ codeºÎºÐÀº ¹Ýµå½Ã À§ ÃÖ´ë ÁÖ¼Ò ÁöÁ¤¿µ¿ª ³»¿¡ ÀÖ¾î¾ß
ÇÑ´Ù´Â °ÍÀÌ´Ù.
¸®¾ó¸ðµå¿¡¼´Â ¿©·¯ °³ÀÇ ÇÁ·Î±×·¥ÀÌ ¸Þ¸ð¸®¿¡ ¿Ã¶ó¿Í¼ ¼öÇàµÉ ¼ö ¾øÀ¸¸ç
(¸¸¾à ¿©·¯ °³ÀÇ ÇÁ·Î±×·¥ÀÌ ¸Þ¸ð¸®¿¡¼ ¼öÇàµÈ´Ù¸é ´Ù¸¥ ÇÁ·Î±×·¥¿µ¿ªÀ»
ħ¹ü ÇÒ ¼ö Àֱ⠶§¹®ÀÌ´Ù.) interrupt¸¦ ÀÌ¿ëÇÏ´Â RAM»óÁÖ ÇÁ·Î±×·¥¸¸ÀÌ
¸Þ¸ð¸®¸¦ °°ÀÌ Â÷ÁöÇÒ ¼ö ÀÖ´Ù.
À§¿¡¼ ¼³¸íÇÑ ¸®¾ó¸ðµåÀÇ ¾à 1MBÁ¤µµÀÇ ¿µ¿ª Áß Coventional Memory°¡
640KB¸¦ Â÷ÁöÇÏ°í ³ª¸ÓÁö´Â ºñµð¿À·¥ À̳ª ±âŸ µð¹ÙÀ̽º°¡ Â÷ÁöÇÑ´Ù.
±×·¯¹Ç·Î Ä¿³Î À̹ÌÁö´Â Coventional Memory Áï 640KB³»¿¡ µé¾î°¡¾ß ÇϹǷÎ
Ä¿³Î À̹ÌÁöÀÇ Å©±â°¡ 640KBº¸³ª ÀÛ¾Æ¾ß ÇÑ´Ù.
Ä¿³Î À̹ÌÁöÀÇ ¾ÐÃàÀ¸·Î ÀÌ·¯ÇÑ Á¦¾àÀ» ºÎºÐÀûÀ¸·Î ±Øº¹ÇÏ¿´À¸³ª
640KBÀÇ ÀϺδ ¿©·¯ °¡Áö ¹öÆÛ(DMA buffer)³ª ƯÁ¤ ÁÖ¼Ò°¡ ½Ã½ºÅÛ¿¡
¿¹¾àµÇ¾î ÀÖÀ¸¹Ç·Î 640KBº¸´Ù ´õ ÀÛÀº Å©±âÀÇ Ä¿³ÎÀÌ ¿ä±¸µÈ´Ù.
ÀÌ·¯ÇÑ ¹®Á¦ÀÇ ´ë¾ÈÀ¸·Î Ä¿³ÎÀ» Extended Memory¿¡ ÀûÀçÇÏ´Â ¹æ¹ýÀ» »ý°¢ÇØ
º¼ ¼ö ÀÖ´Ù.
Extended Memory ¿µ¿ª¿¡ ÀÚÀ¯·ÎÀÌ ÀûÀçÇϱâ À§Çؼ´Â º¸È£¸ðµå¸¦
»ç¿ëÇؾßÇϴµ¥ º¸È£¸ðµå¿¡¼´Â BIOS¿Í °°ÀÌ ½Ã½ºÅÛÀÌ ¿ÏÀüÈ÷ ÁغñµÇ±â ÀüÀÇ
±âº»ÀûÀÎ ±â´ÉµéÀ» »ç¿ëÇÒ ¼ö ¾ø´Ù.
ÀÌ·² °æ¿ì µð½ºÅ©¸¦ ¾×¼¼½ºÇÏ´Â ÀÚüÀûÀÎ ÇÔ¼ö¸¦ ÁغñÇÏ¿© Ä¿³ÎÀ»
Extended Memory ¿¡ ÀûÀçÇϰųª ¾Æ´Ï¸é Ä¿³ÎÀ» ÁÙÀÌ´Â ¼ö¹Û¿¡ ¾ø´Â °ÍÀÌ´Ù.
¿©±â¿¡ ´ëÇؼ± ÀüÇô ¸ð¸£°í ÀÖ¾ú´Âµ¥ ¾î´À ³¯ 2.4.0-test1-ac18 ¹öÀüÀ» ´õ´õ¿í
ÃÖÀûÈÇϱâ À§ÇØ Ä¿³Î ÄÄÆÄÀÏÀ» ÇÏ°í lilo.conf¿¡ À̹ÌÁö¸¦ µî·Ï½ÃÅ°°í lilo¶õ
¸í·ÉÀ¸·Î Ä¿³Î À̹ÌÁö¸¦ writeÇϴµ¥ ´ÙÀ½°ú °°Àº ¸Þ¼¼Áö°¡ ³ª¿Ô´Ù.
Only 19 image names can be defined
±×¶§±îÁö ³ªÀÇ lilo.conf¿¡´Â 19°³ÀÇ Ä¿³Î À̹ÌÁö°¡ Á¤ÀǵǾîÀÖ¾ú´Âµ¥ Çϳª ´õ
Ãß°¡Çؼ 20°³ °¡ µÇÀÚ À§¿Í °°Àº ¸Þ¼¼Áö¸¦ Ãâ·ÂÇÑ °ÍÀ̾ú´Ù.
Ä¿³Î À̹ÌÁö¸¦ 20°³ ÀÌ»ó µî·Ï(?)ÇÏÁö ¾Ê¾Ò´Ù¸é ¾Æ¸¶ ¸ô¶úÀ» °ÍÀÌ´Ù.
°á·ÐÀûÀ¸·Ð ¼Óµµ ¶§¹®ÀÌ´Ù.
½º¿ÒÆÄÀÏÀ» ¾´´Ù¸é ÆÄÀÏ¿¡ Á¢±ÙÇϱâÀ§ÇØ VFS¿Í ÆÄÀÏ ½Ã½ºÅÛ µå¶óÀ̹ö ±×¸®°í
ÆÄÀÏÁ¤º¸¸¦ ´ã°íÀÖ´Â ¿©·¯ °¡Áö¸¦ Àоî¿À°í ¾µ¶§µµ ÀÏ¹Ý ÆÄÀÏÀÌ writing µÇ´Â °æ·Î¸¦
°ÅÄ¥ °ÍÀÌ´Ù. ½º¿Ò ÆÄƼ¼Ç¿¡¼´Â À§ÀÇ °úÁ¤¾øÀÌ Æ¯Á¤ ºí·°¿¡ ¹Ù·Î Á¢±ÞÇÒ ¼ö ÀÖÀ¸¹Ç·Î
ºÒ ÇÊ¿äÇÑ ¿À¹öÇìµå°¡ ¹ß»ýÇÏÁö ¾Ê¾Æ ¼Óµµ°¡ ´õ ºü¸£±â ¶§¹®ÀÌ´Ù.
ÇöÀç ¸®´ª½ºÀÇ ±âº» ÆÄÀÏ ½Ã½ºÅÛÀº ext2ÀÌ´Ù. (SuSE´Â Reiser ÆÄÀϽýºÅÛÀÌ´Ù.)
ext2¶õ Second Extended File SystemÀÇ ¾à¾îÀ̸ç Ãʱ⠸®´ª½º ÆÄÀÏ ½Ã½ºÅÛÀ̾ú´ø
MINIX¿¡¼´Â ÃÖ´ë ÆÄÀÏÀ̸§ 14¹®ÀÚ, ÃÖ´ë ÆÄƼ¼Ç 64MB¹Û¿¡ µÇÁö ¾Ê¾Ò°í ÀÌ·± ¿©·¯ °¡Áö
¹®Á¦·Î ÆÄÀÏ ½Ã½ºÅÛÀÌ ¿À´Ã³¯ÀÇ ext2±îÁö ¹ßÀüÇÏ¿´´Ù.
ext2¿¡¼´Â 255¹®ÀÚÀÇ ÆÄÀϸí, ÃÖ´ë 2GBÀÇ ÆÄÀÏ, 4TBÀÇ µð½ºÅ© ¿ë·®À» Áö¿øÇϸç
¼ºêµð·ºÅ丮´Â Å×½ºÆ®Çغ»°á°ú 32000°³±îÁö¸¸ ¸¸µé¾îÁ³´Ù.
´ÙÀ½À» Âü°íÇ϶ó.
#!/bin/sh
count=70000
i=1
while [ $i -lt $count ]
do
mkdir $i && echo "$i"
i=$(($i+1))
done
À§´Â ¼ºê µð·ºÅ丮¸¦ ¸¸µé¾îÁÖ´Â shell scriptÀÌ¸ç ¼ºê µð·ºÅ丮 À̸§Àº 1¹øºÎÅÍ
count·Î ÁöÁ¤ÇÑ °ª¸¸Å ¸¸µé¾î ÁØ´Ù.
- ext2 ÆÄÀÏ ½Ã½ºÅÛ¿¡¼ÀÇ ¼ºê µð·ºÅ丮 »ý¼º
Ä¿³Î ¹öÀü : 2.2.14-5.0
$ ls -l
drwxrwxr-x 32000 suni00 suni00 475136 7¿ù 12 15:41 tmp/
$du -sh
128M .
µð·ºÅ丮 ¸µÅ©ÀÇ inode ¶§¹®¿¡ ./¿Í ../¸¦ Æ÷ÇÔÇÏ¿© 32000 ±îÁö ¹Û¿¡ »ý¼ºµÇÁö
¾Ê´Â°É ¾Ë ¼ö ÀÖ´Ù.
¶Ç ext2ÀÇ ºí·° »çÀÌÁî´Â 4KBÀ̹ǷΠ»ý¼ºµð·ºÅ丮µéÀÇ ÃÑ ¿ë·®ÀÌ 128MB³ª
Â÷ÁöÇÏ¿´½À´Ï´Ù.
- Reiser ÆÄÀÏ ½Ã½ºÅÛ¿¡¼ÀÇ ¼ºê µð·ºÅ丮 »ý¼º
Ä¿³Î ¹öÀü : 2.2.16°ú 2.4.0-test1-ac18
$ls -l
drwxrwxr-x 64535 suni00 suni00 1548888 Jul 12 15:48 tmp/
$du -sh
30M .
À§¿¡¼ º¸´Ù½ÃÇÇ 64535°³°¡ »ý¼ºµÇ¾ú°í µð·ºÅ丮µéÀÇ ¿ë·®Àº ext2º¸´Ù ÈξÀ ÀûÀº
30MB ¹Û¿¡ Â÷ÁöÇÏÁö ¾Ê´Â°É ¾Ë ¼ö ÀÖ´Ù.
(Reiser ÆÄÀÏ ½Ã½ºÅÛ¿¡¼ÀÇ ºó µð·ºÅ丮ÀÇ »çÀÌÁî´Â 48Byte¸¦ Â÷ÁöÇß´Ù.)
µð·ºÅ丮 ¸µÅ©°¡ µÑ ´Ù 2Byte ¹üÀ§±îÁö Ç¥ÇöÇÒ ¼ö ÀÖ´Â °Í °°Àºµ¥ ÆÄÀÏ ½Ã½ºÅÛ¿¡
µû¶ó À§¿Í °°Àº Â÷ÀÌ°¡ ³µ´Ù.
ÇöÀç ¸®´ª½ºÀÇ ±âº» ÆÄÀÏ ½Ã½ºÅÛÀÎ ext2´Â ½Å·Ú¼º, Ãæµ¹ º¹±¸ µîÀÇ ¹®Á¦°¡ Àִµ¥
ÀÌ·± ºÎºÐµéÀ» ÇØ°á ÇÒ ¼ö ÀÖ´Â °ÍÀÌ Àú³Î¸µ ÆÄÀÏ ½Ã½ºÅÛÀÌ´Ù. Reiser ÆÄÀÏ ½Ã½ºÅÛ
¶ÇÇÑ ÀÌ·± Àú³Î¸µ ÆÄÀÏ ½Ã½ºÅÛÀÇ ÀÏÁ¾À¸·Î ÀÌ¹Ì SuSE¿¡¼´Â ±âº» ÆÄÀÏ ½Ã½ºÅÛÀ¸·Î
Reiser¸¦ ¼±ÅÃÇÏ°í ÀÖ´Ù. ¸ÓÁö¾Ê¾Æ ¸®´ª½ºÀÇ ±âº» ÆÄÀÏ ½Ã½ºÅÛµµ Àú³Î¸µ ÆÄÀÏ
½Ã½ºÅÛÀ¸·Î ¹Ù²ð °ÍÀÌ´Ù.
- ÆÐÄ¡ÆÄÀÏ ¹Þ¾Æ¿À±â
http://devlinux.com/projects/reiserfs/ ¶Ç´Â
http://kernel.pe.kr/data.php ¿¡¼ ÀÚ½ÅÀÇ ¹öÀü¿¡ ¸Â´Â ÆÐÄ¡¸¦ ¹Þ¾Æ¿Â´Ù.
- ÆÐÄ¡¸¦ Àû¿ë½ÃŲ´Ù.(/usr/src/linux ¿¡¼ ÆÐÄ¡ÇÑ´Ù.)
# patch -p1 < ÆÐÄ¡ÆÄÀϸí (¾ÐÃàÀ» Ç®¾úÀ»¶§)
¶Ç´Â
# gzip -cd ÆÐÄ¡ÆÄÀϸí.gz | patch -p1
- Ä¿³Î¿É¼Ç ¼±ÅÃ
Code maturity level options --->
[*] Prompt for development and/or incomplete code/drivers ¸¦ ¼±ÅÃÇÏ°í
File systems ---> <*> Reiserfs support ¼±ÅÃÇÑ´Ù.
- Ä¿³Î ÄÄÆÄÀÏ¹× ¸ðµâ ÄÄÆÄÀÏ, lilo Á¤º¸µµ °íÃÄÁØ´Ù.
- ReiserFS À¯Æ¿ ÄÄÆÄÀÏ(mkreiserfsÀ» ¸¸µé±âÀ§ÇØ)
# cd /usr/src/linux/fs/reiserfs/utils/
# make
# make install
- ReiserFS°¡ Àû¿ëµÈ Ä¿³Î À̹ÌÁö·Î ÀçºÎÆÃÇÑ´Ù.
- ReiserFS ¸¸µé±â
(/dev/hdb1 ¿¡ ¸¸µç´Ù°í °¡Á¤ÇÏ¸ç ±âÁ¸ ext2 ÆÄÀϽýºÅÛÀÇ
µ¥ÀÌÅÍ´Â Áö¿öÁö¹Ç·Î ¹é¾÷ÇÏ´øÁö ¾Æ´Ô »õ Çϵ带 ´Þ¾Ò´Ù°í °¡Á¤ÇÑ´Ù.)
# umount /dev/hdb1 (mount µÇ¾îÀÖÁö ¾Ê´Ù¸é ÀÌ°Ç ÇÊ¿ä¾ø´Ù.)
# mkreiserfs /dev/hdb1
# mount /dev/hdb1 /TEST(mount ½Ãų µð·ºÅ丮´Â °¢ÀÚ ¾Ë¾Æ¼..)
- /etc/fstab ¼öÁ¤Çϱâ
/dev/hdb1 /TEST reiserfs defaults 1 2
ext2¸¦ reiserfs·Î ¹Ù²Ù¸é µÈ´Ù.
- È®ÀÎÇϱâ
$ mount
...
/dev/hdb1 on /TEST type reiserfs (rw)
...
À§¿Í °°ÀÌ reiserfs ¶ó°í ³ª¿À¸é ¼º°ø
Reiser ÆÄÀÏ ½Ã½ºÅÛÀ» ¸¸µé°í ¸¶¿îÆ® ½ÃÅ°¸é ±âº»À¸·Î 32MBÀÇ ¿ë·®À» Àâ¾Æ¸Ô´Â´Ù.
ÀÌ °ø°£¿¡´Ù°¡ ÀÚüÀûÀÎ Á¤º¸¸¦ ±â·ÏÇϹǷΠReiser ÆÄÀÏ ½Ã½ºÅÛÀ» À§Çؼ± ÃÖ¼Ò
32MBÀÌ»óÀÇ ÆÄƼ¼ÇÀ» ÇÊ¿ä·Î ÇÑ´Ù.(³ªÀÇ /boot ÆÄƼ¼ÇÀº 16MB¿©¼ reiserfs¸¦
Àû¿ë½ÃÅ°Áö ¸øÇÏ¿´´Ù.)
ÇöÀç nVidia¿¡¼ ³ª¿À´Â X 4.0 µå¶óÀ̹öµéÀº Ä¿³Î 2.2.xÀÇ ¾ÈÁ¤¹öÀü¿¡¸¸ Àû¿ëµÈ´Ù.
°³¹ß¹öÀü¿¡ Àû¿ë½Ãų·Á¸é
http://www.darkrock.co.uk/nv/¿¡¼ NVIDIA_kernel-0.9-2.3.x.tar.gz¸¦ ¹Þ¾Æ
ÄÄÆÄÀÏ ÇؾßÇÑ´Ù.(Å×½ºÆ®Çغ» °á°ú Ä¿³Î 2.4.0-test1-ac18±îÁö¸¸ Àû¿ëµÈ´Ù.)
¾î¶² Çб³ÀÇ Àü»ê°ü·Ã °ú¸ñ ¸®Æ÷Æ®ÀÎÁö ÀÌ·± Áú¹®À» ¸¹ÀÌ ¹Þ¾Ò´Ù.
Ä¿³Î ¹öÀü¸¸À» °¡Â¥·Î ¹Ù²Ü·Á´Â ÀÌÀ¯¸¦ ¸ð¸£°Ú´Ù.
# vi /usr/src/linux/Makefile
VERSION = 2
PATCHLEVEL = 4
SUBLEVEL = 0
EXTRAVERSION = -test1-ac18
# vi /usr/src/linux/include/linux/version.h
#define UTS_RELEASE "2.4.0-test1-ac18"
#define LINUX_VERSION_CODE 132096
#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))
À§ÀÇ Makefile¿¡¼ ¹öÀü Á¤º¸¸¦ °íÃÆ´Ù¸é ÄÄÆÄÀÏÇÒ¶§ version.h´Â ÀÚµ¿À¸·Î ¹Ù²ï´Ù.
ÀÌ µÎ ÆÄÀϵéÀ» ¿øÇÏ´Â ¹öÀüÀ¸·Î ¹Ù²Ù°í ÄÄÆÄÀÏ ÇÏ¸é µÈ´Ù.
À߸ø ¹Ù²Ù¾î¼ Ä¿³Î ¹öÀüÀÌ ¸ÂÁö ¾ÊÀ» °æ¿ì System.map¿¡¼ ¹öÀüÀÌ Æ²¸®´Ù°í ¸Þ¼¼Áö¸¦
º¸³¾ °ÍÀÌ´Ù. ±×·² °æ¿ì ÇØ´ç Ä¿³Î À̹ÌÁöÀÇ System.mapÀ» ¾ø¾Ö¹ö·Áµµ ¹«°üÇÏ´Ù.
(System.mapÀÌ ¾ø´Ù¸é ¾îµð¼ ¹®Á¦°¡ ¹ß»ýÇß´ÂÁö ¾Ë ¼ö ¾øÀ» °ÍÀÌ´Ù.)
ÀÌ°Ç ±×³É ³»°¡ ÇÏ°í ½Í¾î¼ ÇغôÙ.
# vi /usr/src/linux/arch/i386/kernel/setup.c
$ cat /proc/cpuinfo Á¤º¸¸¦ °íÃÄÁØ´Ù.
# vi /usr/src/linux/init/main.c
$ dmesg ÀÇ º¸°í ¹Ó½º¸¦ °íÃÄÁØ´Ù.
À§ µÎ ÆÄÀÏÀ» ¿øÇÏ´Â ´ë·Î °íÄ¡¸é µÈ´Ù. ¾à°£ÀÇ C ÇÁ·Î±×·¡¹Ö¸¸ ÇÒ ¼ö ÀÖ´Ù¸é
½±°Ô ¿øÇϴ´ë·Î ¹Ù²Ü ¼ö ÀÖÀ»°ÍÀÌ´Ù.
À§¿Í °°Àº Áú¹®À» ÇϽô ºÐµéÀÌ °¡²û °è½Åµ¥ MS-WINDOWS Ä¿³ÎÀ» ¾î¶»°Ô ¼Õº¼ ¼ö
Àְڴ°¡? (°Ë»ö¿£Áø¿¡¼ kernel·Î °Ë»öÇؼ Ä¿³Î ÇÁ·ÎÁ§Æ® ȨÀ¸·Î µé¾î¿Ô´Ù´õ±º¿ä.)
¼ºÀÇ´Â ´ë´ÜÇϳª ´ÜÁö ¼Õ»ó ¾ÈµÈ ´Ù¸¥ KERNEL32.DLLÀ» Ä«ÇÇÇ϶ó°í ÇÒ ¼ö¹Û¿¡...