slide1 n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
임베디드 리눅스 소개 PowerPoint Presentation
Download Presentation
임베디드 리눅스 소개

Loading in 2 Seconds...

play fullscreen
1 / 41

임베디드 리눅스 소개 - PowerPoint PPT Presentation


  • 354 Views
  • Uploaded on

임베디드 리눅스 소개. 목차. 임베디드 리눅스 리눅스 소개 임베디드 리눅스 소개 임베디드 리눅스의 전략적 가치 임베디드 리눅스의 한계 리눅스 버전 상태 임베디드 리눅스 개발자 주의 사항. 리눅스 커널 내부 구조. 리눅스 소개. 리눅스의 정의 리눅스의 탄생 리눅스의 발전 리눅스의 특징 리눅스 배포판들 리눅스의 미래 리눅스 구하기. 리눅스의 정의. 유닉스 (Unix) 타입의 운영체제 Linus Torvals 에 의해 그 커널이 최초로 개발됨

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about '임베디드 리눅스 소개' - tatyana-neal


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide2
목차
  • 임베디드 리눅스
    • 리눅스 소개
    • 임베디드 리눅스 소개
    • 임베디드 리눅스의 전략적 가치
    • 임베디드 리눅스의 한계
    • 리눅스 버전 상태
    • 임베디드 리눅스 개발자 주의 사항
slide4
리눅스 소개
  • 리눅스의 정의
  • 리눅스의 탄생
  • 리눅스의 발전
  • 리눅스의 특징
  • 리눅스 배포판들
  • 리눅스의 미래
  • 리눅스 구하기
slide5
리눅스의 정의
  • 유닉스(Unix) 타입의 운영체제
  • Linus Torvals에 의해 그 커널이 최초로 개발됨
  • 이후 전세계의 수많은 프로그래머들에 의해 지속적으로 개발됨
  • 초기는 서버용
  • 현재는 서버/데스크탑용
slide6
리눅스의 탄생
  • 1991년 리누즈 토발즈가 개인용 PC에서 멀티태스킹을 구현하기 위한 운영체제로서 개발.
  • 인터넷 상에 그 소스코드를 공개함으로써 수많은 프로그래머들이 새로운 기능을 보강하여 오늘날의 리눅스 체제를 갖춤.
slide7
유닉스의 등장
  • 유닉스 : 리눅스의 모태
  • 1969년 벨 연구소의 Ken Tompson에 의해 개발됨
  • 멀티유저/ 멀티태스킹이 가능
  • 초기 어셈블리 언어로 개발되었으나 C언어로 다시 작성됨
  • 이식성이 높은 운영체제
slide8
유닉스의 진화
  • 대학과 연구소에 소스코드를 공개
  • 1969년 버클리 대학에서 유닉스에 네트워크 기능을 보강한 BSD 버전을 개발
  • AT&T에서 System V 버전을 개발
  • Free BSD가 PC용으로 포팅됨
  • 이후 BSD와 System V는 유닉스의 가장 중요한 버전으로 이어져오고 있다.
slide9
리눅스의 탄생
  • 유닉스를 PC 버전으로 개발하려 노력
    • 마이크로소프트사의 제닉스
    • 앤드류 타넨바움의 미닉스
  • 리눅스
    • 유닉스 커널을 PC에서 사용 가능하게 함
    • 1991년 최초의 리눅스 0.01 버전이 개발됨
    • 리눅스 0.02 버전이 최초로 공개됨
    • 0.02 버전은 bash, gnu-make, gcc 등이 실행될 수 있을 정도였음
slide10
리눅스의 발전
  • 리누즈 토발즈
    • 리눅스 커널을 개발, 공개
    • 리눅스의 씨를 뿌린 사람
    • 리눅스의 아버지
  • 리처드 스톨만
    • Free Software Foundation 회장
    • 소프트웨어의 자유로운 공유와 배포를 주장
    • 리눅스라는 씨가 뿌려질 수 있는 환경을 개발
    • 리눅스의 성자
  • 인터넷
    • 인터넷을 통하여 수많은 프로그래머들이 리눅스 프로그램에 참여
    • 통합된 운영체제의 모습을 완성
    • 빠른 도약을 하게 된 배경
