Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Sistemas Operacionais Teorico 01 02

Fazer download em pdf ou txt
Fazer download em pdf ou txt
Você está na página 1de 32

Sistemas Operacionais

Walter G Pedroso Jr, Ms.

Presentation_ID © 2008 Cisco Systems, Inc. All rights reserved. Cisco Confidential 1
Conteúdo programático - teórico
■ 1. Aspectos Gerais;
• O que é um Sistema Operacional;
• História dos Sistemas Operacionais, Conceitos de Sistema
Operacional;
• Estrutura do Sistema Operacional(Monolíticos, Camadas, Máquinas
Virtuais e Modelo cliente-servidor);

■ 2. Aspectos Gerais;
• Operações do Sistema; Gerência de processos; Gerência de
Memória;
• Gerência de Armazenamento; Proteção e Segurança; Sistemas
Distribuídos; Sistemas de Tempo real; Sistemas portáteis;

■ 3. Processos;

Presentation_ID 2
Conteúdo programático - teórico
■ 4. Agendamento de processos;
■ 5. Threads;
■ 6. Escalonamento de CPU;
■ 7. Sincronismo de Processos;
■ 8. Deadloks;
■ 9. Interface do Sistema de Arquivos;
■ 10. Implementação do Sistema de Arquivos;
■ 11. Estrutura de Armazenamento em Massa;
■ 12. Gerenciamento do Sistema de Arquivos.

Presentation_ID 3
Conteúdo programático - prática
■ 1. História do GNU/Linux; Filme RevolutionOS (Linux story);
■ 2. Distribuições; Instalação do Linux; Discos e partições de
disco Inicialização e Desligamento: Bootstrapping, Etapas
do processo de inicialização, Inicialização do Kernel,
Configuração de hardware, Processos de sistema,
Execução de scripts de inicialização, operação multiusuário,
Boot Loaders, LILO e GRUB, boot múltiplo, Reinicializando e
desligando(shutdown, halt, reboot, telinit e poweroff);
■ 3. Filesystems; Estrutura de diretórios no GNU/ Linux; Tipos
de Shell;

Presentation_ID 4
Conteúdo programático - prática
■ 4. Gerenciamento de Usuários: Poderes da Conta Root,
Adicionando Novos Usuários, su, arquivos /etc/passwd,
/etc/shadow, /etc/group, Nome de login, Senha criptografada,
UID, GID padrão, Shell de login, Adicionando usuários, Editando
os arquivos passwd e shadow, Configurando uma senha inicial,
Cofiguração de cota de disco, Eliminando usuários, Desabilitando
logins e Utilitários para gerenciamento de contas;
■ 5. Gerência de Arquivos e Diretórios; Sistema de Arquivos:
Montando e desmontando sistemas de arquivos, Organização da
árvore de arquivos, tipos de arquivos, diretórios, pipes e Links
simbólicos, atributos de arquivos, os bits de permissão, chmod,
chown;
■ 6. Configuração do Ambiente de rede: configuração do arquivo
/etc/network/interfaces; ifconfig; acesso remoto( ssh, scp);

Presentation_ID 5
Conteúdo programático - prática
■ 7. Gerência de pacotes; dpkg; apt-get; apt-cache; Arquivos
/etc/apt/sources.list e /etc/apt/apt.conf;
■ 8. Permissões de acesso e execução;
■ 9. Iniciando e parando serviços; Montagem e formatação de
mídias;
■ 10. Processos Periódicos: Cron: agendando comandos, formato
de arquivos crontab, gerenciamento de crontab, Limpando o
sistema de arquivos, Distribuição via rede de arquivos de
configuração, arquivos de log;
■ 11. Gerência de memória e processamento;
■ 12. Sistema de arquivos em rede: NFS.

Presentation_ID 6
1.1 Sistema Operacional

Presentation_ID © 2008 Cisco Systems, Inc. All rights reserved. Cisco Confidential 7
Sistema Operacional
Sistema Computacional

