nckernel  0.1
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Functions
텍스트 메모리 접근 인터페이스

x86 전용 keyboard driver 를 구현한다 More...

Functions

int keyboard_init (void)
 
int video_init (void)
 

Detailed Description

x86 전용 keyboard driver 를 구현한다

x86 전용 비디오 메모리 접근을 위한 함수 인터페이스를 정의한다.

Author
Sung-jae Park nices.nosp@m.j@ni.nosp@m.cesj..nosp@m.com
Date
2013-9-21
Author
Sung-jae Park nices.nosp@m.j@ni.nosp@m.cesj..nosp@m.com
Date
2011-7-20

VGA Video ram 영역은 비디오 디바이스와 직접 연관된 부분으로 Device mapped memory area 라고 볼 수 있다. 해당 주소에 값을 쓰거나 읽으면 Video Device 에 값을 쓰고/읽는 것 처럼 동작하며, 결국 연결된 모니터로 출력된다.

80x25 크기의 기본 텍스트 모드를 위해 mapping 된 영역은 0xb8000 부터이다. 텍스트와 텍스트의 속성을 표현하기 위해 한 칸에 2 Bytes 씩 할당된다.

Real mode 에서는 0xb800:0000 으로 접근이 가능하다. Protected mode 에서는 Linear address 로 0xb8000 이 된다.

Function Documentation

int keyboard_init ( void  )

Definition at line 140 of file keyboard.c.

References DEVICE_VIDEO80x25, EFAULT, IRQ_NR_KEYBOARD, NORMAL_PRIORITY, NULL, register_irq(), ninfo::size, unregister_irq(), vfs_get_ninfo(), and vfs_new_dev_ninfo().

Referenced by drivers_init().

Here is the call graph for this function:

Here is the caller graph for this function:

int video_init ( void  )

Definition at line 177 of file video.c.

References DEVICE_VIDEO80x25, EFAULT, MAX_SIZE, NULL, ninfo::size, vfs_get_ninfo(), and vfs_new_dev_ninfo().

Referenced by drivers_init().

Here is the call graph for this function:

Here is the caller graph for this function: