Unix Project-Final <test character device 생성>

Slides:



Advertisements
Similar presentations
Term Project Hints Topics Keep-alive CGI Multi-thread Multi-process Event-based.
Advertisements

1/15 16 기 장영일 Ext File System. 2/15 처음에 Minix 가 사용되었다 ( 제약사항 ) 최대로 저장할 수 있는 파일의 크기 – 64M : 16bit 정수로 블록 주소 지정 -> 1024( 블록 기본 사이즈 ) * (2^16) = 64M.
KB 스타 경제 · 금융교실 나는 용돈관리왕. KB 스타 경제 · 금융교실 나는 용돈관리왕 선생님은 ? KB 2  이름 : 김국민  별명 : 스타 왕자  소속 : KB 국민은행 소비자 보호담 당 ( 간단한 자기 소개 : 교육 대상이 흥미 를 가질 수 있는 이미지와.
KAIST 09 SPARCS 10 안재만 (Kuss).  OS  Kernel & Shell  OS Layer  Linux  Linux / GNU  Linux 역사  Linux 배포판  Linux Directories.
© DBLAB, SNU 화일구조. 강의 소개 - 화일구조  Instructor : Prof. Sukho Lee (301 동 404 호 )  홈페이지 :  교과목 개요 – 이 과목은 데이타 관리와 응용을 위한 화일 구조의 설계와.
When Poll is Better than Interrupt
2010 – 06 – 24 주간 보고서.
Linux Seminar #1 리눅스 이해하기.
MB노믹스의 실패와 미래 22조 배주환 외 5명.
화일구조.
2009년 IT인재개발원 [연수생 모집요강]
2012년 12월 정기 제직회 기 도 : 김영민 집사 출 석 : 서 기 개회 선언 : 제직회장 (이태환 장로)
28강 JAVA 입출력(I/O) 알아보기 - 입출력(I/O) 이란? - JAVA 입출력 API(Input~, Output~)
Project #2-2. Pintos User Program
SYSTEM CALL (Syscall) CSLAB SEWON PARK.
소프트웨어와 운영체제.
2014학년도 중학교 교육과정 편성시 유의사항 울산광역시교육청 교육과정운영과 한 상 철.
제 2장 컴퓨터 구조.
전자장 일정표 9월 일 월 화 수 목 금 토 1 2 Lect Lect. 2, Lect. 4
제6장 FUSING.
크로스 컴파일 환경 구축.
FUSING.
디바이스 드라이버 기초 디바이스 드라이버의 개요 파일 연산 디바이스 드라이버 등록 디바이스 드라이버 구성
디바이스 드라이버.
디바이스 드라이버 개요 가상 디바이스드라이버 실습
Linux를 이용한 Embedded 장비 개발
Unix Project2 <test character device 생성>
컴퓨터 구조.
UNIX Unbounded A Beginning Approach
Embedded System Porting (2)
2장 운영 체제의 개요 운영체제의 개념 운영체제의 유형 운영체제의 발전 과정 운영체제의 구성 운영체제 서비스 시스템 구조
Linux/UNIX Programming APUE (Files & Directories)
운영체제 (Operating Systems)
(ioctl, mmap, fsync&flush)
HBE-SMIII-SV210 리눅스 커널과 디바이스 드라이버
Chapter 10. 파일 시스템 인터페이스(File System Interface)
(개정판) 뇌를 자극하는 Red Hat Fedora 리눅스 서버 & 네트워크
노출영역 노출영역의 해당 배너들 클릭 시 실제 기획전 페이지로 이동됩니다..
문자 디바이스 드라이버 임베디드 시스템.
2015. 인문소양교육.
Ⅳ. 결재함 - 기본사항 간지 Ⅰ. 시스템소개 Autoway Groupware User Manual
사 내 한 성명 NDS 업적목표관리제도(PMS)운영 매뉴얼 주식회사 엔디에스 인사교육팀.
리눅스: Lecture 1 강의개요 중앙대학교 컴퓨터공학부 손 봉 수 교수.
키타노카시쇼쿠닌(北の菓子職人) - 「오호츠크의 소금 맛」
리눅스 디바이스 드라이버 (Linux Device Driver)
1 2 ■ EPC 커스터마이징 품목 운영 결과 보고 커스터마이징 품목 : 매출 ↑ , CS만족도 ↓ System 개선
12장. 파일 시스템 구현.
알쏭달쏭 요한복음 성경퀴즈.
UNIT 21 Flash Memory Controller 로봇 SW 교육원 조용수.
업무 메뉴얼 1. 사무용품/소모품 청구의뢰서 작성요령 2. 법인 등기부등본/법인 인감증명 발급 요청서 작성요령
비즈니스 매너 1 -만남의 기술- Success partner 이채연.
KB스타 경제·금융교실 은행에 가요.
화일구조.
Homework #7 (1/4) 다음 프로그램을 작성하고, 프로그램과 실행 결과를 함께 제출한다.
3단원 디지털 세상 속으로 1. 0과 1의 비밀.
8. 리눅스의 내부 군자삼락 [君子三樂] 청출어람이청어람 [ 靑出於藍而靑於藍 ] Why Linux ?
Stream의 이해 : System Bufferring
KB-213A 보상교체 블랙박스 간단 사용설명서 ㈜태건 고객센터 : 뷰어 프로그램 바탕화면 설치 방법
12월 KB손해보험 설계사 시상 Ⅱ. 전략상품 FC 주차시상<닥플(연만기),아이좋은자녀,운전자보험>
(제작자: 임현수)모둠:임현수,유시연,유한민
천국 가는 길 천국 가는 길 ♧ 천국 가는 길 ♧ 1. 죄와 사망(지옥) 1) 사람의 3가지 공통점 - 죄인, 죽음, 심판
화 일 구 조 Chapter 3 화일의 입출력 제어.
성전기공식(안) 식 순 1. 기공미사 2. 기 공 식 3. 축 하 연 천주교 수원교구 퇴촌성당.
홈페이지 제안서
㈜홍길동 웹사이트 구축 진행 계획서 견적서 포함 일레븐 제공.
소리가 작으면 이어폰 사용 권장!.
3장 파일 다루기 한빛미디어(주).
2019. 학생인문독서연구회 READ TOGETHER 책모임 안내 모임 구성 및 신청서 작성 후 제출!!! * 제출일
KB스타 경제·금융교실 화폐가 태어났어요.
가상 기억장치 (Virtual Memory)
Presentation transcript:

