×î¼òµ¥µÄ´°¿Ú(Gtk+ for Linux)
ÔÚLinuxÏÂʹÓÃGtk+ʵÏÖ×î¼òµ¥µÄGUI´°¿Ú£¬Ô´´úÂëÈçÏ£º
//SimpleGui.c
#include <gtk/gtk.h>
int main(int argc,char *argv[])
{
//¶¨ÒåÒ»¸öwidget(Gtk+¹¹¼þ)£¬ÕâÀﶨÒåµÄÊÇÒ»¸ö´°¿Ú¹¹¼þ
GtkWidget *wnd;
//Gtk+2.0µÄ³õʼ»¯ÃüÁîÐвÎÊý£¬Ã¿Ò»¸öGtk+³ÌÐò¶¼ÒªÓÐÕâ¾ä»°
gtk_init(&argc,&argv);
//´´½¨Ò»¸öÖö¥µÄ´°¿Ú
wnd = gtk_window_new(GTK_WINDOW_TOPLEVEL);
//ÉèÖÃÕâ¸ö´°¿ÚµÄ±êÌâÊÇ"Simple Form with Gtk+"
gtk_window_set_title(GTK_WINDOW(wnd),"Simple Form with Gtk+");
//Gtk+µÄÐźŻص÷º¯Êý£¬ÕâÀïµÄÕâ¸ö»Øµ÷º¯ÊýµÄ×÷ÓõÄÊǹرմ°¿Ú
g_signal_connect(G_OBJECT(wnd),"destroy",G_CALLBACK(gtk_main_quit),NULL);
//ÏÔʾ¹¹¼þº¯Êý£¬ÕâÀïÊÇÏÔʾ´°¿Ú
gtk_widget_show(wnd);
//Gtk+2.0µÄÖ÷Ñ»·Ê¼þ£¬Ã¿Ò»¸öGtk+2.0³ÌÐò¶¼ÒªÒ»¸ö£¬·ñÔò³ÌÐòÎÞ·¨ÔËÐУ¬Í¬Ê±Õâ¸öº¯ÊýÊÇÒ»¸öËÀÑ»·
//Ö»ÓÐͨ¹ýÉÏÃæµÄg_signal_connectÐźŻص÷º¯ÊýÍ˳öÕâ¸öËÀÑ»·
gtk_main();
return 0;
}
//makefile(±àдMakefileÎļþ¿ÉÒÔÈóÌÐò±àÒë¸ü¼Ó¼ò±ã)
CC=gcc
OFLAG=o
GFLAG=-g
GTK=`pkg-config --cflags --libs gtk+-2.0`
SimpleGui:SimpleGui.c
$(CC) $(OFLAG) SimpleGui SimpleGui.c $(GTK)
$(CC) $(OFLAG) SimpleGui.debug $(GFLAG) SimpleGui.c $(GTK)
È»ºóÔÚÖÕ¶ËÖÐÊäÈëmake¾Í¿ÉÒÔ±àÒë³öSimpleGuiºÍSimpleGui.debugÁ½¸öÎļþ£¬ÆäÖÐSimpleGui.debugÎļþÊǵ÷ÊÔÎļþ£¬Èç¹û³ÌÐòÓÐÎÊÌ⣬¿ÉÒÔʹÓÃDDDÕâ¸öÈí¼þ½øÐгÌÐòµ÷ÊÔ¡£Ò»¸ö¼òµ¥µÄGtk+³ÌÐò¾ÍдºÃÁË£¬Ï£ÍûºÍÆäËûÔÚLinuxÏÂ×ö¿ª·¢µÄÅóÓѶà¶àµÄ½»Á÷£¬ÎÒÊÇÒ»¸ö³õѧÕߣ¬»¹ÓÐºÜ¶àµØ·½Ï£ÍûµÃµ½¸÷λµÄÖ¸µ¼£¬Ð»Ð»¡£
Ïà¹ØÎĵµ£º
ѧϰӦ¸ÃÊÇÒ»¸öÏȰÑÎÊÌâ¼òµ¥»¯£¬ÔÚ°ÑÎÊÌ⸴ÔÓ»¯µÄ¹ý³Ì¡£Ò»¿ªÊ¼¾Í×ÅÊÖ´¦Àí¸´ÔÓµÄÎÊÌ⣬ÄÑÃâÈà ÈËÓÐÐľªµ¨²ü£¬×½½ó¼ûÖâµÄ¸Ð¾õ¡£¶ÁLinuxÍø¿¨Çý¶¯Ò²ÊÇÒ»Ñù¡£Ädz¤³¤µÄÔ´Âë¼ÐÔÓ×ÅÄÇЩÎÒÃÇİÉúµÄ±äÁ¿ºÍ·ûºÅ£¬Íû¶øÉúη±ãÊÇÀíËùµ±È»µÄÁË¡£²»Òªµ£ÐÄ£¬ÊÂÇé ×ÜÓнâ¾öµÄ°ì·¨£¬ÏȰÑһЩÎÒÃǹܲ»×ŵĴúÂëÇиî³öÈ¥£¬ÁôϱØÐëµÄ²¿·Ö£¬°Ñ¿ò¼ÜÕ ......
±¾ÎÄÀ´×Ô£ºhttp://blog.chinaunix.net/u2/66786/showart.php?id=601766
1.1ʷǰµÄPIC
8259AÊǼ´ÎÒÃÇͨ³£ËµµÄPIC£¬Èçͼ1-1Ëùʾ£º
ͼ1-1 8259A
ÆäÖÐ×îÖØÒªµÄ¹Ü½ÅÊÇIR0~IR7£¨Interrupt Request0~7£¬ÓÃÓÚÁ¬½ÓÉ豸£©¡¢INT£¨Á¬½ÓCPU,µ±ÓÐÖжÏÇëÇóʱ£¬À¸ß¸Ã¹Ü½ÅÒÔ֪ͨCPUÖжϵĵ½À´£©¡¢INTA£¨Á¬½ÓCPU£¬CPUͨ¹ý¸Ã¹Ü½ ......
1.2.2 LAPIC
ÊÕµ½À´×ÔIOAPICµÄÖжÏÏûÏ¢ºó£¬LAPIC»á½«¸ÃÖжϽ»ÓÉCPU´¦Àí¡£ºÍIOAPIC±È½Ï£¬LAPIC¾ßÓиü¶àµÄ¼Ä´æÆ÷ÒÔ¼°¸ü¸´ÔӵĻúÖÆ¡£µ«¶ÔÓÚ´¦ÀíÀ´×ÔIOAPICµÄÖжÏÏûÏ¢£¬×îÖØÒªµÄ¼Ä´æÆ÷»¹ÊÇIRR¡¢ISRÒÔ¼°EOI¡£
ͼ1-4ÏÔʾÁËx86ƽ̨ÉÏ£¬IRRºÍISRµÄ¸ñʽ£º
ͼ1-4 IRR¡¢ISR¹¹³É
ÓëPICÖеÄIRR¡¢ISR²»Í¬µÄÊÇ£¬LAPICµÄISR¡¢ ......
½ñÌ쿽±´ÁËÐéÄâ»úÔÚÁíÍâһ̨µçÄÔÉÏʹÓ㬷¢ÏÖMACµØÖ·³åÍ»£¬ÓÚÊÇÈ¥ÍøÉÏÕÒÐ޸ķ½·¨¡£¿É°´ÕÕËù˵µÄ£¬ÎÒ²¢Ã»ÓкÜ˳ÀûÐ޸ijɹ¦¡£
ÏÂÃæÎÒ½«¹ý³Ìд³öÀ´£¬ÀïÃæÓÐЩµØ·½ÐèҪעÒâһϡ£
ÏÂÃæÊÇÎÒ´ÓÍøÉÏËÑË÷µ½´ó²¿·ÖµÄ×ö·¨ÈçÏ£¬ºìÉ«²¿·ÖÊÇÎÒ×¢Ê͵ģ¬ÐèҪעÒâµÄµØ·½£º
VMwareÐéÄâ»úÖÐÐÞ¸ÄLinux MACµØÖ·µÄ·½·¨£º
1¡¢ÐÞ¸ÄÐéÄâ»úµÄ*.v ......
ÎҵĵçÄÔ°²×°ÁË˫ϵͳ£¬WindowsºÍLinux£¬²»¹ýÓÉÓÚLinuxÔÚ×î½üÒ»¶Îʱ¼äÄÚ²»»áʹÓã¬ËùÒÔÎÒ´òËãɾ³ýLinux¡£
ɾ³ýLinux×îÐèҪעÒâµÄµØ·½£¬¾ÍÊÇMBR£¨Master Boot Record£©¡£ÔÚɾ³ýLinux·ÖÇøÇ°£¬ÎÒÃÇÐèÒª½«Æô¶¯WindowsµÄÒýµ¼ÐÅϢдÈëMBR£¬·ñÔò£¬MBRÖеÄLinuxÒýµ¼ÐÅÏ¢£¬µ±È»¾Í²»ÄÜÆô¶¯WindowsÏµÍ ......