Todos nós, nos dias atuais, estamos totalmente conectados através dos nossos smartphones e notebooks. E alguns termos já utilizamos na hora de comprar esses dispositivos, termos como: quero um celular com Android, ou com sistema IOS da Apple. Sistema Windows ou Linux, não é verdade? Todos esses citados, são sistemas operacionais.
Podemos simplificar dizendo que um sistema operacional é um software que controla outros softwares, que por sua vez, controla todos os dispositivos que estão interconectados através de uma unidade única de processamento que no final das contas, vai dar comandos para o hardware que interage com os devices conectados kkkk .. Porém, essa visão se torna muito “simplista”, tendo em vista que existem fases dentro do processo de carregamento do hardware, elos de comunicação entre a parte física e a parte lógica, etc…
Todos os artigos que postei até o momento, explicam de forma subjetiva o que é um Sistema operacional. Podemos entender um sistema operacional como um sistema, com um conjunto de programas que gerenciam recursos, processadores, armazenamento, dispositivos de entrada, saída e dados da máquina e seus periféricos além de fazer a comunicação entre o hardware e os demais softwares.
Qual é o papel de um Sistema Operacional?
As funções do sistema operacional são inúmeras. Vamos listar as principais:
- Gestão do processador;
- Gestão da memória RAM;
- Gestão das entradas/saídas (input/output);
- Gestão da execução dos aplicativos;
- Gestão dos arquivos;
- Gestão das redes locais e distribuídas;
- Gestão das informações de hardware.
E todas essas funções fazem parte, em sua grande maioria, dos recursos que o programador utiliza ao construir seus programas. Por isso é importante você entender bem esses conceitos.
Como você pode perceber, os sistemas operacionais liberam os programadores de softwares, das obrigações de lidar com os detalhes complicados da manipulação do hardware de computador para gerenciar memória, executar entrada/saída, lidar com linhas de comunicação e assim por diante. Para separar responsabilidades, ele possui algumas camadas, como a interfaces de programação de aplicativos, onde normalmente atuamos, um nível acima, na construção de nossos programas para manipular o hardware e outras operações utilizadas pelo sistema operacional.
Tipos de sistemas operacionais
Naturalmente, os sistemas operacionais ao longo do tempo, tendem a ter algumas evoluções, decorrente da evolução dos hardwares, e com isso, existem vários tipos de abordagens de trabalho que podem ser aplicadas quanto aos tipos de sistemas operacionais. Veja a seguir alguns tipos de sistemas operacionais:
Sistema operacional monoprogramável
Os sistemas monoprogramáveis ou monotarefa, como o próprio nome já diz (mono, noção de um, de unidade) são sistemas voltados tipicamente para a execução de um único programa.
Sistemas operacional multiprogramável
Ao contrário do monotarefa, os sistemas multiprogramáveis ou multitarefa, permitem que os recursos computacionais sejam compartilhados entre os diversos usuários e aplicações. Esse sistema pode gerenciar as aplicações de 3 formas:
- Em batch (lote) foram os primeiros sistemas multiprogramáveis a serem implementados e caracterizam-se por terem seus programas, quando submetidos, armazenados em fitas ou discos, onde esperam para ser executados sequencialmente.
- Em tempo compartilhado (time-sharing) permitem a interação dos usuários com o sistema, através de teclados, vídeo e mouse. O usuário pode interagir diretamente com o sistema em cada fase do desenvolvimento de suas aplicações e, se preciso, modificá-las imediatamente.
- Em tempo real (real-time) possuem características semelhantes aos sistemas de tempo compartilhado, entretanto diferenciam-se pelo tempo exigido no processamento das aplicações. Nos sistemas de tempo real o processador permanece ocupado durante o tempo que for necessário a execução de determinado programa, cedendo lugar a outro programa que tenha uma prioridade maior no sistema.
Sistema operacional com múltiplos processadores
Os sistemas de múltiplos processadores recebem este nome por possuírem dois ou mais processadores interligados trabalhando em conjunto. Como vantagem desta arquitetura está o fato de permitir que vários programas possam ser executados ao mesmo tempo, ou que um programa possa ser dividido em partes, entre os vários processadores, executando-os de forma simultânea. Futuramente vamos ver mais sobre isso.
Enfim… Existem atualmente diversos sistemas operacionais no mercado, uns voltados para desktop e outros para mobile. É literalmente uma batalha kkkk . O canal do YouTube chamado Ranking Freak mostra exatamente como se deu o crescimento dos principais SOs (móveis e desktops) de 2009 a 2020, com base na participação do mercado de cada um.
https://www.youtube.com/watch?v=sNsA7m8Z7Xo&feature=emb_logo
Depois de ver essa divertida batalha entre os sistemas operacionais, você já observou que há um nível de complexidade bastante alto na arquitetura de um sistema operacional, não é? E como tudo isso funciona de forma “orquestrada”? Como o sistema operacional faz esse orquestramento entre os programas e os hardwares? É aí que entra um personagem na jogada, o kernel. Ele é o grande responsável por fazer a ligação entre o hardware e os softwares do computador.
O grande e principal objetivo do Kernel é gerenciar a máquina e fazer com que os aplicativos possam ser executados através dos recursos existentes no computador. Muito legal isso!!! Como o artigo ficou um pouco longo, no próximo artigo vamos falar um pouco mais sobre o Kernel kkkk. Até lá!
Confiança Sempre!!!
Fontes:
Be First to Comment