slide11
리눅스의 특징
  • 리눅스의 장점
    • 유닉스와 완벽하게 호환 가능
    • 공개 운영체제
    • 다른 PC 운영체제보다 안정적
    • 무료
    • 하드웨어의 기능을 효과적으로 사용
    • 강력한 네트웨크를 구축할 수 있게 함
    • 다양한 응용프로그램을 제공
    • 다중 작업이 가능
    • 인터넷의 모든 기능을 지원
slide12
리눅스의 특징
  • 리눅스의 단점
    • 공개 운영체제이기 때문에 문제점 발생시 보상받을 수 없음
    • 공개 운영체제이기 때문에 보안에 취약할 것이라는 선입관이 있다.
    • 리눅스 커널이 너무 자주, 너무 빨리 바뀐다.
slide13
리눅스 배포판들
  • 해외 배포판의 종류
    • 레드햇(Red Hat)
      • 레드햇 소프트웨어사에서 공급
      • 쉬운 인스톨러(RPM)와 관리 툴이 있다.
    • 슬렉웨어(Slackware)
      • 초창기의 배포판으로 패트릭 볼거딩이 개발하여 보급
      • 구조가 간결 : 내용을 파악하기 쉽다.
      • 패키지 관리가 쉽지 않다.
      • 설정이 에디터의 텍스트 파일을 다시 작성하는 방법으로 이루어 짐 : 초보자에게는 매우 어렵다.
    • 데비안 (Debian)
      • 데비안 프로젝트에 의해서 발전 : 다양한 개발자들이 참여
      • 패키지에 문제점이 발견되면 몇일 후에 바로 수정 패키지가 만들어져 보급됨
    • 리눅스-맨드레이크(Linux-Mandrake)
      • 다양한 그래픽 환경을 제공 : 친숙한 윈도우 환경을 제공
slide14
리눅스 배포판들
  • 한글 배포판의 종류
    • K 리눅스
      • 리눅스 인터내셔널에서 출시한 제품
      • 레드햇 기반
      • 한글 입력기 K-input, 인터넷을 통해 자동으로 소프트웨어를 업그레이드 해주는 K-linux 업데이트 인스톨러 제공
      • 트루타입 글꼴을 제공
    • 엑셀 리눅스
      • 레드햇 기반
      • KDE 환경을 기본 데스크탑으로 채용
      • 다양한 하드웨어 드라이버 지원과 한글화 작업
    • 알짜 리눅스
      • 기업을 위한 상용 버전으로 적합
      • 레드햇 기반, 아나콘다를 도입하여 한글화
slide15
리눅스 업체의 현황
  • 서버시장 중심에서 데스크탑, 노트북, PDA 시장으로 빠르게 확산
  • 소규모 리눅스 업체들이 적극적인 사업 진출을 위해 전략적 제휴나 합병에 가담
  • 벤처기업들이 인터넷 서버 시장에 진출
  • 유닉스나 NT 서버에 주력했던 중대형 컴퓨터 업체의 리눅스 대중화를 위한 지원이 증가
slide16
리눅스 구하기
  • 인터넷의 FTP와 BBS에서 메일을 통해 디스켓이나 CD-ROM 형태고 구할 수 있다.
  • 밀러링 사이트인 http://www.redhat.com/mirrors.html에서 자세한 정보를 얻을 수 있다.
2002 11
리눅스 현재(2002년 11월) 버전 상태
  • 안정 커널: 2.4.19
  • prepatch: 2.4.20-pre10
  • ac path: 2.4.20-pre10-ac2
  • 2.5 개발 트리

안정화 버전: 둘째자리가 짝수(예: 2.0.x, 2.2.x, 2.4.x)

개발 버전: 둘째자리가 홀수(예: 2.3.x, 2.5.x)

slide18

임베디드 리눅스

임베디드 리눅스란?

국내에서 개발 개발된 임베디드 리눅스

국외 임베디드 리눅스 개발 현황

임베디드 리눅스 개발의 한계와 해결책

slide19
임베디드 리눅스란?
  • 일반적인 상용 리눅스의 정의
    • 고성능 프로세서와 대용량 메모리를 장착하고 있는 범용 컴퓨터 시스템 용으로 개발된 리눅스
  • 임베디드 리눅스의 정의
    • 저성능 프로세서와 소용량의 메모리를 가진 임베디드 시스템 용으로 개발된 리눅스
