• Nenhum resultado encontrado

Informática. Sistemas Operacionais. Professor Márcio Hunecke.

N/A
N/A
Protected

Academic year: 2021

Share "Informática. Sistemas Operacionais. Professor Márcio Hunecke."

Copied!
8
0
0

Texto

(1)

www.acasadoconcurseiro.com.br

Informática

Sistemas Operacionais

(2)
(3)

www.acasadoconcurseiro.com.br 3

Informática

SISTEMAS OPERACIONAIS

Sistema operacional é um programa ou um conjunto de programas cuja função é gerenciar os recursos do sistema (definir qual programa recebe atenção do processador, gerenciar memória, criar um sistema de arquivos, etc.), fornecendo uma interface entre o computador e o usuário. Embora possa ser executado imediatamente após a máquina ser ligada, a maioria dos compu-tadores pessoais de hoje o executa através de outro programa armazenado em uma memória não-volátil ROM chamado BIOS num processo chamado "bootstrapping", conceito em inglês usado para designar processos autossustentáveis, ou seja, capazes de prosseguirem sem ajuda externa. Após executar testes e iniciar os componentes da máquina (monitores, discos, etc), o BIOS procura pelo sistema operacional em alguma unidade de armazenamento, geralmente o Disco Rígido, e a partir daí o sistema operacional "toma" o controle da máquina. O sistema operacional reveza sua execução com a de outros programas, como se estivesse vigiando, con-trolando e orquestrando todo o processo computacional.

Um sistema operacional é projetado para ocultar as particularidades de hardware (ditas "de baixo nível") e, com sua atuação, criar uma máquina abstrata que fornece às aplicações e servi-ços compreensíveis ao usuário (ditas "de alto nível")

Existem vários sistemas operacional, entre eles, os mais utilizados no dia a dia em computadores domésticos, são o Windows, Linux e MacOS.

Um computador com o sistema operacional instalado poderá não dar acesso a todo o seu conteúdo dependendo do usuário. Existem dois tipos de contas que podem ser criadas num sistema operacional, as contas de Administrador e as contas limitadas. A conta Administrador é uma conta que oferece todo o acesso à máquina, desde a gestão de pastas, ficheiros e software de trabalho ou entretenimento ao controle de todo o seu Hardware instalado. A conta Limitada é uma conta que não tem permissões para aceder a algumas pastas ou instalar software que seja instalado na raiz do sistema ou então que tenha ligação com algum Hardware que altere o seu funcionamento normal ou personalizado pelo Administrador. Para que este tipo de conta possa ter acesso a outros conteúdos do disco ou de software, o administrador poderá perso-nalizar a conta oferecendo permissões a algumas funções do sistema como também poderá retirar acessos a certas áreas do sistema.

Sistemas operacionais modernos

Um sistema computacional moderno consiste em um ou mais processadores, memória principal, discos, impressoras, teclado, mouse, monitor, interfaces de rede e outros dispositivos de entrada e saída. Enfim, é um sistema complexo. Se cada programador de aplicações tivesse de entender como tudo isso funciona em detalhes, nenhum código chegaria a ser escrito. Além disso, gerenciar todos esses componentes e usá-los de maneira otimizada é um trabalho

(4)

extremamente difícil. Por isso, os computadores têm um dispositivo de software denominado sistema operacional, cujo trabalho é fornecer aos programas do usuário um modelo de computador melhor, mais simples e mais limpo e lidar com o gerenciamento de todos os recursos mencionados.

Funções de um Sistema Operacional

Gerenciamento de processos

O sistema operacional multitarefa é preparado para dar ao usuário a ilusão que o número de processos em execução simultânea no computador é maior que o número de processadores instalados. Cada processo recebe uma fatia do tempo e a alternância entre vários processos é tão rápida que o usuário pensa que sua execução é simultânea.

São utilizados algoritmos de escalonamento para determinar qual processo será executado em determinado momento e por quanto tempo.