■ Hardware
• Provê os recursos básicos de computação (UCP, memória,
dispositivos de E/S);
■ Programas de aplicação
• Definem as maneiras pelas quais os recursos do sistema são
usados para resolver os problemas computacionais dos usuários
compiladores, sistemas de banco de dados, vídeo games,
programas financeiros, etc.);
■ Usuários
• Pessoas, máquinas, outros computadores.

Presentation_ID 8
Sistema Operacional
Sistema Computacional – Visão abstrata

Presentation_ID 9
Sistema Operacional

■ O Sistema Operacional

• possibilita o uso eficiente e controlado dos diversos componentes


de hardware do computador (unidade central de processamento,
memória, dispositivos de entrada e saída);

• implementa políticas e estruturas de software de modo a assegurar


um melhor desempenho do sistema de computação como um todo.

Presentation_ID 10
Sistema Operacional
Definição

■ Nome dado a um conjunto de programas que trabalham de


modo cooperativo com o objetivo de prover uma máquina
mais flexível e adequada ao programador do que aquela
apresentada pelo hardware sozinho;

o Interface de programação;

o Gerenciamento de recursos.

Presentation_ID 11
Sistema Operacional
Função

■ Prover um ambiente no qual os programas dos usuários


(aplicações) possam rodar;
• Que envolve:
o Definir um framework básico para a execução dos programas;
o Prover abstrações para as aplicações:
q File systems, Processes, threads, VM, containers, Naming
system, etc;
o Oferecer uma interface de programação para acesso aos
recursos .

Presentation_ID 12
Sistema Operacional
Organização
■ Núcleo (kernel)
• Responsável pela gerência do processador, tratamento de
interrupções, comunicação e sincronização entre processos;
■ Gerente de Memória
• Responsável pelo controle e alocação de memória aos processos
ativos;
■ Sistema de Arquivos
• Responsável pelo acesso e integridade dos dados residentes na
memória secundária;
■ Sistema de E/S
• Responsável pelo controle e execução de operações de E/S e
otimização do uso dos periféricos;
■ Interpretador de Comandos (shell) – CLI/GUI
• Responsável pela interface conversacional com o usuário.

Presentation_ID 13
Sistema Operacional
Organização

Presentation_ID 14
Sistema Operacional
Histórico
■ No começo não existia Sistemas Operacionais;
• O usuário era programador e operador da máquina ao mesmo
tempo;
■ Setup incluía carregar o compilador e o programa fonte,
salvar o programa compilado, carregar e link- editar o
programa executável;
■ O sistema operacional surge com o objetivo básico de
automatizar a preparação, carga e execução de programas;
■ Também torna-se fundamental para otimizar o uso dos
recursos de hardware pelos programas.

Presentation_ID 15
Sistema Operacional
Histórico

Presentation_ID 16
Sistema Operacional
Histórico
Geração Período Características Hardware
Execução automática de jobs JCL – Job HW de 2a
década de Control Language Ex: IAS, ATLAS, IBM geração, com
1a 701
50 circuitos
transistorizados
Primeiros sistemas de multiprogramação HW de 3a.
início da e hardware com multiprocessamento. geração, com
2a década de Sistemas de tempo real. circuitos
60 Ex: IBM OS/MTF, CTSS (IBM 7094), MCP
integrados.
(Burroughs 5000, etc.)
meados Sistemas multi-modo e de propósitos HW construído
dos anos gerais. Uso de memória virtual. Sistemas com tecnologia
60 a complexos e caros, à exceção do UNIX. VLSI
3a meados Primeiros computadores pessoais.
dos anos Ex: Multics (GE 645), TSS (IBM 360/67),
70 CDC Kronos (CDC 6000), RCA VMOS e
outros

Presentation_ID 17
Sistema Operacional
Histórico
Geração Período Características Hardware
meados Grandes sistemas de multiprocessamento, HW com suporte de
dos uso intensivo de teleprocessamento, microprogramação
anos 70 sistemas de memória virtual. Início da
4a
e início comercialização PCs Ex: MCP (Burroughs
dos B6700), VMS (VAX 11/760), MVS (IBM
anos 80 370), etc
Arquiteturas distribuídas, ambiente de redes Grande diversidade
Anos de computadores, máquinas virtuais, uso de HW de E/S, UCP
intenso de microcomputadores pessoais, e memórias de alta
5a interfaces visuais mais elaboradas. velocidade.
80 e
90 (Ex:DOS, MAC OS, Windows, Unix-like OS, Arquiteturas RISC
IBM OS/2,IBM VM/370)

