O Sistema Operacional
Por: Henrique Rosenstock • 19/3/2019 • Resenha • 4.187 Palavras (17 Páginas) • 143 Visualizações
Máquina Virtual
Uma vez que pode ser observado como uma camada entre o hardware e a aplicação, o SO (Sistemas Operacionais) pode ser entendido como uma máquina virtual. Isso significa que os programas aplicativos não sabem os detalhes do hardware no qual estão de fato executando, uma vez que o sistema operacional vai fornecer os recursos de forma abstrata para aplicação. Para deixar mais claro, considere que um aplicativo solicita ao sistema operacional o armazenamento de um arquivo no seguinte local:
"f:\docs\arquivo.txt". Que tipo de mídia é o local "f"? Pode ser um hard disk (HD) do tipo magnético pode ser um pendrive, que é uma memória flash. a maneira como Cada um desse dispositivo funciona é muito diferente, mas para aplicação isso não importa. O sistema operacional fornece uma abstração, chamada ""f" nesse exemplo, que é tudo o que aplicação precisa saber.
Tipos de Sistemas Operacionais
Sistemas Operacionais em Batch (Lotes)
esse tipo de sistema operacional a ideia básica é submeter uma tarefa ao sistema e aguardar Até que a tarefa seja concluída sem que durante esse tempo de espera haja interação com o computador. Dessa forma reúnem-se grupos de trabalho em lotes (batch) e cada trabalho é finalizado Antes de iniciar o próximo.
Sistemas Operacionais de Tempo Compartilhado
Nesse tipo de sistema diversas tarefas são executadas concorrentemente, ou seja não é necessário que uma tarefa tenha de esperar até a conclusão de outra para iniciar seu processamento. Mas como isso é possível? Se estivermos em um sistema com múltiplos processadores podemos imaginar que cada tarefa executada em um deles. Mas se não é esse o caso, mesmo em uma máquina com um único processador disponível, podemos ter diversas tarefas executadas ao mesmo tempo. isso é obtido alternando-se entre as tarefas que estão esperando para ser executadas.
Sistemas Operacionais Distribuídos
Nesse ambiente um sistema operacional trata diversas CPU e memórias de vários computadores interligados como recursos que ele administra. isso é diferente de interligar diversos computadores, cada um ontem do seu próprio sistema operacional local, os quais se comunicam, mas não compartilham os recursos, Pois cada sistema operacional local administra seus próprios recursos.
Sistema Operacional em Tempo Real
São construídos para executar em um sistemas de missão crítica, em que o tempo é o principal fator a ser considerado, uma vez que não pode haver atraso na execução das tarefas. Como exemplos de sistema desse tipo, considere controle de aviões, controle de braços mecânicos e de temperaturas em Indústrias ou, ainda, Sistema de Navegação automáticos, como piloto automático do carro. Em qualquer um desses sistemas, não pode haver demora na resposta ou um grave acidente pode acontecer!
Processos
“São conjunto de códigos que podem ser interpretados dentro de um computador.
Normalmente estão gravados dentro do HD da máquina.”
Um programa de computador é um conjunto de códigos que pode ser interpretado e executado por um computador. Normalmente esse código está gravado no HD da máquina, e dizemos que ele é uma entidade passiva, ou seja, Está simplesmente armazenada no HD, mas não tem nenhum efeito, não faz nenhuma ação, Está simplesmente ocupando espaço sem interação. quando esse programa de computador é colocado em execução, torna-se uma entidade ativa, que interagem Com sistema e passa a ser chamado de processo. então um processo pode ser definido como um programa em execução. Um processo deve ocupar espaços em memória, pois todo o processo tem suas instruções executadas pelo processador a partir da memória. Além disso um processo pode consumir outros recursos do sistema, como dispositivos de E/S.
Dentro do sistema operacional, é possível observar e gerenciar os processos em execução em um determinado instante. Por exemplo, no Windows, utilizamos no gerenciador de processos.
"Como sistema operacional orquestra-se uma banda e a cada instante entrasse um instrumento (processo)"
Threads
Um thread é uma linha de execução ou seja uma sequência de códigos em execução. Da maneira como apresentamos o processo até este momento, existe uma única linha de execução, ou seja, ele é capaz de realizar apenas um função de cada vez. Esse é um processo de thread único (single thread). já um processo com várias linhas execuções paralelas é chamado de processo com múltiplos threads (multi thread).
Sistemas Operacionais: Escalonamento
Os sistemas operacionais modernos têm a capacidade de executar diversos processos de forma concorrente. Essa técnica é chamada de multiprogramação. Entretanto isso não quer dizer que necessariamente eles sejam executados exatamente ao mesmo tempo. Para que isso ocorra é necessário que o hardware em que esse processo estão sendo executados sejam dotado de múltiplos processadores ou de um processador com múltiplos núcleos. não sistemas operacionais em que há um único processador Com um único núcleo, os processadores são trocados durante a execução diversas vezes por minuto, dando ao usuário a impressão de que todos eles estão sendo executados ao mesmo tempo, sem que haja interrupção, mas na realidade não é o que ocorre.
Sistemas Operacionais: Linguagem de Programação
a linguagem de programação Visa facilitar a especificação de tarefas a um computador. Atualmente existem milhares de linguagens de programação utilizadas para os mais diversos fins. Essas linguagens possuem conjuntos de comandos específicos para a interface homem computador. Dentre essas linguagens as mais utilizadas são a Basic, Pascal, C, C + +, Java, Cobol e Fortran. No entanto como estamos falando de linguagens de programação em bioinformática a mais utilizada nesse caso é a linguagem PERL (PRACTICAL EXTRACT AND REPORT LANGUAGE).
Troca de Contexto
Quando um processo muda do Estado de executando para outro qualquer, outro processo é colocado no estado de executando. É só troca entre os processos é chamada de troca de contexto. Durante a troca de contexto a CPU passa a executar processos do sistema operacional, que são responsáveis por realizar essa tarefa. Entre elas estão o escalonador e o dispatcher (ou Executor). Este último é responsável efetivamente pela realização da saída de um processo, pela mudança do controle do processo para escalonador e depois pela entrega de 5 do controle do processo ao processo que foi selecionado pelo escalonador.
...