목차 임베디드 시스템의 이해 임베디드 리눅스 임베디드 시스템 개발 구조 및 환경.

Slides:



Advertisements
Similar presentations
을지대학교 무선 네트워크 사용 방법 2010 년 06 월 01 일. 을지대학교 무선 네트워크 사용 방법 1. PC 무선랜 카드 활성화 및 체크 1 단계 : 시작 -> 설정 -> 네트워크 설정 2 단계 : 무선 네트워크 설정 선택 -> 마우스 버튼 오른쪽 클릭 -> 사용.
Advertisements

Data Communication/Computer Network 관련 교과목의 내용
Big Data & Hadoop. 1. Data Type by Sectors Expected Value using Big Data.
전산팀 업무보고 ► 보고일 :2016 년 5 월 24 일 ( 화 ) 1. PC 세부사양서 구분세부사양수량 ( 대 ) PC 제조사 : 삼성, HP ( 조립 PC 제외 ) 운영체제 : Windows 7 Pro 64bit 이상 CPU : Intel i5 6 세대 3.2Ghz(
1)RACK 2)UPS 3)P D U 장치 4)Server Group 5)KVM Switch 7)UPS 를 위한 HUB 6) RACK Monitor.
임베디드 시스템 (Embedded System)
컴퓨터는 어떻게 동작?.
컴퓨터와 인터넷.
컴퓨터 운영체제의 역사 손용범.
목 차 C# 언어 특징 .NET 프레임워크 C# 콘솔 프로그램 C# 윈도우 프로그램 실습 프로그래밍세미나 2.
네트워크 기술을 통한 현재와 미래 소개.
임베디드 SW 시스템 소개 - 임베디드 운영체제 - 임베디드 리눅스 - 임베디드 인터넷
자바실험실 이동준 우리 곁으로 다가온 사물 컴퓨팅 자바실험실 이동준.
1. Windows Server 2003의 역사 개인용 Windows의 발전 과정
Windows Server 장. Windows Server 2008 개요.
Cross Compiler를이용한 커널 컴파일 및 포팅
Cross Compiler를이용한 커널 컴파일 및 포팅 1
UNIT 01 마이크로 프로세서 개론 로봇 SW 교육원 조용수.
임베디드 시스템 (Embedded System).
시스템집적반도체 설계 검증 환경과 기법 Ch 7.
장 비 사 양 서 제품특징 제품사양 제조국 브랜드 AVID 모 델 E3 품 명 DIGITAL AUDIO MIXER
임베디드 시스템.
UNIT 06 JTAG Debugger 로봇 SW 교육원 조용수.
갤럭시 S를 이용한 자동차 원격 제어 시스템 담당교수 : 진현욱 교수님
임베디드 시스템 개론 크로스 플랫폼 설치 2일차 강의 자료 Embedded System Lab.
UNIT 07 Memory Map 로봇 SW 교육원 조용수.
Linux서버를 이용한 채팅프로그램 지도 교수님 : 이형원 교수님 이 름 : 이 은 영 학 번 :
07. 디바이스 드라이버의 초기화와 종료 김진홍
CHAPTER 02 OpenCV 개요 PART 01 영상 처리 개요 및 OpenCV 소개.
Root Filesystem Porting
임베디드 소프트웨어 동향. 임베디드 소프트웨어 동향 임베디드 S/W 시장분류 솔루션 측면 시스템 측면 운영체제 개발도구 설계도구 테스트도구 유선통신 무선통신 정보가전 자동차제어 산업자동화 사무자동화 군사/항공우주 의료장비 솔루션 공급 업체 임베디드 S/W시장 임베디드.
Root Filesystem Porting
리눅스 운영체제 운영체제 리눅스 소개 임베디드 리눅스 리눅스 명령어 한빛미디어(주).
                              데이터베이스 프로그래밍 (소프트웨어 개발 트랙)                               퍼스널 오라클 9i 인스톨.
