Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

linux 0.11 ÄÚºËѧϰ console.c£¬¿ØÖÆÌ¨


²Î¿¼¡¶linuxÄÚºËÍêȫעÊÍ¡·ºÍÍøÉÏÏà¹ØÎÄÕÂ
/*
 * ¿ØÖÆÌ¨ÏÔʾ²Ù×÷
 */
/*
 *  linux/kernel/console.c
 *
 *  (C) 1991  Linus Torvalds
 */
/*
 * console.c
 *
 * This module implements the console io functions
 * 'void con_init(void)'
 * 'void con_write(struct tty_queue * queue)'
 * Hopefully this will be a rather complete VT102 implementation.
 *
 * Beeping thanks to John T Kohl.
 */
/**********************
 * con_init con_write *
 **********************/
/*
 *  NOTE!!! We sometimes disable and enable interrupts for a short while
 * (to put a word in video IO), but this will work even for keyboard
 * interrupts. We know interrupts aren't enabled when getting a keyboard
 * interrupt, as we use trap-gates. Hopefully all is well.
 */
/*
 * Code to check for different video-cards mostly by Galen Hunt,
 * <g-hunt@ee.utah.edu>
 */
#include <linux/sched.h>
#include <linux/tty.h> // ¶¨Òåtty_struct½á¹¹£¬´®ÐÐͨÐÅ·½ÃæµÄ²ÎÊýºÍ³£Á¿
#include <asm/io.h> // Ó²¼þ¶ÔÓ¦µÄ»ã±àioÖ¸Áî
#include <asm/system.h>
/*
 * These are set up by the setup-routine at boot-time:
 */
#define ORIG_X (*(unsigned char *)0x90000) // ¹â±êÁкÅ
#define ORIG_Y (*(unsigned char *)0x90001) // ¹â±êÐкÅ
#define ORIG_VIDEO_PAGE (*(unsigned short *)0x90004) // ÏÔÊ¾Ò³Ãæ
#define ORIG_VIDEO_MODE ((*(unsigned short *)0x90006) & 0xff) // ÏÔʾģʽ
#define ORIG_VIDEO_COLS (((*(unsigned short *)0x90006) & 0xff00) >> 8) // ×Ö·ûÁÐÊý
#define ORIG_VIDEO_LINES (25) // ×Ö·ûÐÐÊý
#define ORIG_VIDEO_EGA_AX (*(unsigned short *)0x90008) // £¿£¿
#define ORIG_VIDEO_EGA_BX (*(unsigned short *)0x9000a) // ÏÔʾÄÚ´æ´óСºÍÉ«²Êģʽ
#define ORIG_VIDEO_EGA_CX (*(unsigned short *)0x9000c) // ÏÔʾ¿¨ÌØÐÔ²ÎÊý
#define VIDEO_TYPE_MDA 0x10 /* Monochrome Text Display,µ¥É«Îı¾ */
#define VIDEO_TYPE_CGA 0x11


Ïà¹ØÎĵµ£º

C/C++ º¯Êý²ÎÊýµÄÈëջ˳Ðò

¶Ô¼¼ÊõÖ´×ŵÄÈË£¬±ÈÈç˵ÎÒ£¬ÍùÍù¶ÔһЩÎÊÌ⣬²»½öÏë×öµ½“ÖªÆäÈ»”£¬»¹Ïë×öµ½“ÖªÆäËùÒÔÈ»”¡££ÃÓïÑÔ¿Éν²©´ó¾«É¼´Ê¹ÎÒÒѾ­ÓжàÄêµÄ¿ª·¢¾­Ñ飬¿É»¹ÊÇÓÐÐí¶àÎÊÌâ²»ÖªÆäËùÒÔÈ»¡£Ä³ÌìijµØÄ³ÈËÎÊÎÒ£¬£ÃÓïÑÔÖк¯Êý²ÎÊýµÄÈëջ˳ÐòÈçºÎ£¿´ÓÓÒÖÁ×ó£¬ÎÒËæ¿Ú»Ø´ð¡£ÎªÊ²Ã´ÊÇ´ÓÓÒÖÁ×óÄØ£¿ÎÒÖÕ¾¿Ã»Óиø³öºÏÀíµÄ½â ......

