Professor: Thiago Passarin
ET51D - INFORMÁTICA
Hardware e Sistemas Operacionais
UTFPR – Universidade Tecnológica Federal do Paraná DAELT – Departamento de Eletrotécnica
Bits e Bytes
Eletrônica Digital:
Utiliza os
dígitos 0 (zero) e 1(um)
para estabelecer os estados
DESLIGADO
e
LIGADO
Bits e Bytes
Processadores
Os processadores do
final da década de 70 e início da década
de 80
processavam informações com até
8 bits
de cada vez.
Atualmente, conforme o seu modelo, um computador pode
processar de
32 ou 64 bits
de cada vez.
BIOS
Basic Input/Output System (Sistema Básico de Entrada/Saída)
É um programa
pré-gravado na memória
permanente do
processador
É
executado quando ligado
É responsável pelo
suporte básico
de acesso ao hardware, bem
como por iniciar a carga do sistema operacional
Placa Mãe (Mother Board)
Onde ficam instalados todos os dispositivos eletrônicos (circuitos integrados, transistores, cabos, fios elétricos, resistores, capacitores, etc.) necessários para o perfeito funcionamento do hardware
Basicamente uma placa mãe possui: Slots de conexão
Slots de memória RAM
Conector de Teclado/Mouse CPU
Memória RAM
DRAM: DRAM: DRAM:
DRAM: DynamicDynamicDynamic RandomDynamic RandomRandomRandom Access Access Access Access MemoryMemoryMemoryMemory Memória volátil e dinâmica
Armazena cada bit em um capacitor
Devido à fuga de elétrons, deve ser atualizada periodicamente Menor custo e ocupa menor espaço
SRAM: SRAM: SRAM:
SRAM: StaticStaticStatic RandomStatic RandomRandomRandom Access Access Access Access MemoryMemoryMemoryMemory Memória volátil e estática
São mais caras e ocupam mais espaço
Consomem mais energia e aquecem mais que as DRAM São mais rápidas, usadas nas cache L1 e L2
Memória EPROM e FLASH
Memórias não-voláteis
Hardware de Informática
Sistemas
CPU (Central Processing Unit)
• Comumente chamada de
processador
processador
processador
processador
• É a parte de um sistema computacional que realiza as
instruções de um programa de
instruções de um programa de
instruções de um programa de
instruções de um programa de computador
computador
computador
computador
• Executar a
aritmética básica
aritmética básica
aritmética básica
aritmética básica
,
lógica
lógica
lógica
lógica
, e a
entrada e saída de
entrada e saída de
entrada e saída de
entrada e saída de
dados
dados
dados
dados
.
Sistemas Operacionais
Sistemas Operacionais
Um sistema operacional (SO) é uma coleção de programas
Um sistema operacional (SO) é uma coleção de programas
Um sistema operacional (SO) é uma coleção de programas
Um sistema operacional (SO) é uma coleção de programas que:
que:
que:
que:
• Inicializam o hardware do computador
• Fornecem rotinas básicas para controle de dispositivos
• Fornecem gerência, escalonamento e interação de tarefas
• Mantém a integridade de sistema
Exemplo: SO Simples
Sistema Sistema Sistema
Sistema Operacional Operacional Operacional Operacional para para para para um sistema de controle de um sistema de controle de um sistema de controle de um sistema de controle de segurança:segurança:segurança:segurança: • Sua primeira tarefa seria ajustar ajustar (e ajustar ajustar (e (e (e testartestar) os sensores testartestar) os sensores ) os sensores e alarmes) os sensores e alarmese alarmese alarmes
• Em seguida, ativar uma rotina para monitorar monitorar ininterruptamente monitorar monitorar ininterruptamente ininterruptamente ininterruptamente todos os
todos os todos os
todos os sensoressensoressensoressensores
• Se o estado de qualquer sensor for mudado, gerar um alarmegerar um alarmegerar um alarmegerar um alarme
Exemplo: SO Complexo
Grande Grande Grande
Grande computador computador computador computador multiusuários, multiusuários, multiusuários, com muitos multiusuários, com muitos com muitos com muitos terminais:terminais:terminais:terminais:
• Administrar e executar todos os pedidos de usuários executar todos os pedidos de usuários executar todos os pedidos de usuários executar todos os pedidos de usuários e assegurar que eles não interferiram entre si
• Compartilhar os dispositivos Compartilhar os dispositivos Compartilhar os dispositivos Compartilhar os dispositivos entre todos os usuários que pedem esse tipo de serviço
• Alguns dispositivos só podem ser usados por um usuário de cada vez, como impressoras e impressoras e impressoras e impressoras e discos
discos discos discos
• Apresentar Apresentar Apresentar a cada usuário uma interface Apresentar a cada usuário uma interface a cada usuário uma interface a cada usuário uma interface que aceita, interpreta, e então executa comandos ou programas do usuário
• Administrar arquivos Administrar arquivos Administrar arquivos e Administrar arquivos e e e documentos documentos documentos documentos criados por usuários
• Fornecer comunicação Fornecer comunicação Fornecer comunicação entre usuários Fornecer comunicação entre usuários entre usuários entre usuários e com outros computadores • etc.
• O SO será armazenado em disco, e partes dele são carregadas na memória do computador (RAM) quando necessário
Estrutura de um SO
Núcleo NúcleoNúcleo Núcleo:
É o coração do SO, responsável pela gerência dos recursos do gerência dos recursos do gerência dos recursos do gerência dos recursos do hardware
hardware hardware
hardware usados pelas aplicações.
Ele também implementa as principais abstrações utilizadas abstrações utilizadas abstrações utilizadas abstrações utilizadas pelos programas aplicativos pelos programas aplicativospelos programas aplicativos pelos programas aplicativos.
Estrutura de um SO
Drivers DriversDrivers Drivers:
Módulos de código específicos Módulos de código específicos Módulos de código específicos Módulos de código específicos para acessar os dispositivos físicos.
Existe um driver para cada tipo de driver para cada tipo de driver para cada tipo de driver para cada tipo de dispositivo
dispositivodispositivo
dispositivo, como discos rígidos, portas USB, placas de vídeo, etc.
Muitas vezes o driver é construído pelo próprio fabricante do fabricante do fabricante do fabricante do
hardware hardware hardware
hardware e fornecido para ser acoplado ao SO.
Estrutura de um SO
Código de inicialização Código de inicializaçãoCódigo de inicialização Código de inicialização:
A inicialização do hardware
usualmente requer uma série de série de série de série de tarefas complexas
tarefas complexastarefas complexas
tarefas complexas, como reconhecer os dispositivos
instalados, testá-los e configurá-los adequadamente para seu uso posterior.
Estrutura de um SO
Programas utilitários Programas utilitáriosProgramas utilitários Programas utilitários:
Programas que facilitam o uso facilitam o uso facilitam o uso facilitam o uso do sistema computacional
do sistema computacionaldo sistema computacional do sistema computacional.
Fornecem funcionalidades como formatação de discos e mídias, configuração de
dispositivos, manipulação de arquivos, interpretador de comandos, interface gráfica, etc.
Tipos de Sistemas Operacionais
Batch (de lote
Batch (de lote
Batch (de lote
Batch (de lote)))):
• Sistemas operacionais mais antigos, executam apenas uma
tarefa por vez
• Todos os programas a executar são colocados em uma fila
• Atualmente, este conceito se aplica a sistemas que processam
tarefas sem interação direta com os usuários, como os sistemas
bancos de dados
Tipos de Sistemas Operacionais
Multiusuário
Multiusuário
Multiusuário
Multiusuário:
•
Deve
Deve
Deve
Deve suportar a identificação
suportar a identificação
suportar a identificação
suportar a identificação
do “dono” de cada recurso
dentro do sistema (arquivos, processos, áreas de memória,
conexões de rede)
• Deve
impor
impor
impor
impor regras de controle de acesso
regras de controle de acesso
regras de controle de acesso
regras de controle de acesso
para impedir o uso
desses recursos por usuários não autorizados
Tipos de Sistemas Operacionais
Desktop:
Desktop:
Desktop:
Desktop:
• Voltado ao atendimento do usuário doméstico e corporativo
para a
realização de atividades corriqueiras
realização de atividades corriqueiras
realização de atividades corriqueiras
realização de atividades corriqueiras
, como edição de
textos e gráficos, navegação na Internet e reprodução de mídias
simples
• Suas principais características são a
interface gráfica
interface gráfica
interface gráfica
interface gráfica
, o
suporte
suporte
suporte
suporte
à interatividade
à interatividade
à interatividade
Tipos de Sistemas Operacionais
Embarcados EmbarcadosEmbarcados Embarcados:
• Um sistema operacional embarcado (ou embedded) é construído construído construído construído para operar sobre um hardware com poucos recursos de
para operar sobre um hardware com poucos recursos de para operar sobre um hardware com poucos recursos de para operar sobre um hardware com poucos recursos de processamento, armazenamento
processamento, armazenamento processamento, armazenamento
processamento, armazenamento e e e e energiaenergiaenergiaenergia
• Aplicações Aplicações típicasAplicações Aplicações típicastípicastípicas: telefones celulares, sistemas de automação
industrial, equipamentos eletrônicos de uso doméstico (leitores de DVD, TVs, fornos micro-ondas, centrais de alarme, etc.)
• ExemplosExemplosExemplosExemplos de sistemas operacionais embarcados: LynxOS, C/OS, Xylinx e VxWorks
Tipos de Sistemas Operacionais
Tempo Real (RTOS): Tempo Real (RTOS): Tempo Real (RTOS): Tempo Real (RTOS):
• Um SO de tempo real não precisa ser necessariamente ultrarrápido; sua característica essencial é ter um comportamento temporal comportamento temporal comportamento temporal comportamento temporal
previsível previsível previsível
previsível (ou seja, seu tempo de resposta deve ser conhecido no melhor e pior caso de operação)
• ExemplosExemplosExemplosExemplos:
• Soft-RTOS: suporte à gravação de CDs, ou à reprodução de músicas • Hard-RTOS: controle de funcionamento de uma turbina de avião,
Histórico dos Sistemas
Operacionais
http://www.tecmundo.com.br/sistema-operacional/2031-a-historia-dos-sistemas-operacionais-infografico-.htm
Histórico dos Sistemas
Operacionais
Década de 50: Década de 50:Década de 50: Década de 50: • Computadores gigantes• Tarefas realizadas por técnicos, os quais ditavam o que seria realizado através do próprio hardware
• Um funcionário era contratado especialmente para ativar e ativar e ativar e ativar e
desativar chaves desativar chaves desativar chaves
desativar chaves, as quais serviam para indicar se um componente devia ficar ligado ou desligado
Histórico dos Sistemas
Operacionais
1969
1969
1969
1969 –
–
– UNIX
–
UNIX
UNIX
UNIX
• Na década de 1960, uma equipe de desenvolvedores da AT&T
Bell Labs resolveu trabalhar em um software mais objetivo e
simplificado
• Inicialmente programado especificamente para um tipo de
máquina, e em 1973 recodificado para a linguagem C.
Histórico dos Sistemas
Operacionais
1981
1981
1981
1981 ---- MS
MS
MS----DOS / IBM PC DOS
MS
DOS / IBM PC DOS
DOS / IBM PC DOS
DOS / IBM PC DOS
• Primórdios a Microsoft
• Foi o começo do que hoje é
o Windows
Histórico dos Sistemas
Operacionais
1984 1984 1984
1984 ---- Mac OSMac OSMac OSMac OS
• Interface gráfica, gestos do mouse
• Começo da era dos
computadores “amigáveis”
Histórico
1985 1985 1985
1985 ---- Windows 1.0Windows 1.0Windows 1.0Windows 1.0
• Correndo atrás do prejuízo, a
Microsoft lançou seu primeiro sistema com interface gráfica e suporte para múltiplas tarefas
• Rodava sobre o MS-DOS
1987 1987 1987
1987 ---- Windows 2.0Windows 2.0Windows 2.0Windows 2.0
• Janelas podiam se sobrepor umas às outras e já existiam os recursos
Histórico dos Sistemas
Operacionais
1990 1990 1990
1990 ---- Windows 3.0Windows 3.0Windows 3.0Windows 3.0
• Melhoria no suporte de hardware
• Compatível com adaptadores gráficos de 256 cores
Histórico dos Sistemas
Operacionais
1991 1991 1991
1991 –––– LinuxLinuxLinuxLinux
• O Linux veio 22 anos depois do UNIX
• Foi um dos mais importantes da história, por trazer código livre e aberto
• Foi criado por Linus Torvalds
• Não é uma plataforma única. Desde o começo, Torvalds distribuiu o Kernel do sistema de forma gratuita,
garantindo que diversos outros sistemas pudessem ser desenvolvidos e oferecer novas experiências para os usuários
Histórico dos Sistemas
Operacionais
1992 1992 1992
1992 ---- Windows Windows Windows 3.1Windows 3.13.13.1
• Apresentava uma interface de rede mais bem desenvolvida
• Melhor suporte para a execução de arquivos multimídia e fontes TrueType
• Em apenas dois meses, a versão 3.1 vendeu 3 milhões de cópias
Histórico
2001 2001 2001
2001 ---- Windows XPWindows XPWindows XPWindows XP
2004 2004 2004
Histórico
2011 2011 2011
2011 ––– OS X 10.9 Mavericks– OS X 10.9 MavericksOS X 10.9 MavericksOS X 10.9 Mavericks 2012
2012 2012
2012 ––– Windows – Windows Windows Windows 8888 2014
2014 2014
2014 ––– Windows – Windows Windows Windows 8.18.18.18.1 2014
2014 2014