WinCE Device Driver 실습 #3
WinCE Device Driver 실습 #2
Cross Compiler 설치.
뇌를 자극하는 Windows Server 장. Windows Server 2008 개요.
4. LAN의 배선체계 (3장. LAN: Local Area Network)
마이크로컨트롤러, 마이크로컨트롤러 보드 마이크로컨트롤러 보드 = 마이크로컨트롤러 +  마이크로컨트롤러 마이크로컨트롤러 보드.
임베디드 SW 시스템 소개 - 임베디드 운영체제 - 임베디드 리눅스 - 임베디드 인터넷
제 1장. 멀티미디어 시스템 개요.
Cross Compiler를이용한 커널 컴파일 및 포팅
P2P시스템에 대해서 (peer to peer)
디지털회로설계 (15주차) 17. 시프트 레지스터와 카운터 18. 멀티바이브레이터 * RAM & ROM.
플랫폼의 개념 클럭, 버스, 대역폭의 의미 64비트 PC
UNIT 07 Memory Map 로봇 SW 교육원 조용수.
리눅스 시스템 & 커널 기초 P.46 – P.53 이름: nsh009 학번: 112 1/20.
강의 개요. 2014년 가을학기 손시운 지도 교수: 문양세 교수님.
Device Driver 임베디드 시스템 I.
임베디드 시스템 개론 임베디드 타겟 보드 포팅 및 H/W 제어 3일차 강의 자료 Embedded System Lab.
Xscale Educational Kit
자율주행 차량용 드라이빙 컴퓨팅 하드웨어 플랫폼 05
Tiny OS와 NesC Tiny OS Part1. Won Mi Sun – 17 지능제어 연구실.
AUTODESK AUTOCAD ELECTRICAL 전기제어 2D 설계 소프트웨어 표준기반 설계 생산성 도구 구조도 설계
ATmega128의 특징 아이티즌 기술연구소
네트워크 환경 구축과 이미지 전송 호스트/타겟 통신 직렬 통신을 이용한 이미지 전송 수퍼 데몬 BOOTP 환경 구축
Kernel, Ramdisk, JFFS2 Porting
뇌를 자극하는 Solaris bible.
DK-128 개발환경 설정 아이티즌 기술연구소
Viewing Advanced Web Pages
AT MEGA 128 기초와 응용 I 기본적인 구조.
UNIT 02 Microprocessor 로봇 SW 교육원 조용수.
Map Designer Solution 소개자료
발표자 : 이지연 Programming Systems Lab.
임베디드 시스템 개론 3주차.
Installation Guide.
1장 C 언어의 개요 C 언어의 역사와 기원 C 언어의 특징 프로그램 과정 C 프로그램 구조 C 프로그램 예제.
TCP/IP를 이용한 마우스 공유 (Synergy 따라하기)
Windows XP Professional 장점
Presentation transcript:

목차 임베디드 시스템의 이해 임베디드 리눅스 임베디드 시스템 개발 구조 및 환경

임베디드 시스템의 이해 임베디드 시스템이란 정해진 특정 기능을 수행하기 위해 하드웨어와 소프트웨어가 내장된 전자제어 시스템을 말한다. 즉 단순 회로만으로 구성된 장치가 아닌 마이크로 프로세서가 내장되어 있고, 이것을 운영하여 원하는 작업을 수행 및 관리하는 프로그램이 포함된 시스템을 의미한다. “컴퓨터 하드웨어와 소프트웨어가 조합되어 특정한 목적을 수행하는 시스템” H/W : 마이크로프로세서/컨트롤러, 메모리, 센서, 구동기 등 S/W : OS, 디바이스 드라이버, 응용프로그램, 네트워크 응용 등 마이크로 컨트롤러 :마이크로 프로세서와 I/O 장치를 하나의 칩에 집적시켜 각종제어들에 유용하게 활용될 수 있도록 만든 칩 마이크로 프로세서 : 컴퓨터의 연산장치와 제어장치를 1개의 작은 실리콘 칩에 집적시킨 처리장치