dz̸CÓëC++µÄÉè¼ÆÓë±à³Ì·ç¸ñ£¨¶þ£©

ÉÏ´Î×ܽáÁËC++£¨ÃæÏò¶ÔÏó£©Éè¼ÆµÄºËÐÄ˼Ï룬²¢ÇÒÀý¾ÙÁËʹÓÃÀàÄ£ÐÍÀ´Ìæ´úifºÍswitchµÄÒ»ÖÖ½ÏΪµäÐ͵ÄÇé¿ö¡£ÏÂÃæÏëÀ´Ì¸Ì¸C++ÔÚ±àÂë·½ÃæµÄÌØµã¡£
ÔںܶྭµäµÄC++½Ì³ÌÖж¼ÓÐÒ»¸ö½¨Ò飺Ӧ¾¡Á¿Ê¹Óû§´úÂ루¿âµÄʹÓÃÕߣ©¿´ÆðÀ´¶ÌС¶ø¼òµ¥¡£°´ÕÕ³£Ê¶£¬¼òµ¥µÄ´úÂëͨ³£Òª±È´ó¶ÎµÄ´úÂëºÃÀí½â£¬¶øÓû§´úÂëͨ³£ÊµÏÖµÄÊÇ×îÉϲãµÄ¹¦ÄÜ»òÕ ......

linuxϵͳĿ¼¼Ü¹¹

   ¸ùĿ¼
/bin    ³£ÓõÄÃüÁî binary file µÄÄ¿錄
/boot   ´æ·ÅϵͳÆô¶¯Ê±±ØÐë¶ÁÈ¡µÄµµ°¸£¬°üÀ¨ºËÐÄ (kernel) ÔÚÄÚ
     /boot/grub/menu.lst   GRUBÉèÖÃ
     /boot/vmlinuz   ÄÚºË
     ......

ǶÈëʽLinuxÎļþϵͳ¼°Æä´æ´¢»úÖÆ·ÖÎö

¡¡Ç¶ÈëʽϵͳÓëͨÓÃPC»ú²»Í¬£¬Ò»°ãûÓÐÓ²ÅÌÕâÑùµÄ´æ´¢É豸¶øÊÇʹÓÃFlashÉÁ´æÐ¾Æ¬¡¢Ð¡ÐÍÉÁ´æ¿¨µÈרΪǶÈëʽϵͳÉè¼ÆµÄ´æ´¢×°Ö㬱¾ÎÄ·ÖÎöÁËǶÈëʽϵͳÖг£ÓõĴ洢É豸¼°Æä¹ÜÀí»úÖÆ£¬½éÉÜÁ˳£ÓõĻùÓÚFLASHµÄÎļþϵͳÀàÐÍ¡£
     1£®Ç¶Èëʽϵͳ´æ´¢É豸¼°Æä¹ÜÀí»úÖÆ·ÖÎö
   
¡¡¡¡ ¹¹ ......

linuxÐÔÄÜ·ÖÎö top

http://shake863.javaeye.com/blog/181246
top
top
ÃüÁîÊÇ×îÁ÷ÐеÄÐÔÄܹ¤¾ßÖ®Ò»¡£´ó¶àÊýϵͳ¹ÜÀíÔ±ÔËÐÐtop
²é¿´Linux
ºÍUNIXϵͳµÄÔËÐÐÇé¿ö¡£top
ʵÓù¤¾ßÌṩһÖÖ¼àÊÓ½ø³ÌºÍLinux
ÕûÌåÐÔÄܵÄÀíÏë·½·¨¡£½«Linux
½ø³Ì³Æ×÷ÈÎÎñ¸ü׼ȷ£¬µ«ÊÇÔÚ±¾ÕÂÖÐÎÒÃÇ»¹Êǽ«ËüÃdzÆ×÷½ø³Ì£¬ÒòΪÕâ¸ö¹¤¾ßÒ²ÕâÑù³ÆºôËüÃÇ¡£1
ÆÕͨÓû§º ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