Академический Документы
Профессиональный Документы
Культура Документы
1- Introduo ao S.O
Objetivos da Disciplina
Identificar problemas encontrados no funcionamento
de um Sistema Operacional Conhecer as partes que compe o Sistema
Operacional.
Conhecer as principais falhas que ocorrem em Sistemas Operacionais. Distinguir o Sistema Operacional dos demais softwares de base.
Gerncia do Processador
oProcessos | Estados | Escalonamento | Deadlocks | Threads
Gerncia de Memria
oTipos| Alocao| Fragmentao | Swapping | Proteo
Gerncia de Arquivos
oArquivos| Diretrios| Acesso| Alocao| Sistemas de Arquivos
Gerncia de I/O
oHardware| Tipos de I/O| Camadas| Subsistemas |RAID|
6
Critrio Avaliativo
Provas Mensais = Atividades em sala (5,0) + Avaliaes(5,0) Atividades em sala Sero aplicadas atividades em todas as aulas sobre o referido contedo com entrega obrigatria ao professor (em dupla) Avaliaes Mensais Nas datas definidas sero aplicadas as provas mensais contemplando todo o contedo discutido at o momento. (individual) Avaliaes Bimestrais
Ttulo da apresentao
Bibliografias:
Livros textos recomendados: OLIVEIRA, Romulo Silva de; CARISSIMI, A. da S. e Toscani, S.S. Sistemas Operacionais. Porto Alegre: .Bookman, 2008. TANENBAUM, A S. Sistemas Operacionais Modernos. So Pauli: Prentice Hall Brasil, 2007. TANEMBAUM, A.S. e WOODHULL, A. Projetos e Implementao de Sistemas Operacionais. Porto Alegre:Bookman, 2008. Livros textos complementares: SILBERSCHATZ, A. Sistemas Operacionais com Java. Rio de janeiro: Campus, 2008. MACHADO, Francis B., MAIA, L. P. Arquitetura de Sistemas Operacionais. Rio de Janeiro: LTC, 2007. NEVES, J. C. Programao Shell para Linux. So Paulo.Brasport, 2010.
Ttulo da apresentao 8
Viso Geral
Sistema Operacional uma espcie de Gerente Executivo, que administra todos os componentes de SOFTWARE e HARDWARE.
HISTRIA
1940 Computadores de grande porte sem a necessidade de S.O 1950 Mainframes, empresas, dispositivos de E/S, S.O em lote, buffer, spooler 1960 Incio do sistema de tempo compartilhado. 1970 memria virtual, avano das linguagens de programao de alto nvel. 1980 firmware, multiprocessador e redes. 1990internet, multimdia, exploso de novos dispositivos 2000 Sistemas distribudos, necessidade de segurana, sistemas open source. 2010 sistemas mobile, mquinas virtuais e conectividade sem fio.
Conceitos Bsicos
Gerenciador de Dispositivos
Hardware
Basicamente CPU e DISPOSITIVOS de E/S MAINFRAME (IBM 360 - OS/390) MINICOMPUTADORES (PDP-8 OpenVMS) SUPERCOMPUTADORES (T-REX Unix) MICROCOMPUTADOR(PC, APPLE Windows/MacOs)
TIPOS DE S.O
LOTE antigos, sequenciais, independem do usurio. INTERATIVO vrias tarefas em tempo compartilhado. TEMPO REAL 1 ou mais processadores dedicados a uma nica tarefa. HBRIDOS mistura do LOTE e do INTERATIVO.
1. 2. 3. 4.
Qual a funo de um Sistema Operacional? Descreva com suas palavras a evoluo do S.O. Quais os subsistemas de um S.O? Descreva a evoluo do Hardware gerenciado pelo S.O. 5. Qual a principal diferena entre os Tipos de S.O?
2- Chamadas de Sistema
Sistema computacional
Tipos de servios
Execuo de programas: o sistema operacional recebe o nome do arquivo, aloca memria para o programa, copia o contedo para a memria principal e inicia sua execuo. Armazenamento de arquivos: permite a criao, escrita, leitura e excluso de arquivos, alm de operaes como renomear, obter o tamanho, data de criao e outras informaes a seu respeito. Acesso a perifricos: alocao, leitura, escrita e liberao, alm de obteno e alterao de informaes a seu respeito.
Tipos de servios
medida que diversos usurios compartilham o computador, passa a ser interessante saber quanto de mais recurso cada usurio necessita. Pode-se utilizar essa informao para calcular o valor a ser cobrado pelo uso do computador. Na busca de um melhor aproveitamento do hardware, diversos usurios podem compartilhar um computador.
Cabe ao sistema operacional garantir que cada usurio possa trabalhar sem sofrer interferncia danosa dos demais.
Chamadas de sistema
Os programas solicitam servios ao sistema operacional atravs das chamadas de sistema.
Elas so semelhantes s chamadas de sub-rotinas, contudo enquanto estas so transferncias para procedimentos normais do programa, as chamadas de sistema transferem a execuo para o sistema operacional.
Atravs de parmetros, o programa informa exatamente o que necessita e o retorno da chamada de sistema, assim como retorno de uma sub-rotina, faz com que a execuo do programa seja retomada a partir da instruo que segue a chamada. Exemplo: abertura de um arquivo.
Introduo aos Sistemas Operacionais
Chamadas de sistema
A parte do sistema operacional responsvel por implementar as chamadas de sistema normalmente chamada de ncleo ou kernel. Os principais componentes do kernel so a gerncia de processador, a gerncia de memria, o sistema de arquivos e a gerncia de entrada e sada. Muitos sistemas operacionais so implementados em camadas, primeiro um componente de software chamado microncleo ou microkernel implementa os servios mais bsicos associados a sistemas operacionais. Em cima do microkernel, usando seus servios, o kernel propriamente dito implementa os demais servios.
Introduo aos Sistemas Operacionais
Organizao do sistema
Programas de sistema
Os programas de sistema, alguma vezes chamados de utilitrios, so programas normais executados fora do kernel do sistema operacional. Esses programas implementam tarefas bsicas para a utilizao do sistema e muitas vezes so confundidos com o prprio sistema operacional. Como implementam tarefas essenciais para a utilizao do computador, so, em geral, distribudos pelo prprio fornecedor do sistema operacional. Exemplos so os utilitrios para manipulao de arquivos: programas para listar arquivo, imprimir, copiar, renomear, listar contedo de diretrio, entre outros.
Introduo aos Sistemas Operacionais
Interpretador de comandos
O mais importante programa de sistema o interpretador de comandos.
3- Processos e Threads
Processos e Threads
2.1 Processos 2.2 Threads 2.3 Comunicao interprocesso
31
Processos
O Modelo de Processo
Multiprogramao de quatro programas Modelo conceitual de 4 processos sequenciais, independentes Somente um programa est ativo a cada momento
32
Criao de Processos
Principais eventos que levam criao de processos:
1. Incio do sistema 2. Execuo de chamada ao sistema de criao de processos 3. Solicitao do usurio para criar um novo processo 4. Incio de um job em lote
33
Trmino de Processos
Condies que levam ao trmino de processos: 1. 2. 3. 4. Sada normal (voluntria) Sada por erro (voluntria) Erro fatal (involuntrio) Cancelamento por um outro processo (involuntrio)
34
Hierarquias de Processos
Pai cria um processo filho, processo filho pode criar seu prprio processo (Subprocessos) Formam uma hierarquia
UNIX chama isso de grupo de processos
35
Estado do Processo:
Palavra de Status de Processo Contedo do Registrador Memria Principal Recursos Prioridade do Processo Contabilidade
Threads
O Modelo de Thread (1)
(a) Trs processos cada um com um thread (b) Um processo com trs threads
38
39
CPU 1
Dispositivos de E/S 1
Memria
Principal
CPU 2
Dispositivos de E/S 2
Memria
Principal
40
CPU 3
Dispositivos de E/S 3
Memria
Principal
CPU 2
Dispositivos de E/S 2
CPU 3
41
Processo Produtor
B u f f e r
Processo Consumidor
QUIZ 3 - Processos
1. Qual a definio para Processo e quais seus estados? 2. Qual a origem e trmino de um Processo? 3. Relacione Processo e Thread. 4. Quais os tipos de Sincronismos de Processadores? Explique um deles. 5. Como pode ser feito o Sincronismo entre Processos?
4- Introduo a Escalonamentos
Escalonador de Processos
Tem por objetivo ordenar os processos em fila em busca de otimizar o uso do processador.
46
47
49
50
Tipos de Escalonamentos
Primeiro a chegar primeiro a ser atendido Programa menor primeiro Por Prioridade Menor tempo restante Rodzio Filas de Mltiplos Nveis
54
55
56
Por Prioridade
Sistemas em lote Definio de prioridades pelo adm Prioridades iguais aplica-se outro escalonamento Menor Prioridade ao longo do tempo e acessos externos
57
58
Rodzio
Sistemas interativos Focado em uso compartilhado Quantum de tempo Incrementado junto ao conceito FIFO
59
Separao de LOTE e INTERATIVO Separao de CPU e I/O Combinao de escalonamentos Fila por Prioridade Fila por decrscimo de prioridade Fila por decrscimo de quantum Fila por acrscimo de envelhecimento
61
Quiz 4 - Escalonamento
1. Para que servem os algoritmos de Escalonamento de um S.O? 2. Cite os 6 tipos descritos de Escalonamento e explique um deles. 3. Qual a diferena entre sistema Lote(nopreemptivo) e Interativo(preemptivo)? 4. Qual o papel do BCP no Escalonamento de um processo? 5. Qual a desvantagem de um Escalonamento do tipo MTR?
62
Escalonamento (Scheduling)
Uma vez que h diversos processo na fila de pronto, qual deles selecionar para o estado de execuo? o Poltica de Escalonamento! Base da gerncia do processador
Estado de Execuo
lo ca Es
Estado de Espera
Estado de Pronto
na me n to
Escalonamento
Funes bsicas da poltica de escalonamento: o Manter a CPU a mais ocupada possvel o Balancear o uso da CPU entre os processos o Privilegiar aplicaes crticas o Maximizar throughput (vazo) do sistema o Possibilitar tempos de resposta razoveis para aplicaes interativas (SO de tempo real)
Escalonamento
Cada SO possui sua poltica de escalonamento Escalonador (scheduler): rotina responsvel por implementar a poltica de escalonamento Dispatcher(expedidor): rotina responsvel pela troca de contexto depois que o escalonador determina qual processo vai para o estado de execuo o Tempo gasto para troca de contexto chamado de latncia do dispatcher Comportamento o mesmo tanto para processos quanto para threads no estado de pronto
Escalonamento
Critrios considerados na poltica de escalonamento:
o Utilizao da CPU
Desejvel maximizar Abaixo de 30%, carga baixa; acima de 90%, prximo da saturao (ateno!) o Throughput (rendimento)
Escalonamento
Critrios considerados na poltica de escalonamento:
o Tempo de Espera
Tempo total do processo na fila de pronto durante todo seu processamento, desejvel minimiz-lo o Tempo de Turnaround (virada) Tempo total do processo (incio a fim), desejvel minimiz-lo o Tempo de Resposta
Tempo entre uma requisio ao sistema e sua resposta (p/ex., digitao e sada no monitor)
Muitas vezes limitado pelos dispositivos de E/S
Escalonamento
Escalonamento no preemptivo:
Escalonamento FIFO
First-In-First-Out o Primeiro a entrar na fila de pronto selecionado para execuo
UCP
Estado de Espera
Escalonamento FIFO
Simples, porm apresenta deficincias:
Escalonamento SJF
Shortest-Job-First (menor trabalho primeiro) o Processo com menor tempo de processador a executar selecionado para execuo o Tende a reduzir o tempo mdio de espera (ver ex.)
Processo A
Processo B
Processo C
17
u.t.
Escalonamento SJF
Implementao se vale de estimativas para o tempo de execuo restante para os processo na fila de pronto o Estimativas levam em considerao execues anteriores de cada processo o Tende a reduzir o tempo mdio de espera (ver ex.) o Impossibilidade de estimar tempo de processador para aplicaes interativas Escalonamento considera apenas tempo de CPU na prxima vez que o processo for escalonado, no mais o tempo total at o trmino Estimativa baseada em mdia exponencial dos ltimos tempos de CPU
Escalonamento SJF
Escalonamento no-preemptivo
Escalonamento Cooperativo
Processo em execuo pode, voluntariamente, liberar processador e retornar fila de pronto Liberao do processador tarefa exclusiva do processo em execuo
o Processo em execuo verifica periodicamente se h processos na fila de pronto para saber quando deve liberar a CPU Demais processos no sero executados se processo em execuo no liberar a CPU
Escalonamento circular
Ou Round-Robin Scheduling o Escalonamento semelhante ao FIFO, porm preemptivo, onde dada uma fatia de tempo de execuo para cada processo e, ao final deste perodo, o processo vai para o final da fila de pronto
Fila dos processos no estado de Pronto Estado de Criao Estado de Trmino
UCP
Estado de Espera
Escalonamento circular
Especialmente projetado para uso em sistemas de tempo compartilhado Fatia de tempo chamada de time-slice ou quantum o Em geral, varia de 10 a 100 ms, dependendo do SO o Se o quantum for muito grande, comportamento ser semelhante poltica FIFO o Se quantum for muito pequeno, desempenho ser comprometido pelo nmero excessivo de preempes e conseqentes atrasos para troca de contexto
Escalonamento circular
Principal vantagem impedir o monoplio da CPU por algum processo o Tempo mximo de CPU igual ao time-slice definido no sistema Processos CPU-bound levam vantagem em relao a processos I/O-bound o Processos I/O-bound tm mais chance de entrar no estado de espera antes de usarem todo o time-slice
Prioridade P2
Estado de Criao
UCP
Estado de Trmino
Prioridade Pn
Estado de Espera
Estado de Criao
UCP
Estado de Trmino
Prioridade Pn
Estado de Espera
UCP
UCP
Menor Prioridade
Fila n (Circular)
106
Objetivo
Alocar espaos de memria para cada programa a ser executado e liberar esses espaos uma vez terminada a execuo.
107
Gerenciamento de Memria
Idealmente, o que todo programador deseja dispor de uma memria que seja
grande rpida no voltil
Hierarquia de memrias
pequena quantidade de memria rpida, de alto custo - cache quantidade considervel de memria principal de velocidade mdia, custo mdio gigabytes de armazenamento em disco de velocidade e custo baixos
108
Memria Contgua
Tamanho do programa limitado ao tamanho da memria fsica CPU muitas vezes ociosa Uma tarefa por vez Baixa utilizao do espao de memria disponvel
109
Tcnica de Overlay
Na alocao contgua simples, todos os programas esto limitados ao tamanho da rea de memria principal disponvel para o usurio. Uma soluo encontrada para o problema dividir o programa em mdulos, de forma que seja possvel a execuo independente de cada mdulo, utilizando uma mesma rea de memria. Essa tcnica chamada de overlay.
111
112
Proteo da Memria
processos no devem poder referenciar posies de memria em outros processos sem permisso em virtude da relocao, no possvel testar endereos em programas Implementa controle de proteo do sistema atravs de registrador (base e limite) que delimita a rea do Sistema Operacional e demais programas em execuo.
113
Fragmentao/Partio Fixas
Maior utilizao da CPU Fragmentao Interna Tamanho do programa limitado ao tamanho da partio Necessidade de manipulador de Proteo Desperdcio de memria Uma partio reservada para cada programa
114
PARTIES DINMICAS
No h desperdcio de memria dentro das Parties na primeira alocao. Carregamento de tarefas de forma contigua Fragmentao interna No faz fragmentao externa
116
117
118
119
120
122
Memria Virtual
Memria RAM utilizada de forma mais eficiente O tamanho de uma tarefa no se restringe mais ao tamanho da memria RAM S.O mais complexo Perda de performance do sistema com um todo.
123
HD
A relao entre endereos virtuais e endereos fsicos de memria dada pela tabela de pginas 125
SISTEMAS MODERNOS
PAGINAO PAGINAO SOB DEMANDA SEGMENTAO SEGMENTAO / PAGINAO SOB DEMANDA
126
PAGINAO
DISCO = setor MEMRIA= quadro de pgina ENDEREAMENTO=pgina Sobrecarga do sistema, mais endereos para gerenciar Programa inteiro na memria Melhor aproveitamento de memria Fragmentao interna na ltima pgina do programa
127
FIGURA- PAGINAO
PAGINAO
CHAVE DO SUCESSO EST NO TAMANHO DA PGINA Pgina muito pequena gera TMPs muito longas Pgina muito grande gera fragmentao interna excessiva.
129
PAGINAO
As 03 Tabelas de Controle:
TP (Tabela de Programa)
Tamanho do Programa / Posio de Memria
131
FLYN, 2002
132
Substituio de Pgina
FIFO Primeiro a Entrar Primeiro a Sair UMR Pgina Usada menos Recentemente
133
SEGMENTAO
Diviso por mdulos ou sub-rotinas de programao No mais trabalha em tamanhos fixos por pginas Alocao Dinmica Fragmentao Externa Necessidade de recompactao peridica
134
FIGURA SEGMENTAO
FLYN, 2002
135
136
FIGURA
FLYN, 2002
137
FLYN, 2002
138
139
140
Objetivo
Definir a forma pela qual os arquivos so organizados, armazenados e acessados.
141
INTROUDO
a parte mais visvel do sistema operacional Caminho para o acesso a informaes organizadas Link lgico entre o recurso fsico de armazenamento e o usurio, com grande usabilidade Elementos Principais: Arquivos e Diretrios
142
Definies
Campo: grupo de bytes correlatados (nome, tipo e tamanho) Registro: grupo de campos correlatados Arquivo: grupo de registro correlatados Diretrio: listagens de nomes e atributos de arquivos Volume: um ou mais discos fsicos Partio: diviso de lgica de um disco
144
Funes do Sistema
Manter o Registro de onde cada arquivo est armazenado Definir a forma de armazenamento Controlar os acessos Liberar o arquivo para outros usurios Controlar o espao fsico Oferecer suporte a diversos usurios (multiprogamao)
145
Exemplo
Bibliotecria
Usurios
147
Comando READ
Digitar READ Deslocar Cabeote Esperar latncia Rotacional Ativar Cabeote de Leitura Transferir Registro para a Memria Liberar Recurso
148
Conceito de Arquivo
a forma lgica definida pelo S.O para o armazenamento de informaes. Possuem:
Nome Atributos Estrutura Interna Tipo Mtodo de Acesso Operaes
149
Nome de Arquivos
Depender do tipo de S.O utilizado; Normalmente ser constitudo de um nome + extenso. Exemplo: aula.doc O nome relativo j a extenso indica o tipo de arquivo
150
Nomeao de Arquivos
Atributos de um Arquivo
Informaes sobre um arquivo:
Nome Tipo Localizao Tamanho Proteo Hora/Data
Estrutura de Arquivos
Sequencia de bytes
SO no interpreta o contedo do arquivo Interpretao a nvel do programa de aplicao
Sequencia de registros
Emprego raro Operaes lem/escrevem registros S.O interpreta como uma sequencia de registros (organizao interna de tamanho fixo)
153
Diretrios
154
156
Tipos de Arquivos
Regular (ASCII e Binrio) Diretrio (Estrutura) Arquivos Especiais (dispositivos de I/O)
157
MTODO DE ACESSO
Acesso Sequencial
Serial, do incio at encontrar o registro.
Acesso Direto
No necessita de ordenao prvia
158
159
FLYN, Ida M
160
Mtodos de Alocao
Contguas No Contguas
Encadeada Indexada
161
Armazenagem Contgua
Vantagens Simples implementao e manuteno (sequencial) Diretrio Enxuto Basta conhecer o endereo inicial e tamanho Permite o acesso direto Desvantagens Difcil expanso do arquivo Fragmentao
162
Funcionamento Contguo
FLYN, Ida M
163
Armazenagem Encadeada
Vantagens: Alocao aleatria; Garante o crescimento de arquivos Sem fragmentao Desvantagens: Diretrios com mais informaes Acesso de forma encadeada Menor confiabilidade No permite o acesso direto
164
Funcionamento Encadeada
FLYN, Ida M
165
Armazenagem Indexada
Vantagens: Acesso mais rpido Sem fragmentao Maior confiabilidade Permite o acesso direto Desvantagens No otimiza o espao de armazenagem (ndice) Implementao complexa
166
Funcionamento Indexado
FLYN, Ida M
167
Diretrios
Objetivo de organizar uma grande quantidade arquivos, formado de:
Atributos, Localizao, Controle de acesso e Utilizao
168
Organizao Linear
Diretrios Aula Trab Pess Jogos Music Fotos Filmes
Arquivos
Caractersticas:
Fcil implementao; Limitaes de nomeao de arquivos por usurios diferentes
169
Organizao em rvore
Diretrios Milton
ArquivosAlunos
Sub-diretrios Arquivos
FSOR
OC
Aula
Trab
Caractersticas: Implementao Complexa Maior controle de nomeao e organizao (Pathname) No compartilha arquivos
170
Organizao em Grafos
Milton ArquivosAlunos FSOR OC Aula Trab
Provas
171
172
173
Objetivo
Definir a forma pela qual os dados so transferidos entre os diversos dispositivos de uma arquitetura computacional.
174
INTROUDO AO HARDWARE
Perifricos so extenses de um computador permitindo sua funcionalidade Interfaces permitem a conexo de perifricos ao barramento principal do computador Controladoras realizam o controle de Entradas/Sadas dos perifricos de forma dedicada.
175
176
177
E/S Programada
Encaminha comandos E verifica constantemente Sua execuo
Executa comandos vindos da CPU e atualiza o estado de operao
RAM
CPU
CONTROLADORA
HD
178
RAM
CPU
CONTROLADORA
HD
179
RAM
CPU
CONTROLADORA
HD
180
182
Device Drivers
Interagir com o ncleo do S.O (subsistema de E/S) Desenvolvido pelo fabricante No modificam o ncleo do S.O Fornece todas as informaes pertinentes ao dispositivo para gerenciamento pelo ncleo. Realiza o gerenciamento do buffer e escalonamento.
183
Subsistema de E/S
Interagir com o driver para o controle especfico do dispositivo. Responsvel pela proteo de acesso Garante o desempenho dos dispositivos Funciona com interface para o aplicativos Define a forma de escalonamento
184
185
187
Discos Magnticos
So discos de plstico ou metal, geralmente de dimetro entre 5 e 10 polegadas e coberto, em ambos os lados, por uma superfcie magnetizvel.
188
Ilustrao HD
189
Discos magnticos
Trilha Setor
Cabeas
Discos
Conjunto de cabeas
Desempenho
Tempo de latncia:deslocamento para o setor Tempo de seek:deslocamento do cabeote para a trilha desejada Tempo de transferncia: tempo que leva a operao. Rotao por minuto: velocidade de giro do disco.
194
Referncias Bibliogrficas
Livros textos recomendados:
OLIVEIRA, Romulo Silva de; CARISSIMI, A. da S. e Toscani, S.S. Sistemas Operacionais. Porto Alegre: .Bookman, 2008. TANENBAUM, A S. Sistemas Operacionais Modernos. So Pauli: Prentice Hall Brasil, 2007. TANEMBAUM, A.S. e WOODHULL, A. Projetos e Implementao de Sistemas Operacionais. Porto Alegre:Bookman, 2008.
Livros textos complementares:
SILBERSCHATZ, A. Sistemas Operacionais com Java. Rio de janeiro: Campus, 2008. MACHADO, Francis B., MAIA, L. P. Arquitetura de Sistemas Operacionais. Rio de Janeiro: LTC, 2007. NEVES, J. C. Programao Shell para Linux. So Paulo.Brasport, 2010. FLYN, Ida M., Introduo aos Sistemas Operacionais. So Paulo: Pioneira, 2002
201