<4D F736F F F696E74202D20322DBDC7BDC3B0A320BFEEBFB5C3BCC1A6>

Similar documents
ESP1ºÎ-04

untitled

6주차.key

Microsoft PowerPoint - Introduction.pptx

08 KRS R1.hwp

제11장 프로세스와 쓰레드

MDS 08.indd

<4D F736F F F696E74202D20BBE7BABB202D204F DC7C1B7CEBCBCBDBA20BDBAC4C9C1D9B8B528BAF1BCB1C1A12CBCB1C1A1292E707074>

Chapter ...

Here is a "PLDWorld.com"... // EXCALIBUR... // Additional Resources // µc/os-ii... Page 1 of 23 Additional Resources: µc/os-ii Author: Source: HiTEL D

10주차.key

운영체제란? PC를구입하면 Windows XP, Windows 7, Linux, MS-DOS Mac OSX, ios 운영체제 : Operating System 운영체제가없는컴퓨터? 컴퓨터 : 프로세서와메모리 전원을켜면어떤일이? 휘발성메모리 - 야생마 프로그램을실행하려면

[로플랫]표준상품소개서_(1.042)

슬라이드 1

105È£4fš

슬라이드 1

Microsoft PowerPoint - 30.ppt [호환 모드]

<4D F736F F F696E74202D C465F4B6F F6E662DB8AEB4AABDBABFA1BCADC0C7BDC7BDC3B0A3C1F6BFF8>

Microsoft Word _......_.doc

Microsoft PowerPoint - o6.pptx

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A634C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

2014밝고고운동요부르기-수정3

2005프로그램표지

006- 5¿ùc03ÖÁ¾T300çÃâ

170

학습목표 ü 01_ 소개 ü 02_ 스케줄링수준 ü 03_ 선점형 / 비선점형스케줄링 ü 04_ 우선순위 ü 05_ 스케줄링목적 ü 06_ 스케줄링기준 ü 07_ 스케줄링알고리즘 ü 08_ 데드라인스케줄링 ü 09_ 실시간스케줄링 ü 10_ 자바스레드스케줄링 2/23

리눅스 프로세스 관리

KEY 디바이스 드라이버

Microsoft PowerPoint - 03.OS.pptx

Abstract View of System Components

Chapter #01 Subject

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션

Microsoft Word doc

Deok9_Exploit Technique

PowerPoint 프레젠테이션

운영체제

Microsoft PowerPoint - StallingsOS6e-Chap06.ppt [호환 모드]

사용자수준의스레드 : 사용자의라이브러리에의해운영, 속도는빠르나, 구현이복잡하다. 커널수준의스레드 : 운영체제커널에의해운영, 속도는느리나, 구현이단순하다. 스케줄링 (Scheduling) 1) 스케줄링의정의 프로세스가생성되어실행될때필요한시스템의여러자원을해당프로세스에게할당

PowerPoint Template

<C1A4BAB8C3B3B8AE5FB1E2BBE75FC7CAB1E25F E687770>

JVM 메모리구조

<4D F736F F D20C3A520BCD2B0B32DC0CCB7B2B0C5B8E9B3AAB6FBBFD6B0E1C8A5C7DFBEEE322E646F63>

System Programming 리눅스시스템 프로그래밍 김정국지음 System Programming

工學碩士學位請求論文 실시간프로세스의최악응답시간 Predicting RT Process s Worst Case Response Time 2008 年 2 月 指導敎授崔源益 이論文을碩士學位請求論文으로提出함 仁荷大學校大學院 情報通信工學科 李東植

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

11장 포인터

<4D F736F F F696E74202D203137C0E55FBFACBDC0B9AEC1A6BCD6B7E7BCC72E707074>

기술 이력서 2.0

ATmega128

Microsoft PowerPoint - 15-MARS

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

Microsoft PowerPoint - 03-Development-Environment-2.ppt

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

Microsoft PowerPoint - o6.pptx

C++ Programming

Microsoft PowerPoint - CSharp-10-예외처리

Microsoft PowerPoint - ch09 - 연결형리스트, Stack, Queue와 응용 pm0100

<4D F736F F D20B0B3B9DFC8AFB0E65FB4D9BFEEB7CEB5E55FB5F0B9F6B1EBBCB3C1A42E646F63>

이번장에서학습할내용 동적메모리란? malloc() 와 calloc() 연결리스트 파일을이용하면보다많은데이터를유용하고지속적으로사용및관리할수있습니다. 2