Arquitetura microkernel e multithreading, HW para


sistemas multiplataforma, middleware, multiprocessamento
projeto orientado a objetos,, suporte a simétrico, HW para
Hoje computação móvel, etc. computação móvel e
Ex: Linux, Windows2000... 7, 8, Palm OS, ubíqua, sistemas
IOS , Android, Solaris, Unix SVR4 (... AIX), embarcados, IoT
Linux embarcado, VMs, Containers, etc.
Presentation_ID 18
Sistema Operacional
Tipos - Sistemas Mainframes

■ Primeiros sistemas computacionais usados na resolução de


problemas comerciais e aplicações científicas;
■ Nos dias atuais, são projetados para processamento de
grande volume de dados;
■ Arquitetura de hardware complexa;
■ Trabalham em multimodo (usualmente “batch” e “time-
sharing”).

Presentation_ID 19
Sistema Operacional
Tipos - Sistemas Desktop
■ Caracterizado pelo uso de computadores pessoais;
■ Diferentemente dos sistemas mainframes, é um sistema de
computação geralmente dedicado à um único usuário;
■ Dispositivos típicos de E/S: teclado, mouse, monitor,
pequenas impressoras;
■ Apresenta conveniência para o usuário, com um bom
tempo de resposta e uma boa taxa de processamento com
um custo relativamente baixo;
■ Pode rodar diferentes tipos de S.O. :
• Linux;
• macOS;
• MS-Windows.

Presentation_ID 20
Sistema Operacional
Tipos - Sistemas Handheld

■ Sistemas operacionais adaptados para dispositivos móveis,


como Smartphones e Tablets;
■ No início: memória limitada, processador mais lento e display
de pequenas dimensões;
■ S.O. e aplicações projetados para minimizar o uso do
processador (redução do consumo da bateria);
■ Uso possível de tecnologias wireless, como Bluetooth e wi-
fi, para acesso remoto a outros dispositivos e internet;
■ Grande variedade de acessórios que expandem a sua
funcionalidade.

Presentation_ID 21
Sistema Operacional
Tipos - Sistemas embarcados
■ Limitações ainda maiores de memória, processamento,
consumo de energia e confiabilidade;
■ Como exemplos tempos Sistemas operacioanis para IoT –
Internet das Coisas;
• TinyOs;
• FreeRTOS;
• Contiki;

■ Normalmente são sistemas operacionais reprojetados para


as funções específicas.

Presentation_ID 22
Sistema Operacional
Tipos – Sistemas de Lotes (Batch)
■ Primeiro tipo de sistema operacional;
• Job é o conceito básico: constituído do programa a ser compilado e
executado, acompanhado dos dados;
• Jobs semelhantes são organizados em lotes, de modo a reduzir o
tempo de setup;
■ Sequenciamento automático de jobs, com transferência
automática de controle de um job para outro
(processamento sequencial);
■ Inexistência de computação interativa;
■ Número de tarefas processadas por unidade de tempo é alta
devido à sequencialidade, sem interrupção;
■ Tempo médio de resposta pode ser muito alto
• Como exemplo: presença de jobs grandes à frente de jobs
pequenos.

Presentation_ID 23
Sistema Operacional
Tipos – Sistemas de Lotes (Batch)

■ Layout de ocupação da memória principal:

Sistema Operacional
Job 1
Job 2
Job 3
Job 4

Presentation_ID 24
Sistema Operacional
Tipos - Sistemas de Tempo Compartilhado
■ A capacidade e o tempo de processamento da máquina é
dividida entre múltiplos usuários;
■ Uso da técnica de multiprogramming + time sharing para a
manipulação de múltiplos jobs interativos;
• Surgiram os sistemas com memória virtual (Jobs eram
constantemente “trocados” entre memória e disco - swap);
■ Tempo de resposta deve ser baixo.
■ Número de tarefas processadas/por tempo também deve
ser baixo;
■ Arquitetura mais complexa e de propósito geral.

