estudo dos sistemas operacionais.pptx

49
SISTEMAS OPERACIONAIS Introdução a Sistemas Operacionais 26/03/2022 Rocely Leite - Sistemas Operacionais 1

Transcript of estudo dos sistemas operacionais.pptx

Sistemas Operacionais

Sistemas OperacionaisIntroduo a Sistemas Operacionais04/03/2015Rocely Leite - Sistemas Operacionais1

1

ObjetivosIdentificar as funes e os componentes de um Sistema Operacional;Diferenciar os tipos de Sistemas Operacionais existentes;Identificar os modelos de estruturas existentes de Sistemas Operacionais;Compreender os modos de acesso e o funcionamento de uma chamada ao sistema ("system call");Compreender a importncia e o funcionamento dos mecanismos de interrupo;Compreender os fundamentos de sistemas concorrentes.04/03/2015Rocely Leite - Sistemas Operacionais2

IntroduoNesta aula, conheceremos as caractersticas de um Sistema Operacional e a importncia desse sistema em um ambiente computacional. Para isso, trataremos de dois conceitos muito importantes para o entendimento dos sistemas modernos: interrupes e chamadas ao sistema.Sero abordados, tambm, os principais tipos de Sistemas Operacionais e suas caractersticas.

Conceitos Fundamentais de Sistemas Operacionais;Classificao de Sistemas Operacionais;Estruturas dos Sistemas Operacionais Modernos;Interrupes;Conceitos de Concorrncia.04/03/2015Rocely Leite - Sistemas Operacionais3

Conceitos Fundamentais de Sistemas OperacionaisSistema Operacional um conjunto de programas (software) responsvel por:fazer a interface com os usurios;gerenciar recursos;fazer a interface com o hardware.04/03/2015Rocely Leite - Sistemas Operacionais4Funes adicionais: contabilizao de uso, segurana de acesso, auditoria.

Conceitos Fundamentais de Sistemas Operacionais04/03/2015Rocely Leite - Sistemas Operacionais5

O Sistema Operacional o intermdio entre o usurio e o hardware

Conceitos Fundamentais de Sistemas OperacionaisCada parte (mdulo ou funo) de um Sistema Operacional responsvel pelo gerenciamento de um recurso especfico.

Esses recursos so:Tempo de CPU;Espao em memria;Espao em disco;Acesso aos dispositivos de comunicao;Bibliotecas de software.04/03/2015Rocely Leite - Sistemas Operacionais6

Conceitos Fundamentais de Sistemas OperacionaisGerenciar recursos garantir a utilizao compartilhada do recurso sem que ocorram erros que possam gerar instabilidade ou falha no sistema.

Na viso do usurio, o Sistema Operacional fornece:Acesso ao sistema;Possibilidade de criar e gerir arquivos e diretrios;Ambiente para execuo de programas;Acesso aos dispositivos de E/S;Acesso ao contedo de arquivos;Deteco de erros.04/03/2015Rocely Leite - Sistemas Operacionais7

Classificao de Sistemas OperacionaisA classificao utilizada como uma forma sinttica de apresentar, em poucas palavras, as caractersticas de um Sistema Operacional.04/03/2015Rocely Leite - Sistemas Operacionais8Sistemas Monotarefa x Sistemas MultitarefaSistemas Monousurio x Sistemas MultiusurioSistemas Monoprocessados x Sistemas Multiprocessados

Classificao de Sistemas OperacionaisDefinem a capacidade de gerenciar mais de uma tarefa ao mesmo tempo.

Monotarefa: Admite e gerencia apenas uma tarefa em execuo por vez.Exemplo: DOS.

Multitarefa: Admite e gerencia vrias tarefas em processamento concorrente.Exemplo: Windows XP, Windows 7, Linux, MacOS.Rocely Leite - Sistemas Operacionais904/03/2015Sistemas Monotarefa x Sistemas Multitarefa

Classificao de Sistemas Operacionais04/03/2015Rocely Leite - Sistemas Operacionais10ExecutaEsperaExecutaEsperaMonotarefaExecutaEsperaExecutaEsperaEsperaExecutaEsperaExecutaMultitarefaPrograma APrograma B

Classificao de Sistemas OperacionaisDefinem a capacidade de gerenciar mais de um usurio ao mesmo tempo, compartilhando os mesmo recursos de software e hardware.

Monousurio: Admite e gerencia apenas um usurio no permite que mais de um usurio esteja "logado" simultaneamente.Exemplo: Windows XP, Windows NT (exceto verso com Terminal Server).

