linuxÇý¶¯¿ª·¢Ñ§Ï°±Ê¼Ç£¨¶þ£©
scull×Ö·ûÇý¶¯Ñ§Ï°±Ê¼Ç
Ŀ¼
1 scullÇý¶¯¼ò½é
2 Ö÷´Î±àºÅ
3 scullÔ´Âë·ÖÎö
-------------------------
| 1 scullÇý¶¯¼ò½é |
-------------------------
scullÊÇÒ»¸ö×Ö·ûÇý¶¯£¬ÎÒÃDzÙ×÷Ò»¿éÄÚ´æÇøºÃÏñËüÊÇÒ»¸öÉ豸¡£scullÊÇÓ²¼þÉ豸¹ØÁª²»´ó£¬ ËùÒÔËüÊÇͨÓÿÉÒÆÖ²µÄ¡£
-----------------------
| 2 Ö÷´Î±àºÅ |
----------------------
2.1
Ëæ±ãÌáÌáÖ÷´Î±àºÅ°É£¡
×Ö·ûÉ豸ͨ¹ýÎļþϵͳÖеÄÃû×ÖÀ´´æÈ¡£¬Ò²¾ÍÊdz£ËµµÄÉ豸Îļþ¡£ÎÒÃDz鿴/devĿ¼ÏµÄÎļþ£¬»á²é¿´µ½ÏµÍ³ÏÂËùÓÐÉ豸Îļþ¡£
Ö÷±àºÅ±êʶÉ豸ÏàÁ¬µÄÇý¶¯¡£´Î±àºÅÓÃÀ´¾ö¶¨ÒýÓÃÄĸöÉ豸£¬ÒÀ¾ÝÄãµÄÇý¶¯ÊÇÈçºÎ±àдµÄ£¬ Äã¿ÉÒÔ´ÓÄں˵õ½Ò»¸öÄãµÄÉ豸µÄÖ±½ÓÖ¸Õë¡£ÄÚºËÔÊÐí¶à¸öÇý¶¯¹²ÏíÖ÷±àºÅ¡£
2.2
һЩÖ÷É豸±àºÅÊǾ²Ì¬·Ö¸ø×îÆÕͨµÄÉ豸µÄ£¬¶ÔÓÚÐÂÇý¶¯£¬´ó¶àÊýÇé¿öÏÂʹÓö¯Ì¬·ÖÅäÀ´»ñÈ¡ÄãµÄÖ÷É豸ºÅ¡£
¶¯Ì¬·ÖÅäÖ÷É豸ºÅº¯Êý
alloc_chrdev_region
¶¯Ì¬·ÖÅäµÄȱµãÊÇÄãÎÞ·¨Ìáǰ´´½¨É豸½Úµã, ÒòΪ·ÖÅ䏸ÄãµÄÄ£¿éµÄÖ÷±àºÅ»á±ä»¯. ¶ÔÓÚÇý¶¯µÄÕý³£Ê¹ÓÃ, Õâ²»ÊÇÎÊÌâ, ÒòΪһµ©±àºÅ·ÖÅäÁË, Äã¿É´Ó /proc/devices ÖжÁÈ¡Ëü¡£ÎªÊ¹Óö¯Ì¬Ö÷±àºÅÀ´¼ÓÔØÒ»¸öÇý¶¯, Òò´Ë, ¿ÉʹÓÃÒ»¸ö¼òµ¥µÄ½Å±¾À´´úÌæµ÷Óà insmod, ÔÚµ÷ÓÃinsmod ºó, ¶ÁÈ¡ /proc/devices À´´´½¨ÌØÊâÎļþ.
ÔÚscullÔ´ÂëÖлñÈ¡Ö÷±àºÅµÄ´úÂë
if (scull_major) {
dev = MKDEV(scull_major, scull_minor);
result = register_chrdev_region(dev, scull_nr_devs, "scull");
} else {
result = alloc_chrdev_region(&dev, scull_minor, scull_nr_devs, "scull");
scull_major = MAJOR(dev);
}
if (result < 0) {
printk(KERN_WARNING "scull: can't get major %d\n", scull_major);
return result;
}
-------------------
| 3 scullÔ´Âë·ÖÎö |
-------------------
scull É豸½á¹¹Ìå
struct scull_dev {
struct scull_qset *data; /* Pointer to first quantum se
Ïà¹ØÎĵµ£º
VMwareÖеÄRedHat Eneterprise
Linux 5ϵͳʱ¼ä×ܱÈÖ÷»úµÄWindows XPÂý¡£¼´Ê¹ÓÃdateÃüÁîÉèÖÃLinuxʱ¼äÓëWindows XPʱ¼äÒ»Ö£¬LinuxµÄʱ¼äÈÔ»áÖð½¥µÄÂýÏÂÀ´¡£ÕâÊǺÜÍ·Í´µÄÎÊÌ⣬Èç¹û²»Äܽâ¾ö£¬µ±ÔÚÁ½¸öϵͳ¼ä½»»»Îļþʱ£¬¿ÉÄܻᵼÖ±àÒë³öÏÖÒì³£¡£µçÄÔËùʹÓõÄCPUÊÇIntel Core2 Duo T7250£¬Ö÷Ƶ2.0G£»¶ø ......
su
suÃüÁîÊÇ×î»ù±¾µÄÃüÁîÖ®Ò»£¬³£ÓÃÓÚ²»Í¬Óû§¼äÇл»¡£ÀýÈ磬Èç¹ûµÇ¼Ϊ user1£¬ÒªÇл»Îªuser2£¬Ö»ÒªÓÃÈçÏÂÃüÁ
$su user2
È»ºóϵͳÌáʾÊäÈëuser2¿ÚÁÊäÈëÕýÈ·µÄ¿ÚÁîÖ®ºó¾Í¿ÉÒÔÇл»µ½user2¡£Íê³ÉÖ®ºó¾Í¿ÉÒÔÓÃexitÃüÁî·µ»Øµ½user1¡£
suÃüÁîµÄ³£¼ûÓ÷¨ÊDZä³É¸ùÓû§»ò³¬¼¶Óû§¡£Èç¹û·¢³ö²»´øÓû§ÃûµÄsuÃüÁî £¬Ôòϵ ......
ÆäʵÊǸöÂù¼òµ¥µÄÎÊÌâ¡£ÔÚLDD3µÄµÚ15ÕÂÉÏÓÐд£¨¼û“Remapping Specific I/O Regions”ÕâÒ»½Ú£©¡£²»¹ýµ±Ê±×÷ÕßÑ¡ÔñÁËÒ»¸ö´íÎóµÄ×ö·¨£ºÏȰÑÕâ¿éIO¿Õ¼äÓÃioremapÓ³Éäµ½ÁËÄں˿ռ䣬ȻºóÔÚÓû§½ø³Ì·ÃÎʱ»Ó³ÉäµÄµØÖ·Ëù²ú ÉúµÄȱҳÖжÏÀÓÃvmalloc_to_pageµÃµ½page£¬·µ»Ø¸øÓû§½ø³Ì¡£
È»¶ø£¬vmalloc_to_pageû·¨Óà ......
1. È¥http://java.sun.com/javase/downloads/index.jspÏÂÔØÒ»¸öLinux PlatformµÄJDK¡£
2. ÉÏÔØ
# chmod 755 jdk-6u2-linux-i586-rpm.bin
# ./jdk-6u2-linux-i586-rpm.bin
3. ³ÌÐò»á×Ô¶¯Éú³ÉÎļþ
Ö´ÐÐ
# rpm -ivh jdk-6u11-linux-i586.rpm
4. ÉèÖû·¾³±äÁ¿
  ......
²é¿´ËùÓл·¾³±äÁ¿ printenv
ÉèÖãºexport ±äÁ¿Ãû=±äÁ¿Öµ
ɾ³ý£ºunset ±äÁ¿Ãû
Èç¹ûÄãÏë²é¿´Ä³Ò»¸öÃû³ÆµÄ»·¾³±äÁ¿£¬ÃüÁîÊÇ£ºecho $»·¾³±äÁ¿Ãû£¬±ÈÈ磺
echo $ORACLE_HOME
cat ²é¿´ÃüÁî
source ÉúЧ
vi±à¼Æ÷
ÏȰ´esc£¬È»ºóÊäÈë :q! £¬´æÅÌÍ˳öÊäÈë :wq
2¡¢X·½Ê½:
¡¡¡¡(1). vi /etc/services # È·±£xdmcp¶Ë¿ ......