slide20
임베디드 리눅스 소개
  • HPC, PDA, 핸드폰 등과 같은 모빌컴퓨팅 기기나 마이크로프로세서를 보유한 가전제품, 공장자동화기기와 같은 임베디드 시스템을 위한 운영시스템으로 쓰이는 리눅스
  • 적은 메모리와 느린 CPU에서 동작해야 하며, 실시간 요구를 어느 정도 충족시켜야 한다.
  • 필요에 따라 그림 사용자 인터페이스를 탑재하기도 한다.
why embedded linux
Why Embedded Linux ?
  • Big needs for a New O/S
    • New Applications (Internet, Multimedia, Wireless…)
    • New Hardware (fast & cool CPUs, Devices, …)
    • Just-in-Time Technical Support
    • Lowering Total costs: NRE, Unit-base, Support
slide22
임베디드 리눅스
  • 임베디드 시스템용으로 리눅스를 선택한 이유
    • 안정된 운영체제의 제공(멀티태스킹의 제공)
    • 강력하고 다양한 네트워크 환경의 제공
    • 확장성의 다양함과 용이함의 제공
    • 다양한 형태의 파일시스템과 실행파일 포맷 지원
    • Free Software
  • 임베디드 리눅스의 한계성
    • 윈도우 기반의 데스크탑 환경의 극복
    • 연구 개발인력의 부족 (커널, 디바이스 드라이버 등의 개발인력)
embedded linux market

Smart

Mobile Phone

PDA/

Web Pad

Web

Screen/Video Phone

Internet

Digital

Set-top Box

Industry

Application

2 – 32MB

4 – 32MB

DRAM

8 – 32MB

8 – 32MB

2 – 64MB

4 – 32MB

8 – 32MB

Flash

(Mask ROM)

16 – 32MB

16 – 32MB

2 – 64MB

Small Memory

Low Power

General Platform

Special

Features

Multimedia

Communication

Real-time

Requirement

High Availability

Dual CPU

(Phone + PDA)

USB, MMC

Special

Devices

Camera,

ISDN, ADSL, ..

MPEG2, …

PCI, DOC, …

Phone, Small GUI, WAP

MP3

Applications

H.32x (VoIP)

Internet

Shopping

Real-time Data Acquisition

Embedded Linux: Market
requirements for embedded linux kernel
File Systems

Flash File System

ROM/RAM File System

Power Management

Minimize Power Consumption

Monitor/Signal Power State

Memory Management

Protect Applications each other

Free memory Management

XIP (Execute In Place)

Soft Real-Time Scheduler

for Periodic Multimedia Application

Various Device Support

Display : LCD, TV-Monitor

Multimedia Devices

Codecs: Camera, Voice, MP3

Network/Connectivity Devices

HomeRF, HomePNA, Bluetooth, IrDA

IEEE-1394, Ethernet, ASDL

Optional Device Support

PCMCIA, Compact Flash slot

Requirements forEmbedded Linux: Kernel
requirements for embedded linux application
Content Viewer / Editor

Microsoft Compatibility(Word, Excel, PowerPoint)

Internet Browser / E-Mail

Multimedia Players(MPEG4 Streaming, MP3, …)

Conventional PIMS

Address Book, Todo list,Memo, Calendar, Scheduler

Synchronization thruDesktop PC or Internet Server

Two-way Communication

Voice Communication

Video Conferencing

Server Based Instant Messaging

Network Games

B2B, B2C Solutions

Middleware for Remote DB access

Security Solutions

VPN over wireless link

Encryption Mechanism

Distributed Object Support

Requirements forEmbedded Linux: Application
requirements for embedded linux solution

H/W Vendor

Independent

Software

Vendor

ISP/

Service

Operator

End User

Requirements forEmbedded Linux: Solution
  • One-Stop Solution
    • Embedded Linux Kernel
      • 100% Linux Compatibility
      • Embedded Features Ready
    • Application Software and Platform
      • All the Basic / Internet Applications
      • GUI/Library for New Applications
    • Tools for 3rd Party S/W vendors
      • Cross Compiler / Debugger
      • Software Development Kit
    • Technical Support at all level
      • H/W - Kernel - GUI - Application