Multiusurio: Admite e gerencia vrios usurios permite que mais de um usurio esteja "logado" simultaneamente.Exemplo: Linux, VMS.Rocely Leite - Sistemas Operacionais1104/03/2015Sistemas Monousurio x Sistemas Multiusurio

Classificao de Sistemas Operacionais04/03/2015Rocely Leite - Sistemas Operacionais12Ateno:Todo Sistema Operacional Multiusurio , obrigatoriamente, Multitarefa, pois cada usurio representa, no mnimo, uma tarefa para ser executada.

Classificao de Sistemas OperacionaisPossuem a capacidade de reconhecer e gerenciar computadores com mais de um processador.

Monoprocessado: Somente reconhece e utiliza um processador.Exemplo: Windows 98.

Multiprocessado: Reconhece e utiliza mais de um processador.Exemplo: Windows XP, Windows 7, Linux.Rocely Leite - Sistemas Operacionais1304/03/2015Sistemas Monoprocessados x Sistemas Multiprocessados

Classificao de Sistemas OperacionaisSistemas em Tempo RealSistemas que possuem um forte vnculo com o tempo. O resultado s considerado correto se a execuo acontecer no tempo previsto.O sistema deve garantir que uma tarefa possua todos os recursos necessrios para sua execuo em um intervalo de tempo pr-definido.Rocely Leite - Sistemas Operacionais1404/03/2015Outros sistemas com finalidades especficasAteno:No se trata de velocidade de processamento, e sim de garantia de tempo de resposta.

Classificao de Sistemas OperacionaisSistemas EmbarcadosSistemas inseridos em produtos com funes especficas, como telefones celulares.Rocely Leite - Sistemas Operacionais1504/03/2015Outros sistemas com finalidades especficasAteno:Nem todo dispositivo eletrnico possui um microcontrolador, e nem todo aparelho com microcontrolador possui um Sistema Operacional.

Estruturas dos Sistemas Operacionais ModernosUm velho conhecido pelos usurios de microcomputadores a famosa "tela azul". Quem j utilizou sistemas operacionais antigos, como o Windows 95, certamente j se deparou com este problema. A "tela azul" era de fato uma violao de acesso que tornava o sistema instvel.04/03/2015Rocely Leite - Sistemas Operacionais16

Estruturas dos Sistemas Operacionais ModernosA partir do 80386, esse problema foi solucionado em termos de hardware atravs da possibilidade de 2 modos de execuo: o modo protegido e o modo real. Ficava a cargo do sistema operacional a comutao entre esses dois modos por questes de compatibilidade.

A instabilidade evidenciada pela "tela azul" tem razes histricas. Os primeiros processadores da linha x86 possuam um nico modo de operao: o modo real. Dessa forma, todas as operaes poderiam ser executadas diretamente pelas aplicaes que, ao produzir erros, geravam panes no sistema.04/03/2015Rocely Leite - Sistemas Operacionais17

Estruturas dos Sistemas Operacionais ModernosAs aplicaes so executadas em modo usurio, ou seja, modo que no possui privilgios para operaes que coloquem o sistema em risco, tais como, escrever no disco, criar novas tarefas, etc.Quando essas aplicaes precisam executar tarefas crticas, necessrio que haja uma mudana para modo Kernel (ncleo do Sistema Operacional, responsvel pelas tarefas crticas do sistema). Essa mudana ocorre atravs de uma "system call" (chamada ao sistema).Rocely Leite - Sistemas Operacionais1804/03/2015Modo Usurio x Modo KernelSystem Call (Chamada ao Sistema): Mecanismo responsvel pela mudana de modo usurio para modo kernel. Ao invs de executar diretamente funes no kernel, a aplicao executa uma funo intermediria, que verifica se o acesso ao kernel seguro e, s ento, completa a operao.

Estruturas dos Sistemas Operacionais ModernosVoltando "tela azul"...As aplicaes podiam executar diretamente as funes do kernel sem a proteo da mudana de modo, ou seja, o erro acontecia aps a execuo de uma funo do kernel. Com a mudana de modo, se a execuo no for segura, a aplicao ser impedida de continuar a execuo e o sistema permanecer estvel.04/03/2015Rocely Leite - Sistemas Operacionais19

Estruturas dos Sistemas Operacionais ModernosRocely Leite - Sistemas Operacionais2004/03/2015Exemplo do Linux de uma chamada ao sistema

