introdução sistemas operacionais
TRANSCRIPT
-
8/16/2019 Introdução Sistemas Operacionais
1/3
Sistemas Operacionais
Sistemas Operacionais, além de extremamente complexos e importantes,
coordenam (permitem trabalho simultâneo entre usuários) e padronizam serviços
(simplifcam programaço e uso)! So compostos por" mem#ria (principal e
secundária), processos, $%S e proteço! & tido como um programa governo 'ue
controla a interaço entre usuários e hardare e entre os pr#prios usuários! Seu
hardare no corresponde de ato a interace utilizada pelo usuário e permite
executar um mesmo programa em vários ambientes dierentes! *ealiza o acesso +
recursos de modo a garantir seu total uso e a proteger usuários uns dos outros!
o longo do tempo, os SOs oram ortemente modifcados! -a primeira ase,
correspondiam a programaço com cart.es peruradas e chaves de painel! /omo a
presença do usuário tinha 'ue acontecer a todo momento, a má'uina esperava pelo
homem%cart.es e vice0versa! 1epois veio o conceito de multiprogramaço, em 'ue
vários programas so carregados na mem#ria ao mesmo tempo, com uma utilizaço
mais efciente da má'uina! 2as passou a ser muito complicado e ainda necessitar de
o computador esperar pelo usuário (escalonamento e 'uase todos os componentes)!
/om a introduço do conceito de interatividade, base dos SOs modernos, usuários
passam a acessar a /34 diretamente conectados a terminais on0line! $scalonamento
e proteço passam a ser cr5ticos, mas a alta de disciplinas dos programadores torna0
se um problema! 1epois, com sistemas paralelos distribu5dos, entra a 'uesto de
menos de um usuário por sistema, multiprocessadores e a importância do acesso +
rede (acesso aos recursos)! $ por fm, os sistemas modernos so enormes e
complexos, com milhares de linhas de c#digos e dierentes tipos de usuários! -uncaesto completamente sem erros e seu comportamento é di5cil de prever! Sistemas
Operacionais so compostos por Gerência de Processos, Comunicação entre
Processos, Gerencia de memória, Sistemas de Arquivos, de E/S e Sistemas
de Proteção.
*esumindo, um sistema operacional é uma coleço de programas para gerenciar as
unç.es do processador, o input, o output, o armazenamento e o controle dos
dispositivos! O sistema operacional tem todos os comandos básicos 'ue os
aplicativos vo usar, em vez de ter todas estas unç.es reescritas para cada
aplicativo!
Gerência de Processos
ideia de executar vários programas ao mesmo tempo, vem da razo de tudo
acontecer num mesmo momento nos sistemas! $ntradas e sa5das, aç.es de
m6ltiplos usuários, passagem de tempo, etc! lém disso, permite 'ue vários usuários
utilizem a má'uina ao mesmo tempo e permitem 'ue tareas se7am executadas mais
rapidamente, utilizando multiprocessadores! execuço de um programa mais os
dados usados por ele so conhecidos como Processos. 4m processo é um 8uxo de
controle se'uencial e seu espaço de endereçamento! 3rocessos so executadosse'uencialmente e podem interagir com registradores, mem#ria usada e ar'uivos!
-
8/16/2019 Introdução Sistemas Operacionais
2/3
3rogramas e processos so dierentes" programas so c#digos e processos so as
execuç.es dos mesmos! O mesmo programa executado por dois usuários gera dois
processos e um programa pode chamar vários processos! 3rocessos so divididos em
fuxo de controle (parte ativa) e esaço de endereçamento (parte passiva)! 4m
!"#EA$ consiste no 8uxo de controle! & mais efciente utilizar vários threads no
mesmo espaço de endereçamento, pois os processos utilizam dados compartilhados
e espaço de endereçamentos so muito caros!
9 4m processo é uma tarea com um 6nico thread!9 4ma tarea pode conter vários threads!9 -o há proteço entre threads de uma mesma tarea:9 4m thread pertence a uma 6nica tarea!
;areas contém espaço de mem#ria virtual e ambiente (ar'uivos, nomes, etc)
en'uanto threads possuem registradores (incluindo 3/) e pilha de execuço (Stac
-
8/16/2019 Introdução Sistemas Operacionais
3/3
9 3ol5ticas"@ 3reemptivas A no preemptivas@ BCBO@ SDB@ *ound0robin (6nico sem problema de starvation)@ 3rioridades
@ Bilas m6ltiplas9 2étodos de valiaço"@ nal5ticos (con7unto fxos de processos)@ ;eoria de flas (métodos estat5sticos)@ Simulaço (implementaço de modelo)@ Eerifcaço automática (grao 0 resultado garantido)
Comunicação/sincroni*ação de rocessos
/om grande re'u>ncia, os processos precisam se comunicar uns com os outros, pois
muitas vezes, eles compartilham ou trocam dados entre si! $ssa comunicaço
precisa ocorrer sem interrupç.es, pois este tipo de alha limita o desempenho e
aumenta a complexidade! 3roblemas de sincronizaço so causados por alta de
comunicaço! 3or exemplo, #ace Conditions! parte do programa 'ue gera essa
condiço é conhecida como re)ião crtica. 3ara evitar *ace /onditions, podemos
utilizar a exclusão m(tua, em 'ue se assegura 'ue outros processos se7am
impedidos de usar uma variável ou um ar'uivo compartilhado 'ue 7á estiver em uso
por outro processo! $xistem várias maneiras de se obter excluso m6tua, mas a
maioria envolve loc