1
Slide Nº 1
Sistemas Operativos
Luís Paulo Reis
Slide Nº 2
Sumário• O que é um Sistema Operativo (SO)? • Modelo em Camadas de um SO• Abstracções Suportadas por um SO:
– Utilizador– Processo– Ficheiro / Directório
• Serviços de um SO
Sistemas OperativosSistemas Operativos
2
Slide Nº 3
Arquitectura de um Computador
• Um "computador" (hardware programável) sem programas é inútil.
• Desenvolver programas directamente sobre o Hardware (HW) é uma tarefa impossível
• Sistema Operativo é uma camada de Software (SW) que realiza a interface entre o Hardware e os programas
Slide Nº 4
Exemplo: Controlador de Floppy
• Ex: O controlador de Floppy PD765 suporta 16 comandos:– Ler/escrever blocos; – Movimentar o braço com a cabeça de leitura/escrita; – Formatar os trilhos, etc.
• Para dar cada um destes comandos é preciso escrever os parâmetros necessários nos registos do controlador
• O motor da floppy não deve estar continuamente em funcionamento
• Muitas das acções decorrem assincronamente à execução do CPU: – esperar a sua terminação num ciclo;– usar interrupções.
3
Slide Nº 5
Modelo em Camadas de um SO
• Estratégia típica na resolução de problemas complexos (outro exemplo, são as redes de computadores)
• Vantagens deste modelo: – Decomposição: um problema
“intratável” é decomposto em problemas solúveis -- estratégia de Júlio César: dividir para conquista;
– Modularidade: é relativamente fácil acrescentar funcionalidade ou alterar a implementação, desde que se preservem as interfaces.
Slide Nº 6
SO como uma Máquina Virtual
• O SO fornece às aplicações uma máquina virtual: – Mais fácil de usar que o HW; – Independente do HW.
• Por exemplo, Linux funciona em computadores com arquitecturas diferentes. Para os programadores e utilizadores a arquitectura do computador é essencialmente indiferente. Tanto faz se o computador é um PC ou uma Workstation.
4
Slide Nº 7
O SO como um Gestor de Recursos
• Durante a sua execução, os programas fazem uso de recursos (CPU, memória, disco, . . . )
• A maioria dos “computadores” executa várias aplicações em simultâneo: – O SO gere os recursos dum computador, facilitando a sua
partilha entre diferentes aplicações. – As aplicações não podem aceder directamente aos recursos
(todo o acesso é mediado pelo SO): • Evitase que as aplicações interfiram na gestão dos recursos.
Slide Nº 8
Abstracções Oferecidas por um SO
• Algumas abstracções fundamentais suportadas por um SO são: – Utilizador (em especial em sistemas interactivos);– Processo (programa em execução); – Ficheiro (repositório de informação);– Directório (ficheiro especial que contém outros
ficheiros).
5
Slide Nº 9
Utilizador
• Inclui entre outros os seguintes atributos: – nome (username); – identidade (userid ); – grupos (groupname e groupid ).
• Em sistemas multiutilizador, o conceito de utilizador é central para protecção de recursos (p.ex. ficheiros)
• Cada utilizador/grupo tem diferentes permissões• Utilizador especial: Administrador• O utilizador pode estar associado não só a uma
pessoa como a uma função, p.ex. correio electrónico
Slide Nº 10
Processo
• Representa um programa em execução. • Actualmente, quase todos os sistemas operativos são
multiprocesso (Linux, Windows2000, WindowsMe): – Um computador pode executar vários programas ao
“mesmo tempo”.• Um processo está associado a um utilizador, o seu
dono: aquele que invoca o programa correspondente. – A identidade do utilizador dono do processo determina os
recursos a que um processo pode aceder, bem como o tipo de operações que pode realizar sobre esses recursos.
6
Slide Nº 11
Ficheiros / Directórios
• Representam uma fonte/poço de informação. • Suportam três operações: Leitura, Escrita e Execução• Tipicamente organizados duma forma hierárquica,
usando directórios: – Ficheiros que contém outros ficheiros.
• Cada ficheiro/directório tem um utilizador que é o seu dono: – Utilizado no controlo de acessos.
• Abstraem não só ficheiros como também dispositivos de E/S.
Slide Nº 12
Serviços de um SO
• Suportam as abstracções oferecidas pelo SO• Gerem os recursos do sistema • Por exemplo:
– Gestão de processos; – Gestão de memória; – Gestão de ficheiros e directórios; – Gestão de dispositivos de entrada/saída; – Comunicação através de rede; – Detecção e notificação de eventos; – Autenticação e controlo de acesso.
7
Slide Nº 13
Serviços de Gestão de Processos
• Criação e destruição de processos• Suspensão e retoma (continuação) de processos• Mecanismos para:
– Sincronização de processos; – Comunicação entre processos.
• Alteração do dono dum processo• Um processo é essencialmente um programa em
execução, assim estes serviços são de suporte à execução de programas.
Slide Nº 14
Serviços de Gestão de Memória Principal
• Programas em execução exigem memória: – Para o Código; – Para os Dados.
• O SO tem que gerir a memória: – Alocação e libertação de memória;– Mapeamento de ficheiros na memória principal;– Outras funções usadas internamente pelo SO:
• Partilha da memória física entre diferentes processos e o próprio SO.
8
Slide Nº 15
Serviços de Gestão de Ficheiros e Directórios
• Criação e destruição de ficheiros/directórios• Leitura do conteúdo de ficheiros (listagem dos
ficheiros/directórios num directório)• Alteração do conteúdo de ficheiros/directórios• Alteração do nome de ficheiros/directórios• Alteração de atributos (e.g. dono, permissões) de
ficheiros/directórios • Visualização de atributos de ficheiros/directórios
Slide Nº 16
Serviços de Comunicação em Rede
• Suportam a comunicação entre processos em diferentes computadores: – Estabelecimento e terminação de canais de comunicação; – Configuração e inspecção do estado do canal de
comunicação; – Transmissão e recepção de mensagens.
• De facto, estes mesmos serviços podem ser usados na comunicação entre processos no mesmo computador (sem placa de rede)
9
Slide Nº 17
Serviços de Detecção/Notificação de Eventos
• Usados para comunicação: – Entre Processos; – Entre o SO e um processo.
• Tipo de eventos detectados pelo SO:– Expiração de temporização; – Erros internos na execução de processos.
Slide Nº 18
Serviços “Internos”
• Tipicamente, não são directamente acessíveis às aplicações
• Entrada/Saída (permitem aceder a dispositivos de E/S): – Portas série; – Placas gráficas; – Discos; – Placas de rede.
• Gestão de discos incluindo:– Alocação e libertação de blocos; – Escalonamento dos pedidos.
10
Slide Nº 19
Serviços de Autenticação e Controlo de Acesso
• Autenticação: Validar a identidade de um utilizador: – É essencial para proteger o acesso a recursos.
• Controlo de acesso: Limitar o acesso a recursos apenas às entidades autorizadas a fazelo : – Pressupõe autenticação; – É um serviço transversal: abrange todos os outros serviços.
Slide Nº 20
Sistemas Operativos Windows
• Diversos Sistemas Operativos da Microsoft para Computadores Pessoais:– Windows 95 / 98 / ME– Windows NT Workstation/ Windows 2000– Windows XP
• Características:– estruturas diferentes– ambientes de trabalho praticamente idênticos
11
Slide Nº 21
A Evolução dos SOs da MicrosoftMSMS--DOSDOS - Sistema Operativo
1981
1995
PC-DOS
MS-DOS 6.2
Hardware
Núcleo
Shell
Utilizador + Aplicações
WindowsWindows - Programa que fornece umAmbiente de Trabalho (gráficográfico)
1985
1990
Windows 1.0
Windows 3.0 Windows 3.2
Hardware
MS-DOS
Windows
Utilizador + Aplicações
Windows for Workgroups
Programa de Aplicação
Sistema Operativo
Fase 1:
Slide Nº 22
Windows 3.xx
Os íconesícones simbolizam ficheiros (dados/aplicação) e directorias
facilitando o facilitando o manuseamento de aplicaçõesmanuseamento de aplicações
Classificação: Software de Aplicação e não Sistema Operativo
12
Slide Nº 23
Sistemas Operativos WindowsWindows 9519951990 Windows NT
(New Technology)
Vocacionado para trabalhar em redes ou estações de trabalho
de “grande” capacidade
É um S.O. (não um ambiente) vocacionado para trabalhar em
computadores pessoais
Hardware
Windows 95
Utilizador + Aplicações
WindowsNT
Utilizador + Aplicações
Hardware
Slide Nº 24
Windows XP
Windows 2000 (Servidor / Cliente)
Windows NT1990
Windows NT 4.01997
1999
. . .Windows 951995
Windows 981998
Windows CE
Servidor
Cliente
Windows XP2002
Windows ME
Top Related