O sistema operacional, normalmente, deve possibilitar o multiprocessamento (SMP ou NUMA). Neste caso, processos diferentes e threads podem ser executados em diferentes processado-res. Para essa tarefa, ele deve ser reentrante e interrompível, o que significa que pode ser inter-rompido no meio da execução de uma tarefa.

Gerenciamento de memória

O sistema operacional tem acesso completo à memória do computador e deve permitir que os processos dos usuários tenham acesso seguro à memória quando o requisitam.

Dentro de gerenciamento de memória, pode não ser possível manter todos os processos em me-mória, muitas vezes por não existir memória suficiente para alocar aquele processo. Para solucio-nar esse problema existe um mecanismo chamado swapping (memória virtual), onde a gerência de memória reserva uma área do disco para o seu uso em determinadas situações, e um processo é completamente copiado da memória para o disco; este processo é retirado da fila do processa-dor e mais tarde será novamente copiado para a memória; então, o processo ficará ativo na fila novamente. O resultado desse revezamento no disco é que o sistema operacional consegue exe-cutar mais processos do que caberia em um mesmo instante na memória. Swapping impõe aos programas um grande custo em termos de tempo de execução, pois é necessário copiar todo o processo para o disco e mais tarde copiar novamente todo o processo para a memória. Em siste-mas onde o usuário interage com o programa durante sua execução, o mecanismo de swapping é utilizado em último caso, quando não se é possível manter todos os processos na memória, visto que a queda no desempenho do sistema é imediatamente sentida pelo usuário.

(5)

Informática – Sistemas Operacionais – Prof. Márcio Hunecke

www.acasadoconcurseiro.com.br 5

Gerenciamento de recursos

Uma das tarefas com extrema importância atribuída ao sistema operacional é o gerenciamento de recursos, que tem a função de definir políticas para gerenciar o uso dos recursos de hardwa-re pelos aplicativos, hardwa-resolvendo disputas e conflitos. Vários programas de entrada de dados competem pela vez na CPU (Unidade Central de Processamento) e demandam memória e es-paço em disco. O sistema operacional tem a função de cuidar de cada aplicativo e para que os mesmos tenham recursos necessários para o melhor funcionamento e gerencia a capacidade limitada do sistema para que possa atender todas as necessidades de aplicativos e usuários.

Entrada e saída de dados

Sistemas operacionais controlam e gerenciam a entrada e saída (E/S) de dispositivos por três razões. Primeiro, porque a maioria do hardware do dispositivo utiliza uma interface de baixo ní-vel, a interface do software é complexa. Em segundo lugar, porque um dispositivo é um recurso compartilhado, um sistema operacional fornece acesso de acordo com as políticas que tornam a partilha justa e segura. Em terceiro lugar, um sistema operacional define uma interface de alto nível que esconde detalhes e permite que um programador possa usar um conjunto coe-rente e uniforme das operações ao interagir com os dispositivos.

Sistema de arquivos

A memória principal do computador é volátil, e seu tamanho é limitado pelo custo do hardwa-re. Assim, os usuários necessitam de algum método para armazenar e recuperar informações de modo permanente.

Um arquivo é um conjunto de bytes, normalmente armazenado em um dispositivo periférico não volátil (p.ex., disco), que pode ser lido e gravado por um ou mais processos.

O Sistema de Arquivo é o modo como os dados serão organizados e listados no disco. É como se o sistema operacional tivesse uma "lista" com os dados que serão acessados no disco, para ficar mais fácil localizá-los depois; se os dados estiverem bem listados e bem organizados no disco rígido, a busca posterior desses dados será mais ágil e mais fácil, além de ficar bem mais rápido. Como os dados serão localizados pelo sistema operacional, ele quem definirá o melhor modo de organização e listagem. É como se fosse um "mapa" para encontrar dados dentro do disco rígido, daí o sistema operacional vai direto na parte onde o dado está alocado, ao invés de abrir todos os dados para verificar qual é o solicitado.

