Você está na página 1de 51

Roteiro

 Conceito;
 Tipos de Sistemas Operacionais;
 Componentes do Sistema Operacional;
 Evolução dos sistemas operacionais;
 Conceitos básicos sobre processos, memória e arquivos.

2
Conceito

 Constituído basicamente por hardware e software.

Fonte: Pexels
Fonte: Pixabay

4
Abstração de Hardware

 Acessar recursos de hardware é uma tarefa complexa.

 Motivos da complexidade:
- Características específicas de cada dispositivo físico;
- Complexidade de suas interfaces.

 O sistema operacional deve definir interfaces abstratas


para recursos de hardware.

7
Definição de interfaces abstratas

 Prover interfaces de acesso aos dispositivos, mais simples


de usar que as interfaces de baixo nível.
- EX: Leitura de dados de HD.

 Tornar os aplicativos independentes do hardware


- EX: Editor de texto não deve ser dependente da tecnologia de disco utilizada
no sistema.

 Definir interfaces de acesso homogêneas para dispositivos


com tecnologias distintas.
- EX: Aplicativo acessa dados em disco, sem precisar se preocupar com a
estrutura real de armazenamento dos dados.
8
Tipos de Sistemas Operacionais

 Batch (de lote).


 De rede.
 Distribuído.
 Multiusuário.
 Servidor.
 Desktop.
 Móvel.
 Embarcado.
 Tempo real.
9
Tipos de Sistemas Operacionais

 Batch (de lote)


- Todos os programas a executar eram colocados em uma fila.
- O processador recebia os programas e os processava sem interagir com os
usuários.
- Exemplos:
. Sistema de processamento de transações bancárias.
. IBM OS/360.

10
Tipos de Sistemas Operacionais

 De Rede
- Deve possuir suporte à operação em rede.
- Disponibilização de seus recursos locais aos demais computadores, de forma
controlada.
- Sistemas Operacionais atuais oferece esse tipo de funcionalidade.

11
Tipos de Sistemas Operacionais

 Distribuído
- Os recursos de cada computador estão disponíveis a todos na rede.
- O usuário interage com a interface da aplicação, mas não sabe onde está
executando ou armazenando os arquivos.
- O sistema decide, de forma transparente para o usuário.
- Ex: Aplicação em nuvem utiliza esse conceito

12
Tipos de Sistemas Operacionais

 Multiusuário
- Deve suportar a identificação do “dono” de cada recurso dentro do sistema
(arquivos, processos, áreas de memória, conexões de rede).
- Impor regras de controle de acesso para cada recurso por usuários.
- A maioria dos sistemas atuais são multiusuários.

13
Tipos de Sistemas Operacionais

 Servidor
- Deve permitir a gestão eficiente de grandes quantidades de recursos (disco,
memória, processadores).
- Coloca prioridades e limites em relação ao uso dos recursos pelos usuários e
seus aplicativos.
- Tem suporte a rede e multiusuários.

14
Tipos de Sistemas Operacionais

 Desktop
- Voltado ao atendimento do usuário doméstico e corporativo.
- Principais características:
. Interface gráfica;
. Suporte à interatividade;
. Operação em rede.
- EX: Windows (7,10, 11, etc), MacOS e Linux.

15
Tipos de Sistemas Operacionais

 Móvel
- Usado em equipamentos de uso pessoal, como smartphones e tablets.
- Principais prioridades:
. Gestão eficiente de energia;
. Conectividade nos diversos tipos de rede (wifi, bluetooth, 4G, etc…);
. Interação com uma grande variedade de sensores (GPS, giroscópio,
touchscreen, etc).
- EX: Android e iOS

16
Tipos de Sistemas Operacionais

 Embarcado
- Construído para operar sobre um hardware com poucos recursos de
processamento, armazenamento e energia.
- EX: TVs, Centrais de alarme, computador de bordo

17
Tipos de Sistemas Operacionais

 Tempo Real
- O tempo é essencial.
- Comportamento temporal previsível.
- Estrutura interna deve ser construída de forma a minimizar esperas e
latências imprevisíveis:
. Tempos de acesso a disco
. Sincronizações excessivas
- Exemplos
. Máquinas para medir batimento cardíaco
. Sistema de Tráfego aéreo

18
Componentes do Sistema Operacional

 S.O é composto de diversos componentes com objetivos e


funcionalidades complementares.
 Componentes mais relevantes de um S.O:
- Núcleo
- Código de inicialização
- Drivers
- Programas Utilitários

19
Componentes do Sistema Operacional

 Núcleo
- Também chamado de kernel.
- Coração do sistema operacional.
- Responsável pela gerência dos recursos do hardware usados pelas
aplicações.
- Implementa as principais abstrações utilizadas pelos aplicativos e programas
utilitários.

20
Componentes do Sistema Operacional

 Código de Inicialização
- Inicialização do hardware para reconhecer os dispositivos instalados, testá-
los e configurá-los para uso posterior.
- Carregar o núcleo do S.O em memória e iniciar sua execução.