Estruturas dos Sistemas Operacionais ModernosRocely Leite - Sistemas Operacionais2104/03/2015Exemplo do Linux de uma chamada ao sistema

setitimer(ITIMER_VIRTUAL, &timer, NULL);_syscall1(unsigned int, alarm, unsigned int, seconds)_system_cal()unsigned int alarm(unsigned int seconds)InvocaoWrapperHandlerRotina de servioMudana de Modo

Estruturas dos Sistemas Operacionais ModernosOs sistemas so classificados em relao s atribuies do kernel e a relao entre seus mdulos em monolticos, camadas e microkernel.Os sistemas modernos so divididos em dois grandes grupos:Arquitetura monoltica;Microkernel.

A diferena entre elas est nas atribuies do ncleo do Sistema Operacional, denominado KERNEL.Rocely Leite - Sistemas Operacionais2204/03/2015Tipos de Estrutura

Estruturas dos Sistemas Operacionais ModernosEssa caracterstica muito importante no projeto de um Sistema Operacional e foi alvo de discusso entre dois grandes nomes da computao: Andrew Tanenbaum e Linus Torvalds.De um lado, Torvalds defendia um kernel monoltico por ser mais rpido e, de outro, Tanenbaum defendia o microkernel pela elegncia e facilidade de adaptao e substituio de mdulos.Quem ganhou? Os dois.

Link: http://oreilly.com/catalog/opensources/book/appa.htmlRocely Leite - Sistemas Operacionais2304/03/2015Tipos de Estrutura

Estruturas dos Sistemas Operacionais ModernosTodo o kernel compilado e "linkado" em um nico bloco, tornando o cdigo eficiente, porm de difcil manuteno. A incluso ou excluso de um mdulo requer que todo o kernel seja recriado.Rocely Leite - Sistemas Operacionais2404/03/2015Arquitetura MonolticaNota:O kernel do Linux incorporou caractersticas modulares.

Estruturas dos Sistemas Operacionais ModernosRocely Leite - Sistemas Operacionais2504/03/2015Arquitetura Monoltica

Estruturas dos Sistemas Operacionais ModernosSomente as funes crticas fazem realmente parte do kernel. Demais funes so tratadas como tarefas e executam em modo usurio, fazendo chamadas ao kernel quando necessrio.Essa arquitetura simplifica a manuteno, incluso e excluso de mdulos do Sistema Operacional, no sendo necessrio gerar um novo kernel a cada modificao e nem mesmo reiniciar o computador para ativao e desativao do mdulo.Rocely Leite - Sistemas Operacionais2604/03/2015Arquitetura Microkernel

Estruturas dos Sistemas Operacionais ModernosRocely Leite - Sistemas Operacionais2704/03/2015Arquitetura Microkernel

InterrupesSo sinais de hardware fundamentais para a existncia de sistemas multitarefa, pois provocam a suspenso da tarefa em execuo pela ocorrncia de um evento externo, permitindo que outras tarefas compartilhem o tempo de uso do processador.04/03/2015Rocely Leite - Sistemas Operacionais28

ATENO:Neste caso, o que est sendo compartilhado o TEMPO DE USO do processador e NO o processador em si.Cada tarefa utiliza 100% do processador.

InterrupesParte do mecanismo executada pelo hardware (identificao do dispositivo, empilhamento dos registradores de sistema) e parte feita por software atravs da Rotina de Tratamento da Interrupo (interrupt handler).04/03/2015Rocely Leite - Sistemas Operacionais29

InterrupesAs interrupes so geradas por dispositivos de hardware e podem ocorrer de forma sncrona ou assncrona.04/03/2015Rocely Leite - Sistemas Operacionais30Relgio (temporizador) sncronaDispositivos de E/S (sinalizao de concluso) assncronaFalha de hardware (paridade de memria, erro de disco, etc.) assncrona

InterrupesO termo interrupo muitas vezes utilizado para qualquer atividade que suspenda a execuo de uma tarefa, mesmo que seja solicitada pelo prprio programa.Utilizaremos, para este fim, o termo "estado de exceo".

Estados de exceo: so provocados pela prpria aplicao.Estouro aritmtico;Diviso por zero;Instruo ilegal;Acesso no permitido;Chamadas ao sistema.04/03/2015Rocely Leite - Sistemas Operacionais31

Interrupes04/03/2015Rocely Leite - Sistemas Operacionais32ATENO:Mascaramento de interrupes: Capacidade de inibir a ao de uma interrupo. As interrupes de segurana no podem ser mascaradas.