Principais sistemas de arquivos utilizados no Windows são FAT, FAT32 e NTFS e no Linux EXT3, EXT4 e RaiserFS.

Interface de uso

Os sistemas operacionais fornecem abstração de hardware para que seus recursos possam ser usados de maneira correta e padronizada, mas para ser possível operar um computador, é ne-cessário fornecer também uma interface para que o usuário possa desfrutar dos recursos do sistema. Atualmente as principais interfaces de uso são as seguintes:

(6)

Interface de terminal (Linux)

A interface de terminal, também chamada de interface de linha de comando ou "CLI" (Com-mand Line Interface) funciona exclusivamente com o teclado. Os co(Com-mandos são digitados a par-tir de um prompt e são interpretados por um interpretador de comandos, conhecidos também por shells, bastante comuns em sistemas padrão POSIX. Um exemplo de interpretador de co-mandos seria o Bash.

Usada geralmente por usuários avançados e em atividades específicas, como gerenciamento remoto, utiliza poucos recursos de hardware em comparação a interface gráfica.

Interface textual

Assim como a interface de terminal, a inter-face textual também é baseada em texto, po-rém também tem à disposição um ambiente de trabalho composto por menus, janelas e botões. Esse tipo de interface tinha um uso difundido em aplicações baseadas n o MS--DOS, que, inclusive, nas versões mais re-centes contava com um gerenciador de pro-gramas e arquivos baseados nesse tipo de interface (o DOS Shell). Atualmente essa in-terface é muito rara, praticamente restrita a

sistemas implementados na década de 1980 e início da década de 1990. Esse ambiente ainda prescinde do uso mouse, embora seja possível usá-lo através do uso de bibliotecas no desen-volvimento dos softwares.

Interface gráfica (Windows)

Nesse tipo de interface, também chamada GUI (Graphic User Interface) além de menus, janelas e botões também existem figuras, tanto vetoriais quanto fotografias. O usuário interage com esse tipo de interface usando o mouse, podendo também usar o teclado e teclas de atalho, ou então usando toques e gestos em touchscreens. A interface gráfica permite atuar com algumas aplicações que seriam impossíveis através da linha de comando puramente, como edição de imagem e vídeo. Acrescentar facilidade de uso e agilidade é o objetivo da interface gráfica, tendo a desvantagem de consumir muito mais memória que interfaces de linha de comando. Ao contrário das interfaces textuais e de terminal, as interfaces gráficas dependem de um módulo gráfico para funcionar e se comunicar com o sistema, e no caso dos sistemas para desktops e laptops, inclui um gerenciador de janelas em muitos casos, para que seja possível usar mais de um aplicativo na mesma tela. Em sistemas padrão POSIX é comum existir mais de um ambiente gráfico para o mesmo sistema, podendo ser escolhido a critério do usuário.

Interface de voz

Interfaces de voz, ou VUI (Voice User Interface), são aquelas em que o usuário interage com o sistema por meio de comandos sonoros. Sendo de desenvolvimento relativamente recente, tem sua aplicação em dispositivos adaptados para cegos e recentemente têm aparecido também para uso geral em smartphones, tablets e desktops.

(7)

Informática – Sistemas Operacionais – Prof. Márcio Hunecke

www.acasadoconcurseiro.com.br 7

Classificações em relação ao seu projeto (arquitetura)

Núcleo monolítico ou monobloco: o núcleo consiste em um único processo executando numa memória protegida (espaço de núcleo) executando as principais funções. Ex.: MAC OS X, OS/2, Windows, Linux, FreeBSD.

Micronúcleo ou modelo cliente-servidor: o núcleo consiste de funções mínimas (comunicação e gerenciamento de processos), e outras funções, como sistemas de arquivos e gerenciamento de memória, são executadas no espaço do usuário como serviços; as aplicações (programas) são os clientes. Ex.: GNU Hurd, Mach.

Sistema em camadas: funções do núcleo irão executar em camadas distintas, de acordo com seu nível de privilégio. Ex.: Multics.

Monitor de máquinas virtuais: fornece uma abstração do hardware para vários sistemas ope-racionais. Ex.: VM/370, VMware, Xen.

Quanto ao gerenciamento de processos

Monotarefa: pode-se executar apenas um processo de cada vez Ex.: MS-DOS.

Multitarefa: além do próprio SO, vários processos de usuário (tarefas) estão carregados em me-mória, sendo que um pode estar ocupando o processador e outros ficam enfileirados, aguar-dando a sua vez. O compartilhamento de tempo no processador é feito de modo que o usuário tenha a impressão que vários processos estão sendo executados simultaneamente. Cada pro-cesso recebe um tempo para ser executado. Ao final desse tempo, outro propro-cesso é executado. Essa alternância de processos chama-se concorrência.

Multitarefa cooperativa: Executa dois ou mais programas em simultâneo, mas o programa que está em primeiro plano tem controle sobre o processador. Neste caso se este programa falhar bloqueia o computador e tem que ser reiniciado. Exemplo de SO: Windows 3.x e versões ante-riores ao Mac OS 8.

Multitarefa preemptiva: É o processador que controla a execução dos programas, desta forma permite ao sistema operacional recuperar o controlo caso um programa bloqueie. O usuário perde os trabalhos do programa que falhou, mas os restantes programas continuam a traba-lhar. Exemplo de SO: Unix; Linux; Windows 95 e superiores; MAC OS 8 e superiores; etc.

Elemento de lista com marcas: Ex.: OS/2, Windows, Linux, FreeBSD e o Mac OS X. Cabe desta-car que processos só podem estar executando simultaneamente caso o sistema seja multipro-cessado, já que, em que cada instante de tempo, apenas um processo está em execução em um processador ou núcleo de processamento (core).

Multiprocessamento: o SO distribui as tarefas entre dois ou mais processadores. Se os proces-sadores estivem na mesma máquina física, o sistema é chamado de Sistema Multiprocessado Fortemente Acoplado. Caso esteja em máquinas diferentes, trata-se de um Sistema Multipro-cessado Fracamente Acoplado.

(8)

Quanto à quantidade de usuários concorrentes

Monousuário: apenas um usuário por vez (apesar de poder suportar recursos como troca de usuário). Ex.: Windows. Esse também pode ser acessado por terminais e conexão remota. Multiusuário: vários usuários usam o computador ao mesmo tempo, seja por diversos termi-nais, seja por conexão remota como o SSH. Ex.: Linux, Unix.

Referências

Documentos relacionados

Como pontos fortes, destacam-se a existência de iniciativas já em- preendidas em torno da aprovação de um Código de classificação e uma Ta- bela de temporalidade e destinação

Atualmente, a única modificação aos princípios ante- riores refere-se ao item (a) onde, pela experiência das barra- gens de Foz da Areia e Khao Laem, a construção da face de

• Forçar restrições de integridade: armazenamento de vários tipos de dados (inteiro, real, lógico), relacionamentos entre os dados, obrigatoriedade ou não de informação do dado

Para gerenciar com segurança os recursos da AWS, é necessário saber quais recursos você está utilizando (inventário de recursos), configurar com segurança o sistema

B- O sucesso organizacional depende principalmente daqueles que executam as decisões que são tomadas nos níveis superiores. C- O sucesso organizacional depende tanto dos

Gerenciar os recursos do sistema do computador é uma boa parte da função de um sistema operacional e, no caso de sistemas operacionais de tempo real, este pode ser todo

O Governo da República do Senegal tem o prazer de os receber em Dakar, República do Senegal, país da Teranga, para a sexagésima oitava sessão do Comité Regional para a África da

Posso dizer que a necessidade de um espaço triangular, de reconhecimentos e relações, percorreu todo o processo dessa pesquisa, tanto da vivência com benzedeiras e benzedores,