21
Componentes do Sistema Operacional

 Drivers
- Módulos de código específicos para acessar os dispositivos físicos.
- Driver para cada dispositivos (portas USB, discos rígidos, placas gráfica, etc)
- Muitas vezes o driver é construído pelo próprio fabricante do hardware e
fornecido em forma compilada (linguagem de máquina) para ser acoplado ao
restante do sistema operacional.

22
Componentes do Sistema Operacional

 Programas Utilitários
- Programas que facilitam o uso do sistema computacional.
- Fornece funcionalidades complementares ao núcleo:
. Formatação de discos e mídias
. Configuração de dispositivos
. Manipulação de arquivos (mover, copiar, apagar)
. Interpretar comandos
. Terminal
. Interface Gráfica
. Gerência de Janelas
. Outras funcionalidades que podem adaptar do desempenho computacional.

23
Dinâmica de Discussão 1

1) Como seria a utilização do computador sem um


sistema operacional ?

2) O que caracteriza o processamento batch ? Quais


aplicações podem ser processadas neste tipo de
ambiente ?

3) Por que o mecanimso de interrupção é fundamental


para o Sistema Operacional ?

27
Dinâmica de Discussão 1 – Respostas
(Machado e Maia, 2017)

1) Como seria a utilização do computador sem um


sistema operacional ?
- Sem o S.O, um usuário para interagir com o computador
deveria conhecer profundamente diversos detalhes sobre
hardware do equipamento, o que tornaria seu trabalho lento e
com grandes possibilidades de erros.

28
Dinâmica de Discussão 1 – Respostas
(Machado e Maia, 2017)

2) O que caracteriza o processamento batch ? Quais


aplicações podem ser processadas neste tipo de
ambiente ?
- Tem a característica de não exigir a interação do usuário com
a aplicação.
- Todas as entradas e saídas de dados da aplicação são
implementadas por algum tipo de memória secundária.
- Alguns exemplos de aplicações originalmente processadas
em batch são programas envolvendo cálculos numéricos,
compilações, ordenações, backups e todos aqueles onde não
é necessária a interação com o usuário.

29
Dinâmica de Discussão 1 – Respostas
(Machado e Maia, 2017)

3) Por que o mecanismo de interrupção é fundamental


para o Sistema Operacional ?
- Porque é em função desse mecanismo que o sistema
operacional sincroniza a execução de todas as suas rotinas e
dos programas dos usuários, além de controlar dispositivos.

30
Evolução dos Sistemas Operacionais

 Anos 40
- Cada programa executava sozinho e tinha total controle do computador.
- Todas ações devia ser programado detalhadamente pelo desenvolvedor da
aplicação:
. Carga do programa em memória
. Varredura dos periféricos de entrada para busca de dados
. Computação
. Envio dos resultados para os periféricos de saída (byte a byte)

31
Evolução dos Sistemas Operacionais

 Anos 50
- Sistema de Computação fornecem “bibliotecas de sistema”.
. Encapsulam o acesso aos periféricos, para facilitar a programação de aplicações

- Um programa “monitor” auxilia a carga e descarga de aplicações e/ou dados


entre a memória e periféricos.
. Realizados por leitoras de cartão perfurado e fitas magnéticas.

32
Evolução dos Sistemas Operacionais

 1961
- Grupo do pesquisador Fernando Corbató, do MIT, anuncia o desenvolvimento
do CTSS (Sistema Operacional com compartilhamento de tempo).

 1965
- IBM lança o OS/360: Compartilhamento de tempo e excelente suporte a
discos.
- MIT, GE e Bell Labs define o sistema Operacional Multics
- Com o Multics obtiveram ideias inovadoras para influenciar novos sistemas
durante décadas.

33
Evolução dos Sistemas Operacionais

 1969
- Ken Thompson e Dennis Ritchie criam a primeira versão do UNIX.

 1981
- Microsoft lança o MS-DOS.

 1984
- Apple lança o Mac OS 1.0 para computadores da linha Macintosh.
- O Mac OS 1.0 foi o primeiro S.O a ter uma interface gráfica incorporada ao
sistema.

34
Evolução dos Sistemas Operacionais

 1985
- Primeira tentativa da Microsoft com uso de interface gráfica.
- Criação do MS-Windows 1.0

 1987
- Tanenbaum desenvolve um S.O didático conhecido como Minix.
- O Minix utilizou API do Unix.
- IBM e Microsoft apresentam o OS/2, para substituir o MS-DOS e Windows.
- Depois as empresas rompem parceria.
- IBM continua no OS/2.
- Microsoft investe no ambiente Windows.
35
Evolução dos Sistemas Operacionais

 1991
- Linus Torvalts inicia o desenvolvimento do Linux.
- Foi abraçado por centenas de programadores ao redor do mundo.

 1993
- Microsoft lança o Windows NT. Contava com uma arquitetura interna
inovadora.
- Lançamento dos UNIX de código aberto FreeBSD e NetBSD.
- Apple lança o Newton OS, primeiro S.O móvel, com gestão de energia e
suporte para tela de toque.