Microsoft PowerPoint - o8.pptx

Microsoft PowerPoint - Lecture_Note_7.ppt [Compatibility Mode]

PCServerMgmt7

Abstract View of System Components

Microsoft PowerPoint - StallingsOS6e-Chap05.pptx

Chapter 4. LISTS


[Brochure] KOR_TunA

서현수

Microsoft PowerPoint - o6.pptx

Microsoft PowerPoint - o4.pptx

ADP-2480

¾Æ½Ã¾ÆÀú³Î8È£-ÅëÇÕ

7 프로시저가활동중인것 8 실행중인프로시저의제어궤적 9 CPU가할당되는실체 운영체제가관리하는최소단위작업 (2) 프로세스상태전이도 (3) 주요프로세스상태 1 준비 (Read) 상태 : 실행하기위해준비하고있는상태 2 실행 (Run) 상태 :

김기남_ATDC2016_160620_[키노트].key

1. 도구개요 STAF Testing 소개 각테스트대상분산환경에데몬을사용하여테스트대상프로그램을통해테스트를수행하고, 통합하며자동화하는 프레임워크 주요기능 테스트통합및자동화 카테고리 Testing 세부카테고리테스트설계및실행 커버리지 Test Integration / Aut

훈련교재 목록-내지-0520.indd

