PA for SWE2007

Similar documents
PA for SWE2007

PA for SWE2007

ISP and CodeVisionAVR C Compiler.hwp

PA0 for SSE2033

Microsoft PowerPoint Android-SDK설치.HelloAndroid(1.0h).pptx

Microsoft PowerPoint SDK설치.HelloAndroid(1.5h).pptx

untitled

Mango-IMX6Q mfgtool을 이용한 이미지 Write하기

임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과

PA for SWE2007

PowerPoint 프레젠테이션

6주차.key

서현수

Analytics > Log & Crash Search > Unity ios SDK [Deprecated] Log & Crash Unity ios SDK. TOAST SDK. Log & Crash Unity SDK Log & Crash Search. Log & Cras

임베디드시스템설계강의자료 6 system call 1/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과

Assign an IP Address and Access the Video Stream - Installation Guide

DE1-SoC Board

Abstract View of System Components

Microsoft PowerPoint - 11주차_Android_GoogleMap.ppt [호환 모드]

PowerPoint 프레젠테이션

InsertColumnNonNullableError(#colName) 에해당하는메시지출력 존재하지않는컬럼에값을삽입하려고할경우, InsertColumnExistenceError(#colName) 에해당하는메시지출력 실행결과가 primary key 제약에위배된다면, Ins

임베디드시스템설계강의자료 4 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과

C. KHU-EE xmega Board 에서는 Button 을 2 개만사용하기때문에 GPIO_PUSH_BUTTON_2 과 GPIO_PUSH_BUTTON_3 define 을 Comment 처리 한다. D. AT45DBX 도사용하지않기때문에 Comment 처리한다. E.

untitled

슬라이드 1

PowerPoint 프레젠테이션

지난시간에... 우리는 kernel compile을위하여 cross compile 환경을구축했음. UBUNTU 12.04에서 arm-2009q3를사용하여 간단한 c source를빌드함. 한번은 intel CPU를위한 gcc로, 한번은 ARM CPU를위한 gcc로. AR

Microsoft PowerPoint - 02_Linux_Fedora_Core_8_Vmware_Installation [호환 모드]

PathEye 공식 블로그 다운로드 받으세요!! 지속적으로 업그래이드 됩니다. 여러분의 의견을 주시면 개발에 반영하겠 습니다.

학습목차 2.1 다차원배열이란 차원배열의주소와값의참조

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

OM2M 기반의 OHP-M2M 오픈소스설치가이드 2015 년 8 월 경북대학교통신프로토콜연구실 최예찬, 강형우 요약 사물인터넷 (Internet of Things: IoT) 이이슈가되면서다양한사

2009 April

204

종합물가정보 2016년 4월호

005- 4¿ùc03ÖÁ¾š

鍮뚮┰硫붾돱??李⑤낯

슬라이드 1

KEY 디바이스 드라이버

Clover 부트로더를 이용한 해킨토시 설치방법

/chroot/lib/ /chroot/etc/

Copyright 2012, Oracle and/or its affiliates. All rights reserved.,.,,,,,,,,,,,,.,...,. U.S. GOVERNMENT END USERS. Oracle programs, including any oper

Mango220 Android How to compile and Transfer image to Target

Çмú´ëȸ¿Ï¼º

2012³â8¿ùÈ£˙ȸš

untitled

Microsoft PowerPoint - lab14.pptx

MPLAB C18 C

PowerPoint Presentation

¨ìÃÊÁ¡2

Convenience Timetable Design

<4D F736F F F696E74202D20B8AEB4AABDBA20BFC0B7F920C3B3B8AEC7CFB1E22E BC8A3C8AF20B8F0B5E55D>

강의 자료

PowerPoint 프레젠테이션

C 언어 프로그래밊 과제 풀이

Install stm32cubemx and st-link utility

Microsoft Word - 3부A windows 환경 IVF + visual studio.doc

1217 WebTrafMon II

Mobile Service > IAP > Android SDK [ ] IAP SDK TOAST SDK. IAP SDK. Android Studio IDE Android SDK Version (API Level 10). Name Reference V

(SW3704) Gingerbread Source Build & Working Guide

06Àå

을풀면된다. 2. JDK 설치 JDK 는 Sun Developer Network 의 Java( 혹은 에서 Download > JavaSE 에서 JDK 6 Update xx 를선택하면설치파일을

SBR-100S User Manual

스마트월드캠퍼스 교육교제

01장

Microsoft PowerPoint - Chapter_02-1_DevEnv.pptx

아이콘의 정의 본 사용자 설명서에서는 다음 아이콘을 사용합니다. 참고 참고는 발생할 수 있는 상황에 대처하는 방법을 알려 주거나 다른 기능과 함께 작동하는 방법에 대한 요령을 제공합니다. 상표 Brother 로고는 Brother Industries, Ltd.의 등록 상

매력적인 맥/iOS 개발 환경 그림 A-1 변경 사항 확인창 Validate Setting... 항목을 고르면 된다. 프로젝트 편집기를 선택했을 때 화면 아 래쪽에 있는 동일한 Validate Settings... 버튼을 클릭해도 된다. 이슈 내비게이터 목록에서 변경할

Remote UI Guide

PowerPoint 프레젠테이션

PRO1_02E [읽기 전용]

Microsoft PowerPoint - IP11.pptx

( )부록

manual pdfÃÖÁ¾

Eclipse 와 Firefox 를이용한 Javascript 개발 발표자 : 문경대 11 년 10 월 26 일수요일

K&R2 Reference Manual 번역본

Microsoft PowerPoint - es-arduino-lecture-03

금오공대 컴퓨터공학전공 강의자료

NX1000_Ver1.1

본 강의에 들어가기 전

untitled

chapter4

Apache install guide

ePapyrus PDF Document

USB 케이블만을이용한리눅스 NFS 개발환경 (VirtualBox) 최초작성 : 2010 년 10 월 21 일 작성자 : 김정현 수정내용 최초작성 by 김정현 스크립트추가, 설명보충 by 유형목 1. VritualBox

ETL_project_best_practice1.ppt

Network Security - Wired Sniffing 실습 ICNS Lab. Kyung Hee University

Microsoft PowerPoint - chap01-C언어개요.pptx

Microsoft PowerPoint APUE(Intro).ppt

금오공대 컴퓨터공학전공 강의자료

NTD36HD Manual

슬라이드 1

Microsoft Word - src.doc

1

TTA Journal No.157_서체변경.indd

ABC 11장

<4D F736F F F696E74202D20C1A632C0E520C7C1B7CEB1D7B7A5B0B3B9DFB0FAC1A4>

목차 윈도우드라이버 1. 매뉴얼안내 운영체제 (OS) 환경 윈도우드라이버준비 윈도우드라이버설치 Windows XP/Server 2003 에서설치 Serial 또는 Parallel 포트의경우.

PowerPoint Presentation

Transcription:

CSE3047-41: Operating System Practice (Spring 2016) Programming Assignment #2: 1. Introduction Due: 18th April. (Mon), 11:59 PM I-Campus 과제내용을필히확인하세요. 이번과제에서는 Linux kernel 에새로운 system call 을추가하고, Tizen native application 을이용 하여해당 system call 을호출하는실습을진행한다. 본과제를통하여학생들은 Linux system call 에대한전반적인이해를할수있다. 2. Problem specification 2.1 Linux kernel을수정하여 print_hello System Call 만들기 (Practice 2) Tizen Linux kernel의소스코드를수정하여 print_hello system call을추가한다. Kernel의소스코드를수정하고나면, 코드를빌드하여 kernel image를만든다. 만들어진 kernel image는 Tizen Z3 폰에적용한다. 이때, sys_print_hello() 의 printk() 내용에는강의자료의예시를따르지말고본인이한것임을증명할수있도록학번 / 이름등의고유한문자열을덧붙여삽입한다. ( 주의!) #include <linux/linkage.h> #include <linux/kernel.h> asmlinkage long sys_print_hello(int value) { const int answer = 10; printk(kern_emerg "Hello world: %d 2016123456 Gyeonghwan Hong\n", value); if(value == answer) { return 1; // answer } else { return -1; // error } } System call을추가하는방법은 6주차강의자료의 Practice 2(10쪽 ~13쪽 ) 을참고하며, kernel image를빌드하고 Tizen Z3에적용하는방법은 1번째과제와같은방법으로하면된다. 2.2. SystemCallApp 을수정하여 print_hello System Call 호출하기 (Practice 3) SystemCallApp 은이번 6주차수업시간에제공한 Tizen application template으로, system call 호출부분은구현되지않은상태다. SystemCallApp의소스코드를다운로드하고, Section 2.1에서만든 print_hello system call을호출하도록수정한다. 수정된 SystemCallApp 소스코드를빌드하

고, Tizen Z3폰에서구동시킨다. System call을호출하는방법은 6주차강의자료의 Practice 2(14쪽 ) 을참고한다. Tizen Application 을빌드하고 Tizen Z3폰에서구동시키는방법은 2주차강의자료를참고한다. SystemCallApp 은아래 Github 주소로접속하여다운로드할수있다. https://github.com/skku-eslab-tizen/systemcallapp 2.3. SystemCallApp 이 print_hello System Call 을호출할때, Tizen Z3 의화면찍기 Section 2.1 과 Section 2.2 를모두수행한후, 실제 Tizen Z3 장치에서 SystemCallApp 이 print_hello system call 을호출하는 팝업창 장면을사진으로찍는다. 2.4. SystemCallApp 이 print_hello System Call을호출할때, dmesg 화면찍기 Section 2.3을수행한후, Tizen Z3 장치에 USB로연결하여 dmesg를확인한다. printk로인해 Hello world 문자열과 user application에서전송한 value, 고유문자열 ( 학번 / 이름 ) 이출력되는장면을찍는다. 과제 1과같은방법으로 dmesg를확인하면된다. 3. Notes 3.1 Tizen IDE 에서 Application 빌드시 Security Profile 문제가발생한경우 Tizen IDE 에서 Application 빌드시, 아래와가은 Security Profile 문제가발생할수있다. 이경우에는, 아래와같이 Preferences 메뉴의 Tizen SDK Security Profile 에서 Add 버튼을선 택하여 profile 을새로만들고, Generate 버튼을선택하여 author certificate 를만든다.

Profile 과 author certificate 를만들때표시되는폼에는아무값이나입력해도된다. 이후, Apply 버튼과 OK 버튼을선택하여인증서를저장한다. 해당 certificate 설정은개발자용모드로설정된 Tizen Z3 에서만사용가능하며, 다른상용 Tizen 장치에서는다른방법을사용하여야한다. 3.2 SystemCallApp 을 Tizen IDE 에불러오는방법 Tizen IDE 의상단메뉴에서 File Import 를선택한후, Tizen Tizen Project 를선택한다. 그후, SystemCallApp 소스코드가다운로드된경로를선택하여 Tizen IDE 에불러온다.

3.3 커널이미지이동시주의사항커널을빌드한후빌드결과이미지인 dzimage파일은 arch/arm/boot/ 에생성된다. 본파일을 SD Card에복사할때에간혹 SD Card안의기존 dzimage가교체가되지않는경우가생기므로 SD Card 내부의 dzimage를다음과같은명령어로지우고복사한다. $sudo rm mnt/dzimage $sudo cp arch/arm/boot/dzimage mnt/dzimage 3.4 sdb 사용시주의사항 sdb는 Samsung Debug Bridge의약자로 USB로연결된스마트폰에접속해여러명령들을수행하게해주는 Tool이다. 따라서 SDB를설치하기위해서필요한것은다음과같다. Tizen Emulator Samsung Generic USB Driver Tizen Emulator의경우 http://tizen.org 를통하여 Download가가능하며 Samsung generic USB driver의경우 Google 검색, 혹은본수업웹사이트를통하여다운로드가가능하다. 두가지를설치했다면 sdb가설치된위치 ( 기본 :C:\tizen-sdk\tools) 에이동하여 sdb를사용할수있다. Target offline 이라는오류가뜰경우는대부분스마트폰을재부팅하였을때이다. 이때는아직 sdb가스마트폰의전원이켜졌다는사실을인지하지못한경우이므로재부팅후에는항상 USB를재연결하여 sdb가전원이켜진 Device가연결되어있는것을인식하도록하자. Windows cmd에서사용가능한기타 SDB 명령어는다음과같다. > sdb root on Root 모드로변경 > sdb shell Shell Terminal 로접속 > sdb devices 연결된 Device 검색및상태확인 > sdb kill-server sdb 데몬종료 > sdb start-server sdb 데몬실행일반적으로 Target offline의경우 sdb daemon 을재시작하는것으로해결가능하다. Killserver와 start-server를순차적으로사용 3.5 dmesg를했는데도본인이입력한문자열출력이되지않는경우 dmesg의 printk() 로입력한문자열을특정 Memory에저장한다. 해당 Memory 버퍼가가득찰경우, 시스템은오래된 Log Message를제거하는데우리가입력한문자열은 priority가낮으므로오랜시간이지나거나 dmesg를통해한번출력이된경우지워질수있다. 이때에는폰을재부팅한후, 빠르게 dmesg grep을사용하여 Log를확인하면정상적으로확인되는것을볼수있다. 4. Restrictions 가능한모든방법을사용해도좋다.

5. Hand in instruction 본과제수행시구현방법과디자인을설명하고, SystemCallApp 이동작할때의 Tizen Z3 화면사진과 dmesg 화면사진을포함한보고서를 PDF 포맷으로작성하여 " 학번.pdf" 이란이름을붙인다. ( 가능하면 PDF가가장좋지만, 대중적인문서포맷은다른포맷도괜찮음 ) 과제를제출하기위해 I-Campus를이용하거나 I-Campus 이용이불가할경우, 다음과같은제목으로 redcarrottt@gmail.com으로메일을보낸다. [CSE3047-41] PA #2, 학번, 이름 6. Logistics 본과제는혼자수행한다. 과제제출시간은메일도착시간을기준으로하며, 과제를지연제출하면기한직후엔 10% 가감점되고, 매 24시간마다 10% 씩추가로감점된다. 감점폭이 50% 를초과하는순간부터더이상제출을받지않는다. 다른사람의과제를 copy할경우, 개입한사람전부해당과제에대해 0점처리되고, 교수님께보고되며, 성적산정에불이익이있다. 또한, copy가적발될경우 F학점이부여될수있다. Have fun! 홍경환, 담당조교 임베디드소프트웨어연구실