36
Evolução dos Sistemas Operacionais

 1995
- AT&T lança o Plan 9, um sistema operacional distribuído.

 1999
- VMWare lança um ambiente de virtualização para sistemas operacionais de
mercado.

37
Evolução dos Sistemas Operacionais

 2001
- Apple lança o MacOS X, derivada da família UNIX BSD.

 2005
- Lançamento do Minix 3, um S.O micro-núcleo para aplicações embarcadas.
- Minix 3 faz parte do firmware dos processadores Intel.

 2006
- Lançamento do Windows Vista.

38
Evolução dos Sistemas Operacionais

 2007
- Lançamento do iPhone com S.O iOS.
- Lançamento do Android, S.O baseado no núcleo Linux para dispositivos
móveis.

 2009
- Lançamento do Windows 7.

 2010
- Lançamento do Windows Phone, S.O para celulares pela Microsoft.

39
Evolução dos Sistemas Operacionais

 2015
- Lançamento do Windows 10.

 2021
- Lançamento do Windows 11.

40
Funcionalidades Básicas do S.O

 Gerência de Processos

 Gerência de Memória

 Gerência de Dispositivos

 Gerência de Arquivos

 Gerência de Proteção
41
Funcionalidades Básicas do S.O

 Gerência de Processos
- Conhecida também como tarefas ou atividades.
- Visa distribuir a capacidade de processamento de forma justa entre
as aplicações.
- Respeita prioridades definidas pelos usuários.
- S.O provê a ilusão da existência de um processador independente
para cada tarefa.
- Fornece abstrações para sincronização de atividades
interdependentes e prover formas de comunicação entre elas.

42
Funcionalidades Básicas do S.O

 Gerência de Memória
- Fornece para cada aplicação uma área de memória própria.
- Isolamento das áreas de memória melhora a estabilidade e
segurança do sistema como um todo.
- Caso a memória RAM seja insuficiente, o S.O pode aumentá-la,
usando o espaço disponível no armazenamento secundário (HD).

43
Funcionalidades Básicas do S.O

 Gerência de Dispositivos
- Cada dispositivo possui suas particularidades.
- Por exemplo, a interação de um dispositivo de rede é diferente de um
HD.
- Função de implementar a interação com cada dispositivo por meio de
drivers.
- Criação de modelos abstratos que permitem agrupar vários
dispositivos similares sob a mesma interface de acesso.

44
Funcionalidades Básicas do S.O

 Gerência de Arquivos
- Construída sobre a gerência de dispositivos e visa criação de
arquivos e diretórios.
- Conceitos abstratos de arquivo e diretório são importantes e
difundidos.
- Muitos S.O usam arquivos para permissão de acesso a recursos que
não se refere com armazenamento.
- EX: Em conexões de rede, o S.O pode usar o socket TCP com um
descrito de arquivo no qual pode-se ler ou gravar dados.
- EX: Os recursos do S.O podem ser vistos como arquivos.

45
Funcionalidades Básicas do S.O

 Gerência de Proteção
- Serve para definição de acesso aos recursos.
- Definição de usuários e grupos de usuários.
- Autenticação dos usuários quando acesso o S.O.
- Definição e Aplicação de regras de controle de acesso aos recursos.
- Registro de uso dos recursos pelos usuários.

46
Dinâmica de Discussão 2

1) Apresente as duas principais funções de um S.O em


relação ao hardware ?

2) Qual a diferença entre memória principal e a memória


secundária ?

3) Defina Processo.

47
Dinâmica de Discussão 2 – Respostas
(Machado e Maia, 2017)

1) Apresente as duas principais funções de um S.O em


relação ao hardware ?
- Facilidade de acesso aos recursos do sistema.
- Compartilhamento de recursos de forma organizada e
protegida.

48
Dinâmica de Discussão 2 – Respostas
(Machado e Maia, 2017)

2) Qual a diferença entre memória principal e a memória


secundária ?
- A memória principal é um dispositivo de armazenamento,
em geral volátil, onde são armazenados instruções e dados
utilizados pelo processador durante a execução de programas.
- A memória secundária é um dispositivo não-volátil com
maior capacidade de armazenamento, porém com menor
velocidade de acesso aos seus dados armazenados.

49
Dinâmica de Discussão 2 – Respostas
(Machado e Maia, 2017)

3) Defina Processo.
- Pode ser definido com o ambiente onde um programa é
executado.
- Este ambiente, além das informações sobre a execução,
possui também o quanto de recursos do sistema cada
programa pode utilizar, como o espaço de endereçamento,
tempo de processador e área em disco.

50
Bibliografia

• MAZIERO, Carlos Alberto. Sistemas Operacionais: conceitos e


mecanismos. Curitiba: DINF – UFPR, 2019.

• MACHADO, Francis Berenger; MAIA, Luiz Paulo. Arquitetura de


Sistemas Operacionais. 5. ed. Rio de Janeiro: LTC, 2017.

51

Você também pode gostar