개발목표 프로젝트주제 상용게임기를이용한임베디드소프트웨어교육환경구성 프로젝트목표 닌텐도 DS와같은상용게임기하드웨어를이용하여마이크로프로세서또는임베디드소프트웨어교육실습을수행하기위한개발환경을구성 WIFI USB Serial Eclipse 상용게임기 ( 타겟시스템 ) PC (W

Microsoft PowerPoint - 11_Thread

슬라이드 1

歯Trap관련.PDF

GNU/Linux 1, GNU/Linux MS-DOS LOADLIN DOS-MBR LILO DOS-MBR LILO... 6

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D D382E687770>

DBPIA-NURIMEDIA

Microsoft Word - 임베디드월드_WindowsEmbeddedCompact7_rev

슬라이드 1

Microsoft PowerPoint - em8-리눅스설치.ppt

untitled

The Self-Managing Database : Automatic Health Monitoring and Alerting

Microsoft PowerPoint - chap03-변수와데이터형.pptx

DBPIA-NURIMEDIA

슬라이드 1

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

설계란 무엇인가?

슬라이드 1

Microsoft PowerPoint - StallingsOS6e-Chap03.ppt [호환 모드]

Microsoft PowerPoint - es-arduino-lecture-03

PowerPoint 프레젠테이션

좀비프로세스 2

PowerPoint 프레젠테이션

Transcription:

컴퓨터시스템구성 2. 실시간운영체제 1 2 운영체제의주요기능 프로세스관리 (Process management) 메모리관리 (Memory management) 인터럽트핸들링 (Interrupt handling) 예외처리 (Exception handling) 프로세스동기화 (Process synchronization) 프로세스스케쥴링 (Process scheduling) 디스크관리 (Disk management) 프로세스, 쓰레드, 태스크 프로세스 : 실행중인프로그램 쓰레드 : 같은주소공간을사용하는 가벼운 (lightweight) 프로세스 한프로세스내에여러쓰레드는전역변수, 정적변수, 파일식별자, 시그널, 코드영역, 힙영억등을공유한다. 하지만, 쓰레드는자신의상태, 프로그램카운터, 레지스터, 스택등을관리한다. 태스크는대부분쓰레드를의미한다. 3 4

RTOS 커널의주요기능 태스크관리 (Task management) 인터럽트핸들링 (Interrupt handling) 메모리관리 (Memory management) 예외처리 (Exception handling) 태스크동기화 (Task synchronization) 태스크스케쥴링 (Task scheduling) 시간관리 (Time management) 태스크 태스크 = 쓰레드 A sequential program in execution It may communicate with other tasks It may use system resources. 태스크에시간관리를위한데이터구조가필요하다. 5 6 태스크분류 태스크상태 마감시각에따라 경성태스크 연성태스크 주기에따라 주기적태스크 (Periodic tasks) 비주기적태스크 (Aperiodic or non-periodic tasks) 이벤트기반으로태스크의생성이일종의인터럽트로생성 산발성태스크 (Sporadic tasks) 비주기적태스크이나최소발생간격 (Interarrival time) T min 이주어진다. 즉, 한번발생하면적어도 T min 시간이후에발생가능 7 8

TCB (Task Control Block) 태스크관련정보를담고있는구조체 Id Task state Task type Priority Other task parameters Period Computing time Relative deadline Absolute deadline Context pointer Pointer to program code, data area, stack Pointer to resources Pointer to other TCBs 태스크관리 태스크관리임무 태스크생성 태스크종료 우선순위변경 RTOS 에서고려사항 태스크생성시, 메모리할당에걸리는지연시간최소 실시간태스크가사용하는메모리블록은메인메모리에상주하도록한다. (swapping 에의한지연시간때문 ) 실행도중에우선순위를바꾸는것은가급적제한한다. 9 10 인터럽트핸들링 인터럽트타입 비동기적인터럽트 ( 또는하드웨어인터럽트 ) : 일종의태스크로처리 동기적인터럽트 ( 또는소프트웨어인터럽트 ) : 인터럽트발생시키는태스크에서처리 RTOS 에서고려사항 인터럽트지연시간최소 인터럽트우선순위 순환적인터럽트 메모리관리 일반적메모리기법 블록기반, 페이징, RTOS 고려사항 경성실시간태스크에대해서는가상메모리사용금지 일반적으로임베디드시스템에서는메모리보호가안되므로주의 11 12

예외처리 예외예제 마감시각놓침, 메모리부족, 데드락 일반적인해결방법 각에러코드별시스템콜 Watch dog 결함포용 하지만, 모든경우를고려하기어려우므로 Modelling & Verification 연구가중요함. 태스크동기화 동기화도구 세마포어 (Semaphore) 뮤텍스 (Mutex) Spinlock Read/write locks Barrier RTOS 고려사항 Critical Section 의최대시간고려 Race condition 이발생하지않도록여러기법사용 Priority inversion 고려 13 14 태스크스케쥴링 스케쥴링알고리즘 READY 큐에여러가지우선순위를고려해서정렬 우선순위 (HPF) 실행시간 (SCF) 마감시각 (EDF) 도착시각 (FIFO) 스케쥴링알고리즘분류 선점 (Preemptive) vs. 비선점 (Non-preemptive) 오프라인 vs. 온라인 정적 vs. 동적 이벤트기반 (Event-driven) vs. 시간기반 (Time-driven) 태스크스케쥴링 일반적인스케쥴링 CPU 를어떻게효율적으로공유할지가우선 평균응답시간 평균처리량 평균대기시간 RTOS 고려사항 태스크들의실시간성을어떻게보장할것인지에초점 15 16

스케쥴링가능성 (Schedulability) 스케쥴링 주어진태스크들을어떤순서로실행할지정하는것 만약모든태스크의마감시각을맞출경우, feasible 하다라고말한다. 스케쥴링가능성 (Schedulable) 주어진태스크에대해서 feasible 스케쥴링이존재하면스케쥴링가능하다라고말한다. RTOS 의스케쥴링알고리즘은 Schedulability 를어떻게제공하는지가가장중요하다. 시간관리 고해상의하드웨어타이머필요 17 18 실시간운영체제 (RTOS) 기본정의 시간제약을갖는실시간시스템의구성을위한기본플랫폼을제공 예측가능한커널서비스 태스크의시간성을만족시킬수있는기능 성능 vs. 예측가능성 예측가능성이우선 소프트웨어개발환경으로개념이확장 RTOS 의구성요소 실시간커널 응용소프트웨어에예측가능한서비스제공 모든서비스의최악수행시간의최대값이제공되어야함 라이브러리 개발기간을단축하기위한상위레벨라이브러리 응용소프트웨어개발도구 기본개발툴 (IDE, 원격디버거등 ) 시스템이벤트모니터링툴등 19 20

실시간커널의속성 예측성 (Predictability) 성능 (Performance) 조립성 (Configurability) 유연성 (Flexibility) 커널구성상차이점 21 22 RTOS 분류 우선순위기반커널 응용프로그램들이우선순위기반으로스케쥴링된다. 대부분의상용커널 OSE, VxWorks, QNX, VRTX32, psos, 기존 OS 에실시간성확장 Real-time Linux, Real-time NT, Real-time Mach, 연구용 RT 커널 MARS, Spring, 실시간프로그래밍언어를위한시스템 Ada, Erlang, Real-Time Java, 23