slide27
임베디드 리눅스
  • 임베디드 리눅스가 가져야 하는 필수 조건
    • 리눅스 자체 크기와 기능의 최소화, 경량화
    • 목표로 하는 시스템에 맞게 쉽게 재구성이 가능
    • 저성능 프로세서를 위한 성능의 최적화
  • 임베디드 리눅스의 개발 붐
    • “정보가전”이라 통칭되는 새로운 임베디드 시스템의 등장과 이 시스템들을 위한 운영체제의 필요
    • 새롭게 생겨나는 기능적 요구와 고품질의 창조형 서비스의 적시 공급을 위해
slide28
임베디드 운영체제
  • 윈도우 CE
    • 윈도우 및 윈도우 응용프로그램의 사용 친숙도가 높음
    • 데스크탑 윈도우와 응용프로그램 및 데이터의 호환성이 우수
    • 프로그램 개발 환경이 잘 갖추어져 있음
    • 하지만 가격이 비쌈
    • 사용시 많은 양의 메모리를 요구
    • 속도가 느림
    • 자유로운 재구성화가 불가능
slide29
임베디드 운영체제
  • 자바
    • 스크린폰, 셋톱박스 등을 중심으로 사용이 확산되고 있음 : 주로 퍼서널자바를 이용
    • 휴대폰 등 이동 서비스 : K자바 기반의 KVM(Kilobyte Virtual Machine) 기술을 적용
  • 임베디드 리눅스
    • 정보가전에 최적
    • 크기가 작음
    • 쉽게 재구성화가 가능
    • 인터넷과 최상으로 호환
    • 공개 소프트웨어이므로 무료
slide30
국내에서 개발된 임베디드 리눅스
  • 타이눅스(Tynux)
  • 임베닉스(Embenix)
  • 리누엣(Linuette)
tynux
타이눅스(Tynux)
  • 팜팜테크사에서 개발
  • PDA, 무선 단말기용 임베디드 리눅스
  • 미국 링크업시스템사에 공급
  • 스마트폰, 전자도서, PDA 등에 적용하기 위해 연구되고 있음
  • SK 텔레콤과 제휴하여 타이눅스를 내장한 CDMA 방식의 스마트폰을 개발 중
  • “타이눅스 박스”라는 타이눅스가 내장된 레퍼런스 보드와 개발 환경을 개발하여 판매 중
embenix
임베닉스(Embenix)
  • 다산인터넷사에서 개발
  • 모토롤라의 MPC850/C860, MPC8240 및 MPC750, 인텔의 스트롱암(StrongARM) 마이크로프로세서를 지원
  • 리눅스의 임베디드화 기술, 각종 디바이스 드라이버 구현, 커널의 최적화 기술, 디버깅툴 기술, 로드 분산 처리 기술, 분산 데이터베이스 기술 포함
  • 기산텔 레콤에 공급, 미국 MMC사에 납품 예정
  • 통신 및 네트워크 장비 분야에 응용이 가능
  • 상용 RTOS를 대체할 수 있는 솔루션으로 등장
linuette
리누엣(Linuette)
  • 미지리서치사에서 개발
  • 이동전화기, 스마트폰, 셋톱박스, PDA 등을 위해서 개발
  • 리누엣을 위한 개이정보관리시스템(PIMS), 한글 펜인식 프로그램, 사인 인증 프로그램도 개발
  • Qt 임베디드를 최적화시킨 GUI를 사용
  • 효과적인 전원관리 정책을 적용 : 사용 시간의 연장
  • 데스크탑 컴퓨터와의 동기화 : 운영체제에 영향을 받지 않는 SyncML 방식을 도입
  • QVFB(Qt Virtual Frame Buffer) 같은 개발 환경을 제공
slide34
그 밖의 업체 동향
  • 삼성전기는 리니오사와 전략적 제휴 : 임베디드 리눅스를 탑제할 수 있는 상용 제품 개발을 준비 중
  • 대신정보통신 : 리니오사의 임베딕스(Embedix) 도입 결정
  • 시네티아정보통신 : 스트롱암 기반의 임베디드 시스템 개발 완료
  • 가산전자 : OSK에 대한 지분 투자를 통하여 3COM사의 팜OS와 호환되는 리눅스 기반 임베디드 운영체제 개발 효과를 거둠
  • 리눅스원 : 대만의 X리눅스사와 제휴
  • 웹데이터뱅크와 리눅스코리아도 임베디드 리눅스 시장에 진출 예정
  • 바이탈시스템즈의 vLinux, 이노피아테크의 IALinux, 두울정보통신의 VeLix 등