임베디드 시스템의 이해 임베디드 시스템의 특징 하드웨어 소프트웨어 가격 안정성 실시간성 마이크로프로세스 메모리 주변장치 임베디드 시스템을 구성하는 가장 중요한 하드웨어 구성요소 주로 8비트/16비트/32비트 CPU를 탑재 메모리 램, 롬, 플래시 메모리 소프트웨어를 내장하고 있거나 소프트웨어를 실행하는 공간을 마련 주변장치 PC에서의 입출력 장치 : 키보드와 마우스 임베디드 시스템 입력 장치 : 센서, 버튼, 다이얼 등 출력 장치 : 소형 LCD, 사람의 목소리나 음악, 통신 신호등 소프트웨어 하드웨어와 밀접한 연관이 있기 때문에, CPU가 동일하더라도 환경이 조금만 달라지면 동작하지 않는다. 가격 PC는 현재 나온 최신 기술을 모두 적용하는 동시에 확장성까지 고려하여 많은 기능을 추가하지만, 임베디드 시스템은 꼭 필요한 기능 이외에 기능은 추가하지 않는다. 안정성 나쁜 기후 조건에서도 동작을 해야 하고 정밀한 동작을 보장해야 한다. 실시간성 작은 오차가 누적되면 시스템에 영향을 미치기 때문에 실시간으로 자료를 처리해야한다. 메모리 마이크로프로세스 내부에 램이나 플래시가 들어있는 제품도 있지만, 그렇지 않은 제품이거나 기억장소가 더 많이 필요해 외부에 램이나 플래시를 달아야하는 경우도 있다. 주변장치 : 버튼을 누르면 음악이 나오는 어린이용 장난감에서 생각해보면 입/출력 장치를 이해하기 쉬울 것이다. 한마디로 임베디드 시스템을 구성하는 주변 장치는 찬차만별이다. 소프트웨어 : 일반 PC에서 동작하는 소프트웨어는 여기저기 옮겨져도 특별한 상황이 아닌 이상 잘 동작하지만 임베디드 소프트웨어는 그렇지 않다. 메모리 크기만 바뀌어도 pc는 이상없이 돌아가지만 임베디드 장비는 동작하지 않는다. 안정성 : PC는 집혹은 사무실과 같은 좋은 환경에서 운영하지만, 임베디드 시스템은 저온/고온/고습등의 기후에도 동작을 해야한다. 기온이 영하로 떨어졌다고 전화기가 동작하지 않는다거나 여름이라 자동차의 시동이 걸리지 않고 엔진제어가 불가능하다면 제품 자체를 판매할 수 없다. MRI나 라식 수술과 같은 의료장비는 조금만 잘못되면 인명피해가 날 수 있으므로, 정밀한 동작을 보장해야한다. 실시간성 : 미사일 유도 시스템은 주변 지형에 따른 즉각적인 판단 기능에 의존한다. 작은 오차가 누적되면 큰 오차를 낳기 때문에 실시간으로 자료를 처리해야한다.

임베디드 시스템의 이해 임베디드 소프트웨어 정의 특징 임베디드 소프트웨어는 주로 하드웨어를 제어하기 위한 임베디드 시스템에 들어가는 명령어 집합으로 하드웨어를 제어하고, 하드웨어 운영에 필요한 정보를 사용자에게 보여주고 사용자로부터 받는 역할을 한다. 센서와 통신 장비를 통해 들어오는 외부 자극을 처리하는 사건 구동 방식으로 동작하는 특성이 있으며, 작은 메모리와 비교적 느린 CPU에서 동작하도록 구현한다. 특징 크기 일반적으로 크기가 작다. 호환성 호환성 측면에서는 0점 특수성 특수 작업을 위해서 소프트웨어를 개발 실시간성 센서나 기계를 제어하는 임베디드 소프트웨어는 실시간성이 매우 중요 사용자 인터페이스 기계를 제어하는데 필요한 최소 정보만 보여주고 최소 입력만 받을 수 있어야 하기 때문에 사용자 인터페이스가 제한적 크기 8비트 CPU로 제어할 수 있는 메모리 공간은 보통 64KByte정도이고 가장 대표적인 그래픽 툴킷인 Qt 임베디드는 라이브러리 크기만 800KByte가 넘는다. 호환성 각기 다른 하드웨어를 지원해야 하므로 인터럽트,DMA,I/O를 처리하는 최적화 코드를 사용한다.프로토콜(RS-232(직렬),IrDA(적외선))은 표준화 작업으로 인해서 호환성이 높은편이다. 사용자 인터페이스 공유기의 경우 사용자 인터페이스로 웹을 사용한다.

임베디드 시스템의 이해 임베디드 시스템 응용 분야 정보가전 가정자동화(HA : Home Automation) 인터넷 냉장고, HDTV, 인터넷 전자레인지, DVR, 세탁기 등 가정자동화(HA : Home Automation) 공장자동화(FA : Factory Automation) 정보단말기기 핸드폰, PDA, 스마트폰, MP3 플레이어, 게임기기 등 통신기기 디지털 교환기, 라우터, 게이트웨이, 공유기, Set-top Box 항공기/우주왕복선 물류/금융 물류 : POS(Point Of Sale) 단말기 금융 : 자동 현금 입출금기 혹은 ATM 단말기 사무용기기/의료 프린터, 스캐너, 팩스, 복사기, 이들의 기능을 하나로 모은 복합기 등

