A Aldeia Numaboa ancestral ainda está disponível para visitação. É a versão mais antiga da Aldeia que eu não quis simplesmente descartar depois de mais de 10 milhões de pageviews. Como diz a Sirley, nossa cozinheira e filósofa de plantão: "Misericórdia, ai que dó!"

Se você tiver curiosidade, o endereço é numaboa.net.br.

Oficina

10. Definição de Sistema Operacional

Dom

27

Mai

2007


07:41

(68 votos, média 3.90 de 5) 


Nível avançado MÓDULO 10 do SO Numaboa

Agora que produzimos o pequeno SO NumaBoa, está na hora de parar de brincar e começar a por um pouco de ordem na casa. Se não fizermos isto, com certeza vamos acabar perdendo o rumo. Não se esqueça de que SOs podem ser (e geralmente são) muito complexos...

Além de todos os aspectos relacionados a sistemas operacionais, ainda existe um caminhão de expressões e acrônimos que dão nó na cabeça de qualquer um. Acontece que a terminologia tem sua história, que coincide com a história dos próprios computadores. Neste módulo (e seguintes) seguiremos o rastro da história para explicar alguns termos e conceituar os sistemas operacionais.

Como você definiria um SO? Consegui encontrar duas "definições" interessantes: o Princípio dos Recursos e o Princípio da Estética. Este texto foi baseado numa parte do primeiro capítulo do livro An Operating Systems Vade Mecum, do professor da University of Wisconsin at Madison, Raphael A. Finkel, 1988, Prentice Hall, ISBN 0-13-637950-8. O livro pode ser antigo, mas os conceitos não. Então, vamos lá!

O Princípio dos Recursos

De acordo com o Princípio dos Recursos, considera-se que um

Sistema Operacional é um conjunto de algoritmos que alocam recursos para processos

Um recurso é uma conveniência necessária para se realizar trabalho. O harware do computador fornece vários recursos fundamentais. Programas que realizam trabalhos precisam residir na memória, executar instruções e precisam de meios para aceitar dados e apresentar resultados. Estas necessidades estão relacionadas aos recursos fundamentais de espaço, tempo e transposição (entrada/saída). Um sistema operacional adiciona recursos a esses recursos fundamentais, por exemplo, arquivos que podem armazenar dados. Além disso, programas diferentes podem se comunicar através de portas que os conectem. É interessante notar que recursos de níveis mais altos podem ser construídos sobre os básicos.

A noção de processo é vital nos sistemas operacionais, mas é bastante difícil definir o que é um processo. Digamos que um processo é a execução de um programa, é uma entidade fundamental que necessita de recursos para poder realizar sua tarefa de executar o programa até o final. Imagine vários atores se apresentando num picadeiro de circo, cada um deles precisando de recursos próprios. Quando precisam de recursos, acionam o administrador de recursos (o distribuidor de recursos do sistema operacional). A função do administrador, para atender os atores, é fornecer os recursos necessários para cada ator e distribuí-los da forma mais justa possível. A função do administrador, para atender o público (que, afinal de contas, pagou entrada), é garantir que o máximo de recursos sejam usados e conseguir terminar o máximo de apresentações (processos) possíveis.

Outra forma de encarar os processos é considerá-los como agentes que representam os interesses dos usuários. Quando o usuário quiser escrever uma carta, um processo roda o programa que modifica um documento de acordo com as teclas digitadas; quando quiser enviar um e-mail, um processo (provavelmente um novo) roda um programa diferente que sabe como enviar documentos para caixas postais. Em geral, os processos rodam programas que ajudam o usuário. Para poder executar seu trabalho, os processos podem precisar da ajuda do sistema operacional em operações como reconhecer teclas digitadas ou colocando dados em áreas de armazenamento de longo prazo. Necessitam de recursos como espaço de memória e ciclos de máquina. O Princípio dos Recursos diz que o sistema operacional é o responsável pela disponibilização destes recursos.

Informações adicionais