Presentation_ID 25
Sistema Operacional
Tipos - Sistemas de Tempo Real
■ Sistemas dedicados a uma classe de aplicação crítica;
• Por exemplo: controle e medição;
o sistemas de controle industriais;
o sistemas robóticos;
o sistemas de realidade virtual;
o automação doméstica;
• QNX;
• CMX-RTX;
• LynxOS;
• RTMX;
■ Possuem restrições temporais bem definidas (o tempo de resposta é
considerado crítico).
■ Hard Real-Time;
• Geralmente implementado por sistemas operacionais específicos para essa
finalidade;
■ Soft Real-Time;
• Para aplicações que requerem características avançadas de sistemas
operacionais (multimídia, realidade virtual), mas que não são críticas.

Presentation_ID 26
Sistema Operacional
Classificação

■ Quanto ao número de usuários:


• Monousuário;
• Multiusuário;
■ Quanto ao número de tarefas:
• Monotarefa;
o Não suportam multiprogramação;
• Multitarefa;
o Multiprogramação + Time Sharing.

Presentation_ID 27
Sistema Operacional
Classificação - Monoprogramação

■ Os recursos computacionais estão inteiramente dedicados à


um único programa/tarefa;
■ A UCP fica ociosa durante muito tempo enquanto o programa
aguarda por um evento:
• digitação de um dado;
• leitura do disco;
• Entre outros;
■ A memória principal é subutilizada caso o programa não a
preencha totalmente;
■ Os periféricos são dedicados a um único usuário;
■ Não existe grandes preocupações com a proteção de
memória;
■ A complexidade de implementação é relativamente baixa.
Presentation_ID 28
Sistema Operacional
Classificação - Multiprogramação
■ O objetivo é manter mais de um programa em execução
“simultaneamente”, dando a ilusão de que cada programa ou
usuário tem a máquina dedicada para si;
■ A ideia é tirar proveito do tempo ocioso da UCP durante as
operações de E/S. Enquanto um programa espera por uma
operação de leitura ou escrita os outros podem estar sendo
processados no mesmo intervalo;
• Maximização do uso do processador e da memória;
• Maior taxa de utilização do sistema como um todo (redução do custo total
máquina/homem);
• Suporte de hardware:
o Proteção de memória;
o Mecanismo de interrupção (sinalização de eventos);
o Discos magnéticos (acesso randômico aos programas, melhor
desempenho em operações de E/S) para implementação de memória
virtual.

Presentation_ID 29
Bibliografia

Presentation_ID © 2008 Cisco Systems, Inc. All rights reserved. Cisco Confidential 30
Bibliografia
Básica
■ Silberschatz, Abraham.;Galvin, Peter Baer.; Gagne, Greg .;
Sistemas Operacionais com Java. Rio de Janeiro:Elsevier,
2008.

■ Mota Filho, João Eriberto. Descobrindo o Linux – Entenda o


sistema operacional GNU/Linux – 2. ed. São Paulo: Novatec
Editora, 2007

■ Tanenbaum, Andrew S.; Woodhull, A. S. Sistemas


Operacionais. Porto Alegre: Bookman, 2003.

Presentation_ID 31
Bibliografia
Complementar
■ Neves, Julio Cezar. Programação Shell Linux – 7. Ed.: Rio de
Janeiro: Brasport, 2008.

■ Nemeth, Evi; Snyder, Garth; R. Hein, Trent. Manual Completo


do Linux, Guia do Administrador – 2. Ed.: Makron Books,
PEARSON, 2007.

■ E. Ferreira, Rubem, Gerenciamento de Pacotes de Software no


Linux: São Paulo: Novatec Editora, 2006.

■ Marcelo, Antonio. Squid – 5.ed: Rio de Janeiro: Brasport, 2006.

■ Mota Filho, João Eriberto. Descobrindo o Linux – Entenda o


sistema operacional GNU/Linux – 2. ed. São Paulo: Novatec
Editora, 2007.
Presentation_ID 32

Você também pode gostar