임베디드 리눅스 임베디드 시스템에서 OS가 필요한 이유 임베디드 시스템에 사용되는 OS 시스템의 규모가 커짐 “기존의 시스템 고유 기능 + Network + Multimedia” 기능이 하나의 시스템으로 구성 되어지고 있다. 순차적인 프로그램이 어렵게 됨 빠른 개발과 유지 보수의 필요성 새로운 요구 상황에 맞게 프로그램을 수정, 다운로딩이 용이 새롭게 생겨나는 고품질의 창조형 서비스를 적시에 제공하기 위해 임베디드 시스템에 사용되는 OS Real Time OS VxWorks pSOS VRTX 일반 임베디드 OS Embeded linux Windows CE, Mobile, XP embedded 등 Embeded java

임베디드 리눅스 임베디드 리눅스란 임베디드 리눅스의 특성 저 성능의 프로세서와 소용량의 메모리를 가진 임베디드 시스템용으로 개발된 리눅스이다. 임베디드 리눅스의 특성 리눅스 자체의 크기와 기능을 최소화, 경량화 됨. 목표로 하는 시스템에 맞게 쉽게 재구성이 가능하다. 임베디드 리눅스의 성능이 최적화되어있다.

임베디드 리눅스 기존 상용 임베디드 OS의 단점 임베디드 리눅스의 장점 크기가 너무 크고 커널의 재구성이 비교적 용이하지 않다. 다양한 시스템을 구성하기 힘들다. 이동형 장비의 자원 한계의 벽에 이루기가 쉽다. 초기 구입비와 사용료(로열티)가 너무 비싸다. 대중화 상용화에 걸림돌이 될 수 있다. 커널이 오픈 소스가 아니다. 개발자도 한 사람의 사용자, OS에 대한 기술 축적불가 일반인에게 잘 알려져 있지 않다. 임베디드 리눅스의 장점 리눅스는 오래되고 많은 사람이 사용한다. 검증이 되었고, 안정적이고 다양한 기능을 수용 할 수 있다. open source, open architecture이다. 수많은 개발자에 의하여 발전된다. 개발자 필요에 의하여 변경 가능하며 문제점 해결 할 수 있다. 소규모 모듈단위로 설계되어 있다 구조 변경 및 재구성이 용이하다. Real Time운영을 지원한다. 상용 OS에 열세였던 Real Time성을 확보 하여 다양한 분야에 적용 가능하다.

임베디드 시스템 개발 구조 및 환경 임베디드 시스템 개발 구조 임베디드 시스템의 개발은 크게 3가지의 독립된 분야가 유기적으로 결합되어 있다. 임베디드 시스템 개발 임베디드 소프트웨어 개발 OS개발 또는 포팅 디바이스 드라이버 개발 하드웨어 개발

임베디드 시스템 개발 구조 및 환경 TARGET HOST 일반적인 임베디드 S/W 개발 환경 구성 Target Server LAN GUI Development Tools Target Server Debug Agent Embeded Application Serial Library Sub-system Core OS JTAG Simulation Environment Kernel

임베디드 시스템 개발 구조 및 환경 호스트 PC(Linux)의 기본 프로그램 Cross Compiler ToolChain 호스트 컴퓨터와 타겟 보드(EMPOSII)에서 사용하는 프로세서가 다를 경우 타겟 보드에서 실행될 수 있도록 프로그램을 컴파일해주는 툴체인 JTAG 프로그램 호스트 컴퓨터에서 타겟 보드의 Flash ROM에 프로그램(부트로더)을 다운로딩하는 프로그램 (퓨징 작업) Terminal 프로그램 타겟 보드에서 일어나는 진행 상황을 호스트 컴퓨터에서 볼 수 있도록 모니터링 할 수 있는 통신 프로그램 타겟 보드에 명령을 입력할 수 있는 통신 프로그램 minicom (Linux) Hyper Terminal (MS Windows) bootp, tftp, nfs service 호스트 컴퓨터와 타겟 보드 사이의 통신을 원할 하게 해주는 응용 프로그램

임베디드 시스템 개발 구조 및 환경 타겟보드(XM-Bulverde)의 기본 프로그램 Bootloader Linux Kernel 타겟 보드 부팅시 하드웨어를 초기화하고, 커널을 램에 올린 후 실행권한을 커널로 전달하는 프로그램 Linux Kernel 타겟 보드의 시스템(Linux) 구동에 필요한 환경을 만들고 타겟 보드 상에서 수행되는 자원을 관리하는 소프트웨어 File System 파일 시스템은 파일을 디스크나 기타 미디어에 저장하는 방식과 그에 연관된 연산(operation)및 자료 구조를 포괄적으로 포함 ext2, jffs2 Device Driver 주변 하드웨어를 제어하기 위한 프로그램 Application GPS, tcpdump, MediaPlayer 등