Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö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


Ïà¹ØÎĵµ£º

ʵսLinux Bluetooth±à³Ì£¨ËÄ£© L2CAP²ã±à³Ì

£¨L2CAPЭÒé¼ò½é£¬L2CAPÔÚBlueZÖеÄʵÏÖÒÔ¼°L2CAP±à³Ì½Ó¿Ú£©
Ò»£ºL2CAPЭÒé¼ò½é£º
Logical Link Control and Adaptation Protocol(L2CAP)
Âß¼­Á¬½Ó¿ØÖƺÍÊÊÅäЭÒé (L2CAP) ΪÉϲãЭÒéÌá¹©ÃæÏòÁ¬½ÓºÍÎÞÁ¬½ÓµÄÊý¾Ý·þÎñ£¬²¢Ìṩ¶àЭÒ鹦ÄܺͷָîÖØ×é²Ù×÷¡£L2CAP ³äÐíÉϲãЭÒéºÍÓ¦ÓÃÈí¼þ´«ÊäºÍ½ÓÊÕ×î´ó³¤¶ÈΪ 64K µÄ L2CAP Ê ......

linuxÄÚ´æ¹ÜÀí

Äں˽øÐÐÎïÀíÄÚ´æ¹ÜÀíºÍÐéÄâÄÚ´æ¹ÜÀí
ʹÓôÅÅÌÉϵĿռ䣬³ÆÎª½»»»Çø¡£
ÄÚºËÊǽ«ÐéÄâÄÚ´æÖеÄÄÚÈÝÀ´À´»Ø»ØµÄºÍÄÚ´æµÄÄÚÈݽøÐн»»»µÄ
ÕâÑù¿ÉÒÔÈÃos¸Ð¾õµ½Æäʵ¿ÉÓõÄÄÚ´æ±ÈÎïÀíÄÚ´æ¿Õ¼ä¸ü´ó¡£
ÄÚ´æµÄ·ÖÅäÊdzÉ×éµÄ·Ö³É¿éµÄ£¬³ÆÎªÒ³Ãæ¡£
ÄÚºËÓÐÒ»ÕÅ±í£¬ÓÃÀ´¶¨Î»Ò³ÃæÊÇÔÚÄÚ´æÀïÃæ»¹ÊÇÔÚ´ÅÅÌÀïÃæ¡£ÒÔ¾ö¶¨ÄÄÐ©Ò³ÃæÒª½»»»¡£ ......

CÖÐmallocºÍfreeµÄÔ­Àí Õª×Ôtechriver.cublog.cn

̸̸CÓïÑÔµÄmalloc()ºÍfree()
Ò»¡¢malloc()ºÍfree()µÄ»ù±¾¸ÅÄîÒÔ¼°»ù±¾Ó÷¨£º
1¡¢º¯ÊýÔ­Ðͼ°ËµÃ÷£º
void *malloc(long NumBytes)£º¸Ãº¯Êý·ÖÅäÁËNumBytes¸ö×Ö½Ú£¬²¢·µ»ØÁËÖ¸ÏòÕâ¿éÄÚ´æµÄÖ¸Õë¡£Èç¹û·ÖÅäʧ°Ü£¬Ôò·µ»ØÒ»¸ö¿ÕÖ¸Õ루NULL£©¡£
¹ØÓÚ·ÖÅäʧ°ÜµÄÔ­Òò£¬Ó¦¸ÃÓжàÖÖ£¬±ÈÈç˵¿Õ¼ä²»×ã¾ÍÊÇÒ»ÖÖ¡£
void free(void *Fir ......

linux sqlplusÀúÊ·ÃüÁîµÄСÌùÊ¿

windowϵÄsqlplus¿ÉÒÔͨ¹ý¼ýÍ·¼ü£¬À´»Ø¿´ÀúÊ·ÃüÁÓÃÆðÀ´·Ç³£µÄ·½±ã¡£
µ«ÊÇÔÚlinuxÀï¾ÍûÓÐÕâô·½ÃæÁË£¬´íÁËÒ»¸öÃüÁÎÒÃDZØÐëÖØÐÂÇÃÒ»´Î£¬ÐÁ¿àÁËÊÖָͷ߷¡£
¿´µ½Ò»¸öÎÄÕ£¬ºÜ·½±ãµÄÒ»ÕУ¬¸øÎÒÃÇ´øÀ´·½±ã¡£
ͨ¹ýrlwrap°üʵÏÖlinuxÀïµÄsqlplusÀúÊ·ÃüÁîµÄ¹¦ÄÜ
¿ÉÒÔÏÂÔØrlwrap°ü´ÓinthirtiesÀï¡£
Õâ¸ö°üÒÀÀµreadline°ü ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