7주차-LINUX2(4)

Chan·2021년 5월 27일
0

hancom

목록 보기
13/45

커널이란?

컴퓨터 - sw, hw
sw - 운영체제, 응용프로그램
운영체제 - 커널, 시스템프로그램

커널은 사용자가 물리적인 하드웨어에 접근하고 사용할 수 있도록
컴퓨터의 물리적 자원과 추상적 자원을 관리한다.

디바이스 프로그래밍

  • 디바이스 드라이버 구조

블록 디바이스 : Block 단위로 입출력을 하는 Device, Block은 File System의 섹터를 의미
캐릭터 디바이스 : Character 단위, 즉 바이트 단위로 입출력을 하는 Device, 데이터 관리 기능을 가진 응용 프로그램
major number : 디바이스를 처리하기 위한 Device Driver 식별 번호, 최대 255 이다.
minor number : Device Driver가 처리하는 특정 Device를 식별하기 위한 번호
file operations : 드라이버 관련 함수 모음

  • IO 멀티플렉싱

따로 공부

open / release

sk.c , sk_app.c 작성 (p89~91)
Makefile 작성 또는 수정

  1. 터미널에서 make clean, make (모듈 컴파일)
  2. 터미널에서 arm-none-linux-gnueabi-gcc sk_app.c -o sk_app (어플리케이션 컴파일)
  3. 테라텀에서 insmod sk.ko (모듈 적재)
  4. 테라텀에서 mknod /dev/SK c 253 0 (장치파일 만들기)
  5. 테라텀에서 ./sk_app (어플리케이션 실행)
  6. 테라텀에서 rmmod sk.ko

open 수행 순서 : open → library → S/W interrupt (OS call)
→ System call → VFS → CHR. Device file → Device Driver

profile
Backend Web Developer

0개의 댓글

Powered by GraphCDN, the GraphQL CDN