linux 2.6Ô´´úÂëÇé¾°·ÖÎö±Ê¼ÇÖ®ÖжÏÓëÒì³£4
IDTµÄ³õ²½³õʼ»¯
ÔÚʵģʽʱ£¬idt±»³õʼ»¯²¢ÓÉbiosÀý³ÌʹÓá£Ò»µ©linux½Ó¹Ü£¬idt¾Í±»ÒƵ½ramµÄÁíÒ»¸öÇøÓò£¬²¢½øÐеڶþ´Î³õʼ»¯£¬ÒòΪlinuxûÓÐÀûÓÃÈκÎbiosÀý³Ì¡£
IDT´æ·ÅÔÚidt_table±íÖУ¬ÓÐ256¸ö±íÏî¡£6×Ö½ÚµÄidt_descr±äÁ¿Ö¸¶¨ÁËidtµÄ´óСºÍËüµÄµØÖ·£¬Ö»Óе±ÄÚºËÓÃlidt»ã±àÖ¸Áî³õʼ»¯idtr¼Ä´æÆ÷ʱ²ÅÓõ½Õâ¸ö±äÁ¿¡£
ÔÚÄں˳õʼ»¯¹ý³ÌÖУ¬setup_idt()»ã±àÓïÑÔº¯ÊýÓÃͬһ¸öÖжÏÃÅ£¨Ö¸Ïòignore_int()Öжϴ¦Àí³ÌÐò£©À´Ìî³äËùÓÐÕâ256¸öidt_table±íÏ
setup_idt:
lea ignore_int,%edx
movl $(__KERNEL_CS << 16),%eax
movw %dx,%ax /* selector = 0x0010 = cs */
movw $0x8E00,%dx /* interrupt gate - dpl=0, present */
lea idt_table,%edi
mov $256,%ecx
rp_sidt:
movl %eax,(%edi)
movl %edx,4(%edi)
addl $8,%edi
dec %ecx
jne rp_sidt
ret
½ô½Ó×ųõʼ»¯£¬Äں˽«ÔÚidtÖнøÐеڶþ±é³õʼ»¯£¬ÓÃÓÐÒâÒåµÄÏÝÚåºÍÖжϴ¦Àí³ÌÐòÌæ»»Õâ¸ö¿Õ´¦Àí³ÌÐò¡£Ò»µ©Õâ¸ö¹ý³ÌÍê³É£¬¶Ô¿ØÖƵ¥Ôª²úÉúµÄÿ¸ö²»Í¬µÄÒì³££¬idt¶¼ÓÐÒ»¸öרÃŵÄÏÝÚå»òÕßϵͳÃÅ£¬¶ø¶ÔÓڿɱà³ÌÖжϿØÖÆÆ÷È·ÈϵÄÿһ¸öirq,idt¶¼½«°üº¬Ò»¸öרÃŵÄÖжÏÃÅ¡£
cpu²úÉúµÄ´ó²¿·ÖÒì³£¶¼ÓÉlinux½âÊÍΪ³ö´íµÄÌõ¼þ¡£µ±ÆäÖÐÒ»¸öÒì³£·¢Éúʱ£¬Äں˾ÍÏòÒýÆðÒì³£µÄ½ø³Ì·ÅËÍÒ»¸öÐźÅÏòËü֪ͨһ¸ö·´³£Ìõ¼þ¡£
Òì³£´¦Àí³ÌÐòÓÐÒ»¸ö±ê×¼µÄ½á¹¹£¬ÓÉÈý²¿·Ö×é³É£º
1.ÔÚÄں˶ÑÕ»Öб£´æ´ó¶àÊý¼Ä´æÆ÷µÄÄÚÈÝ£¨Óûã±àÓïÑÔʵÏÖ£©
2.Óø߼¶µÄcº¯Êý´¦ÀíÒì³£¡£
3.ͨ¹ýret_from_exception()º¯Êý´ÓÒì³£´¦Àí³ÌÐòÍ˳ö¡£
±ØÐë¶Ôidt½øÐÐÊʵ±µÄ³õʼ»¯£¬Ê¹µÃÿ¸ö±»È·ÈϵÄÒì³£¶¼ÓÐÒ»¸öÒì³£´¦Àíº¯Êý¡£trap_init()º¯ÊýµÄ¹¤×÷Êǽ«Ò»Ð©×îÖÕÖµ²åÈëµ
Ïà¹ØÎĵµ£º
Ò»£ºÇ°ÑÔ
×î½üÔÚÑо¿androidµÄsensor driver£¬Ö÷ÒªÊÇE-compass£¬ÆäÖÐÓõ½ÁËLinux input×Óϵͳ.ÔÚÍøÉÏÒ²¿´Á˺ܶàÕâ·½ÃæµÄ×ÊÁÏ£¬¸Ð¾õ»¹ÊÇÕâƪ·ÖÎöµÄ±È½ÏϸÖÂ͸³¹£¬Òò´ËתÔØÒ»ÏÂÒÔ±ã×Ô¼ºÑ§Ï°£¬Í¬Ê±ºÍ´ó¼Ò·ÖÏí£¡
£¨Õâƪ²©¿ÍÖ÷ÒªÊÇÒÔ¼üÅÌÇý¶¯ÎªÀýµÄ£¬²»¹ý½²½âµÄÊÇLinux Input Subsystem£¬¿ÉÒÔ×ÐϸµÄÑо¿Ò»Ï£¡£©
¼üÅÌÇý¶¯½«¼ì ......
תÔØ×Ô£ºhttp://bbs.dp168.com/thread-23703-1-1.html
Redhat
¼ò½é£º
Red Hat LinuxÊÇÉÌÒµÉÏÔË×÷×î³É¹¦µÄÒ»¸öLinux·¢ÐÐÌ×¼þ£¬ÆÕ¼°³Ì¶ÈºÜ¸ß£¬ÓÉRed Hat¹«Ë¾·¢ÐС£
Red Hat
Linux¿ÉËãÊÇÒ»¸ö“ÖÐÄêµÄ”Linux·¢ÐÐÌ×¼þ£¬1.0°æ±¾ÓÚ1994Äê11ÔÂ3ÈÕ·¢ÐС£ËäÈ»ÆäÀúÊ·²»¼°Slackware°ãÓƾ㬵«±ÈÆðºÜ¶àµÄ
Linux·¢ÐÐÌ×¼þ ......
±¾ÊÀ¼ÍµÚÒ»¸öÊ®Ä꣬¼´½«¹ýÈ¥¡£»Ø¹ËÒÔÍù£¬²ÅÄÜ¿´ÇåÏÖÔÚ£¬ÎÒÓм¸¾ä»°ÒªËµ¡£
¼ÇµÃ£¬ÔÚÊ®Äê֮ǰ£¬ÈËÃÇÖ»ÄÜÍæÍæÃÀ¹úºìñµÄ Linux ×ÀÃ棨ÌرðÊÇ 6.2 °æ±¾£©£¬ÕûÌì sudo £¨¼´ Super User do £©£¬ÈÎƾ¼¤Çé·ºÀÄ¡£µ½ÁË 2001 Äê 1 Ô£¬ Linux 2.4 Õýʽ·¢²¼£¬Ê×´ÎÖ§³Ö USB ºÍÀ¶ÑÀ¼¼Êõ£¬ÒÔ¼° ext ......
tty0£6ÊÇlinux±¾µØÖնˣ¬pts/xÊÇÔ¶³ÌµÇ½ÐèÒªµÄÖնˣ¬±ÈÈçijÈËÒªtelnetµ½ÄãµÄ»ú×Ó£¬¾ÍÐèÒªÄãµÄϵͳÓÐpts/x¡£
»ù±¾¸ÅÄ
¡¡
¡¡1. tty(ÖÕ¶ËÉ豸µÄͳ³Æ):
¡¡¡¡ttyÒ»´ÊÔ´ÓÚTeletypes£¬»òÕßteletypewriters£¬ÔÀ´Ö¸µÄÊǵ紫´ò×Ö»ú£¬ÊÇͨ¹ý´®ÐÐÏßÓôòÓ¡»ú¼üÅÌͨ¹ýÔĶÁºÍ·¢ËÍÐÅÏ¢µÄ¶«Î÷£¬ºóÀ´ÕⶫÎ÷±»¼üÅÌÓëÏÔʾÆ÷È¡´ú ......
#include <unistd.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#define err(msg) perror(msg)
static void mkdirs(const char *dir)
{
char tmp[1024];
char *p;
&nbs ......