InterrupesAs interrupes podem acontecer de forma sequencial ou em cascata.Rocely Leite - Sistemas Operacionais3304/03/2015Tipos de Interrupes

InterrupesUma interrupo s poder ser atendida se nenhuma outra estiver em atendimento.A Rotina de Servio desabilita as interrupes;Uma nova interrupo s tratada aps o retorno;A interrupo pode demorar a ser tratada, o que pode eventualmente ocasionar uma perda de dados;Finalizada a Rotina de Servio de Interrupo, o processador verifica por interrupes adicionais.Rocely Leite - Sistemas Operacionais3404/03/2015Interrupo Sequencial

InterrupesRocely Leite - Sistemas Operacionais3504/03/2015Interrupo Sequencial

InterrupesUma interrupo pode interromper a ao de uma rotina de tratamento de outra interrupo.Interrupes tm prioridade;Interrupes com alta prioridade interrompem Rotinas de Servio de Interrupes de menor prioridade.Rocely Leite - Sistemas Operacionais3604/03/2015Interrupo em Cascata

InterrupesRocely Leite - Sistemas Operacionais3704/03/2015Interrupo em Cascata

ConcorrnciaCompartilhar recursos significa que diferentes usurios ou programas usam os recursos de forma concorrente.

Os recursos so limitados e, assim, o uso dos mesmos pelos diferentes programas ou usurios precisa ser controlado e administrado de forma a evitar possveis conflitos ou uma alocao por tempo indeterminado de algum recurso.04/03/2015Rocely Leite - Sistemas Operacionais38

ConcorrnciaConcorrncia a capacidade de execuo concorrente de tarefas, permitindo um melhor aproveitamento de recursos.

Uma tarefa pode deixar a CPU por vontade prpria, quando precisa aguardar por um recurso, ou por uma interrupo.Em particular, uma interrupo de temporizador provoca a substituio da tarefa em execuo, criando uma alternncia entre as tarefas.04/03/2015Rocely Leite - Sistemas Operacionais39

Concorrncia04/03/2015Rocely Leite - Sistemas Operacionais40ATENO:A alternncia entre as tarefas pode dar a impresso de execuo simultnea de tarefas, mas no o que ocorre.

Introduo a Sistemas OperacionaisExerccios de Fixao04/03/2015Rocely Leite - Sistemas Operacionais41

Exerccios de FixaoSo funes do Sistema Operacional:Gerenciar recursos de hardware e fornecer um aplicativo para navegao na Internet.Gerenciar recursos de hardware e interface com o usurio.Interface com o usurio e correo ortogrfica.Gerenciar recursos de software e interromper uma tarefa em execuo.04/03/2015Rocely Leite - Sistemas Operacionais42

Exerccios de FixaoSo funes do Sistema Operacional:Gerenciar recursos de hardware e fornecer um aplicativo para navegao na Internet.Gerenciar recursos de hardware e interface com o usurio.Interface com o usurio e correo ortogrfica.Gerenciar recursos de software e interromper uma tarefa em execuo.04/03/2015Rocely Leite - Sistemas Operacionais43

Exerccios de FixaoPara que uma aplicao execute instrues privilegiadas dever executar um(a):Arquivo especfico para gerenciamento de hardware.Interrupo de hardware.Solicitao ao administrador do sistema.Chamada ao sistema.04/03/2015Rocely Leite - Sistemas Operacionais44

Exerccios de FixaoPara que uma aplicao execute instrues privilegiadas dever executar um(a):Arquivo especfico para gerenciamento de hardware.Interrupo de hardware.Solicitao ao administrador do sistema.Chamada ao sistema.04/03/2015Rocely Leite - Sistemas Operacionais45

Exerccios de FixaoO uso de interrupes permite a utilizao de:Sistemas concorrentes.Comunicao de dados.Dispositivos de hardware como, teclado e mouse.Bibliotecas de software04/03/2015Rocely Leite - Sistemas Operacionais46

Exerccios de FixaoO uso de interrupes permite a utilizao de:Sistemas concorrentes.Comunicao de dados.Dispositivos de hardware como, teclado e mouse.Bibliotecas de software04/03/2015Rocely Leite - Sistemas Operacionais47

Introduo a Sistemas OperacionaisExtras04/03/2015Rocely Leite - Sistemas Operacionais48

LinksNavegando pelo kernel do Linux - http://lxr.linux.no/

04/03/2015Rocely Leite - Sistemas Operacionais49