Unix Project-Final <test character device 생성> 041510김준한 041513 김태양 041466 김동철

발표순서 프로젝트 개요 및 개발 환경 역할 분배 프로젝트 상세 설명 – my_dev.c 프로젝트 상세 설명 – my_app.c 결과물과 실행이미지 문제점과 해결

개요 및 개발 환경 kernel 모듈 작성 open, read, write, close, ioctl, lseek 개요 및 개발 환경 kernel 모듈 작성 open, read, write, close, ioctl, lseek 각각의 모듈을 test device내에서 user program을 사용하여 실험 I/O는 512B, 1KB, 4KB의 블록 단위로 수행이 되도록 하여 1M의 데이터를 write/read 하기 위한 시간을 측정 개발 환경 : Vmware + Fedora 11 (Linux Kernel 2.6)

멤버들의 작업분배 공통 : 코드 작성 및 분석 041513 김태양 - Uesr program , 발표 및 발표자료 작성 041510 김준한 - Device program , 시간측정 041466 김동철 - Device program , 자료 수집

My_dev.c Open, write, read 부분의 구현. Copy_to_user() -커널 메모리 블록 데이터를 사용자 메모리 블록 데이터에 써넣는 기능. Copy_from_user() - 사용자 메모리 블럭데이터를 사용자 메모리 블록 데이터에 써넣는 기능

My_dev.c- open() Insmod 에서 블럭단위로 데이터를 이용하기 위해 Buffer size 변수를 선언.

My_dev.c- read() 입력받은 버퍼의 사이즈만큼 User 메모리에 옮겨쓰기위한 순환문. 512k의 경우 [0-512],[513-1024] 순으로 블록데이터가 이동. Read 명령수행이 완료된 시에 “read success” 메시지와 카운트수 출력.

My_dev.c- write() Read ()와 마찬가지로 입력 받은 버퍼의 사이즈만큼 User 메모리에 옮겨 쓰기 위한 순환문. Read 명령수행이 완료된 시에 “read success” 메시지와 카운트수 출력.

My_dev.c-

My_app.c- time측정 Timeb 함수를 써서 소수점이하 세째자리까지 시간을 측정.

My_app.c- main() Buff사이즈를 동적으로 할당 받아서 사용 구현 중 16MB 일때는 실행이 안되는 오류가 있었음. read(), write() 함수 전후로 시간을 측정하여 copy 되는 시간을 측정.

실행 image

실행 image Open, read, write의 성공 Read , Write 의 수행 시간 측정 성공 Count 의 증가와 success 메시지 출력완료.

프로젝트중 문제점과 해결 메모리를 동적으로 할당받때 일정 범위를 넘어가면 에러가 발생. 시간 측정 시 할당받은 메모리가 많지 않아서 정확한 측정 불가 -> timeb 를 사용하여 소수점이하 셋째 자리까지 출력함.