slide35
국외 임베디드 리눅스 개발 현황
  • 개발자들과 사용자들을 위한 컨소시움 구성(http://www.embedded-linux.org)
slide36
외국의 임베디드 리눅스
  • miniRTL
    • 1.4 MB 디스켓 한장에 들어가는 리눅스
    • 미국의 FSMLab이 개발
    • RTLinux를 기반 : 실시간 처리 기능 포함
    • HDD가 필요없고 FDD나 플래쉬 메모리에서 부팅 가능
    • CGI 지원 : 작은 크기의 웹서버를 탑제하면 웹을 경유하여 시스템 모니터링이 가능
  • 리니오 : 임베디드 니룩스 개발의 선두 주자
    • 임베딕스(Embedix)를 개발
    • OEM 소프트웨어 개발 키트인 SDK, GUI 기반의 마이크로 웹 브라우저, 윈도우 CE 호환 API 등으로 구성
slide37
외국의 임베디드 리눅스
  • 레드햇
    • 임베디드 시스템용의 다양한 응용프로그램 개발을 위한 오픈 소스 툴과 서비스를 제공
  • 몬타 비스타
    • 하드햇(Hard Hat) 리눅스 개발
    • 모토롤라의 MPC7XX/8XX/82XX, IBM의 PPC 405GP, 인텔의 IA32, 스트롱암, NEC의 MIPS VR41XX/43XX/54XX 등에 포팅됨
    • 20 여종의 레퍼런스 보드를 지원
    • 국내의 아델리눅스가 공급
slide38
외국의 임베디드 리눅스
  • 터보리눅스
    • 중국어판 임베디드 리눅스를 세계 최초로 개발
  • 리눅스웍스
    • 블루캣(BlueCat) 리눅스 개발
    • 임베디드 툴과 소프트웨어에서 가장 뛰어난 개발이라는 평가를 받음
  • Emeralds
    • 미국 미시건 대학의 신강근 교수가 주도
    • 아주 적은 메모리의 실시간 마이크로 커널
    • 코드 크기 : 10 KB 정도
slide39
임베디드 리눅스의 전략적 가치
  • 공개 소스 소프트웨어: 로열티 문제 해결
  • 두터운 개발자 층: 수 많은 리눅스 프로그래머
  • 검증된 운영 시스템: 10년에 걸쳐 사용
  • 다양한 환경 지원: x86, alpha, ppc, SA, sparc, 메인 프레임에 이르기까지 각종 CPU 지원
  • 모듈화, 이식성: 쉽고 빠르게 불필요한 부분을 빼고 필요한 부분을 추가
  • 개발 과정 단순화: PC에서 개발  대상 플랫폼으로 이식
slide40
임베디드 리눅스의 한계
  • 실시간성: 임베디드 시스템을 위한 전용 OS에 비해 취약하다. 최근에는 다음과 같은 방식으로 리눅스에 실시간성을 보강하는 추세이다.
    • 최근 몬타비스타에서 선점형(preemptible) 커널 발표
    • 실시간을 지원하도록 스케쥴러를 개선하려는 움직임
    • 부 커널 방식(RTLinux와 RTAI) 커널 모듈 개발
  • 메모리와 전력: 여전히 전용 OS와 비교하여 부족한 점이 많다.
  • 윈도우 시스템: 덩치가 크거나 안정화 작업이 필요하다.
slide41
임베디드 리눅스 개발자 주의 사항
  • 리눅스 자체에 대한 지식
    • 커널, 디바이스 드라이버, 메모리 구조, 프로세스 구조, 파일 시스템, 시스템 호출, I/O, 인터럽트, etc.
  • 하드웨어에 대한 지식
    • CPU, 주변 장치, 직/병렬/네트워크 통신
  • 소프트웨어에 대한 지식
    • 윈도 시스템, C 프로그래밍 언어, 시스템 프로그래밍 방법
  • 업무에 대한 지식
    • 하드웨어와 사용자 요구 사항을 연관시켜 분석할 수 있어야 한다.