티스토리 뷰
● 마우스
- 예전에는 마우스 안에 계란 노른자가 있었다. 이를 볼 마우스라고 하는데 마우스를 움직이면 밑에 있는 볼이 회전을 하게되고 이 회전을 감지해서 움직임을 처리하는 방식이었다.
- 요즘의 마우스는 대부분 광학 마우스이다.
- 광학 마우스 밑에는 작은 카메라가 달려 있는데 이 카메라가 표면으로 초당 1500회가 넘는 사진을 찍어 마우스의 디바이스 컨트롤러 내의 DSP(Digital Signal Processor)로 보낸다.
- DSP는 받은 사진을 분석해 마우스의 X축 좌표와 Y축 좌표 움직임을 캐치한다.
- DSP가 마우스의 움직임, 클릭 같은 데이터를 감지하면 디바이스 컨트롤러는 CPU에게 인터럽트를 보내고 마우스 드라이버가 동작해서 데이터를 읽어간다.
- 그러면 마우스 드라이버는 운영체제에게 이벤트 신호를 보낸다.
- 신호를 받은 운영체제는 해당 이벤트를 Foreground 애플리케이션에게 전달해주고 해당 애플리케이션은 받은 마우스 이벤트를 처리한다.
ex1) 바탕화면에서 마우스 우클릭 이벤트가 발생하면 운영체제는 아래와 같은 메뉴를 띄운다.
ex2)
- 게임에서 마우스 우클릭 이벤트 발생
- 마우스 드라이버는 운영체제에게 마우스 우클릭 이벤트 전달
- 운영체제는 해당 게임에게 이벤트 처리를 맡긴다.(그러면 캐릭터가 움직인다.)
● 키보드
- 키보드의 근본적인 움직임은 마우스와 동일하다.
1. 사용자가 키보드를 누른다.
2. 키보드의 디바이스 컨트롤러가 어떤 키를 입력 받았는지 알아낸 후 CPU에게 인터럽트를 보낸다.
3. 키보드 드라이버가 동작해서 운영체제에게 이벤트 신호를 보낸다.
4. 운영체제는 해당 이벤트를 Foreground 애플리케이션에게 전달해주고 애플리케이션은 해당 키에 맞는 동작을 수행한다.
'CS > 운영체제' 카테고리의 다른 글
#31 디렉토리 (0) | 2023.06.18 |
---|---|
#30 주변장치 - 하드디스크/Flash Memory(SSD) (0) | 2023.06.17 |
#28 주변장치 - I/O 디바이스, 저장장치 (0) | 2023.06.03 |
#27 메모리 - 메모리와 주소 (0) | 2023.05.29 |
#26 메모리 - 메모리 종류 (1) | 2023.05.28 |
- Total
- Today
- Yesterday
- Advanced Stream
- 프로그래머스
- 운영체제
- SQL
- node.js
- 메모리
- API
- 코딩테스트
- DART
- MongoDB
- 프로세스
- Spring Boot
- 알고리즘
- 빅데이터
- nosql
- Phaser3
- 코테
- git
- Java8
- Phaser
- 빅데이터 분석기사
- OS
- jpa
- db
- spring
- 자료구조
- java
- Stream
- MySQL
- SpringBoot
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |