introdução aos sistemas operacionais embarcados

Post on 28-Jun-2015

1.054 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

Introdução aos sistemas operacionais embarcados

TRANSCRIPT

ELT048

Sistemas operacionais embarcados

Rodrigo Maximiano Antunes de AlmeidaUniversidade Federal de Itajubá

ELT048

● Aulas: Segundas 7:00 às 9:30● LEC II

● 1a Prova + Projeto 1: 15/04● 2a Prova + Projeto 2: 10/06● Sub: 17/06

Considerações iniciais

SO Embarcado?Sério?

Lei de Moore

LPC800

LPC800

LPC800

KL02

KL02

The Kinetis KL02 CSP MCU is expected to begin sampling to lead customers in March 2013. Broad market availability of production-qualified samples is planned for July 2013 from Freescale and its distribution partners. Suggested resale pricing is 75 cents (USD) in 100,000-unit quantities.

Cronograma01) Introdução

02) Ponteiros

03) Ponteiros de Função

04) Definição de processo

05) Kernel cooperativo / Escalonadores

06) Requisitos temporais

08) Interface de Driver

09) Controladora de Drivers

10) Callback

11) Arquitetura de processador

12) Kernel preemptivo

13) Garantia de tempo real

14) Mutex/Semáforos

Tipos de SO

● Grande Porte● Servidores● Multiprocessados● Computadores pessoais● Portáteis● Embarcados● Tempo Real

Componentes do SO

● Kernel● Drivers● Gerenciamento de arquivo● Rede● Segurança● Interface Gráfica

Projeto de um kernel

Projeto de um kernel

● Funções de um kernel:● Gerenciar e coordenar a execução dos

processos através de algum critério● Manusear a memória disponível e coordenar o

acesso dos processos a ela● Intermediar a comunicação entre os drivers de

hardware e os processos

Projeto de um kernel

Desenvolver meu próprio kernel?

Porque?

Projeto de um kernel

● Melhoria do código proprietário● Facilidade para reutilização de código● Controle total sobre o fonte● Modificações específicas para o kernel

● Escalonadores adaptados● Maior controle sobre dispositivos de hardware

Projeto de um kernel

Desenvolver meu próprio kernel?

Porque não?

Projeto de um kernel

● Overhead do kernel (memória e velocidade)● Alternativas gratuítas e pagas● Projeto que demanda muito tempo● Desenvolvimento contínuo

Projeto de um kernel● FreeBSD – 6.25● IOS – 80● Linux – 15● OS X – 86● ReactOS – 2● OpenSolaris – 10● Windows NT – 45● Windows XP – 40● Windows Vista – 64

Projeto de um kernel

Projeto de um kernel

● Alternativas● Windows Embedded Compact®● VxWorks®● X RTOS®● uClinux● FreeRTOS● BRTOS

Projeto de um kernel

● Kernel monolítico X microkernel

● Linus Torvalds e Andrew Tanenbaum

Projeto de Kernel

● Decisões no projeto de um Kernel● Gerenciamento dos dispositivos de I/O● Gerenciamento dos processos● Segurança do sistema

top related