Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
초기화와 종료 처리<br />
255<br />
I/O 메모리 영역의 경쟁 처리 함수<br />
<br />
<br />
<br />
PCI나 기타 내부적으로 I/O 제어를 위해 메모리 영역을 사용하는<br />
경우<br />
I/O 메모리 영역의 경쟁 문제를 해결할 수 있도록 함수 제공<br />
#include 필요<br />
• check_mem_region() : 등록된 자원인가를 확인<br />
• int check_mem_region(unsigned long from, unsigned long extent);<br />
• request_mem_region() : 자원을 등록<br />
• void request_mem_region(unsigned long from, unsigned long extent,<br />
const char *name);<br />
• release_mem_region() : 등록된 자원을 제거<br />
• void release_mem_region(unsigned long from, unsigned long extent);<br />
http://eoslab.ssu.ac.kr<br />
Linux Device Driver<br />
초기화와 종료 처리<br />
256<br />
읽기와 쓰기의 구현<br />
<br />
디지털 입출력을 처리하는 디바이스 파일 “/dev/dio”에 데이터를<br />
써넣거나 읽을때의 처리<br />
int fd;<br />
char buff[128];<br />
fd = open(“/dev/dio”, O_ RDWR | O_ NDELAY);<br />
…<br />
read(fd, buff, 16);<br />
…<br />
write(fd, buff, 32);<br />
…<br />
close(fd);<br />
http://eoslab.ssu.ac.kr<br />
Linux Device Driver