Buscar

Sistema Operacional Linux

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 7 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 7 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E 
TECNOLOGIA DO PARÁ 
CURSO TÉCNICO EM INFORMÁTICA 
 
 
 
 
 
ADEILSON RIBEIRO DOS SANTOS 
 
 
 
 
 
 
 
 
 
 
 
 
 
SISTEMA OPERACIONAL LINUX 
ESCALONAMENTO DE PROCESSOS 
GERENCIAMENTO DE MEMÓRIA 
SISTEMA DE ARQUIVOS 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Paragominas - PA 
2016 
ADEILSON RIBEIRO DOS SANTOS (M1) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
SISTEMA OPERACIONAL LINUX 
 
 ESCALONAMENTO DE PROCESSOS 
GERENCIAMENTO DE MEMÓRIA 
SISTEMA DE ARQUIVOS 
 
 
 
 
 
Trabalho apresentado ao Curso Técnico em 
Informática do IFPA - Instituto Federal de Educação, 
Ciência e Tecnologia, para a disciplina Sistemas 
Operacionais. 
 
Prof. Tarcísio Lemos Monteiro Carvalho 
 
 
 
 
 
 
 
 
 
 
 
Paragominas - PA 
2016 
Sistema Operacional Linux 
 
Linux é um sistema operacional tipo Unix que foi desenvolvido por Linus 
Torvalds inspirado no sistema Minix, que é uma versão simplificada do Unix, e que 
por fim veio do sistema Multics. O Linux é um exemplo de desenvolvimento com 
código aberto e de software livre. O seu código fonte está disponível sob licença 
GPL para qualquer pessoa utilizar, estudar, modificar e distribuir livremente. 
Um sistema Linux é capaz de funcionar em um grande número de 
arquiteturas computacionais. É utilizado em supercomputadores, computadores 
pessoais e até em aparelhos celulares. 
 
 Escalonamento de Processos 
O escalonador Linux é baseado em time-sharing, ou seja, atua na divisão do 
tempo de processador entre os processos. 
Scheduler é o programa encarregado de agendar os processos, isto é, ele 
deve escolher o próximo processo que vai rodar, deve decidir quando o tempo de 
um processo terminou, o que fazer com um processo quando ele requisita I/O e 
assim por diante. Ele é chamado de vários pontos do programa, como após 
colocar o processo corrente em uma fila de espera, no final de uma chamada de 
sistema ou qualquer outro momento em que se faz necessário escalonar os 
processos. Ao ser chamado, o scheduler tem uma sequência de ações que devem 
ser tomadas para que seu trabalho possa ser feito. Essas ações se dividem em: 
 Kernel Work: o scheduler deve realizar uma série de rotinas especifícas 
do kernel, e deve tratar da fila de esperas de tarefas do scheduler. 
 Seleção de processo: o scheduler deve escolher o processo que irá rodar. 
A prioridade é o meio pelo qual ele escolhe. 
 Troca de processos: o scheduler salva as condições que o processo atual 
apresenta (contexto específico do processo) e carrega o contexto do novo 
processo que irá rodar. 
Em ambientes multiprocesados (SMP - Simultaneous Multi Processing), cada 
processador tem um scheduler para tratar separadamente quais processos irão 
rodar nele. Dessa forma, cada processo guarda informação sobre o processador 
atual e o último processador em que rodou. Processos que já tenham rodado em 
um processador tem preferência em relação aqueles que não tenham rodado ali 
ainda. Essa implementação permite um ligeiro acréscimo de ganho no 
desempenho do sistema. 
 
 
O escalonador possui 140 níveis de prioridade (quanto menor o número, 
maior é a prioridade). Prioridades de 1 a 100 são para processos de tempo real; 
de 101 a 140 para os demais processos de usuário (interativos ou não interativos). 
Nos níveis de prioridade 101 a 140, os processos recebem fatias de tempo de 20 
ms. 
 Os processos de tempo real podem ser FIFO ou Round Robin, e possuem 
uma prioridade estática. 
 Processos FIFO executam até voluntariamente liberarem a CPU (o nível de 
prioridade é mantido e não são preemptivos). 
 Processos Round Robin recebem fatias de tempo. Quando todos terminam 
suas fatias, é dada outra fatia e eles continuam rodando no mesmo nível de 
prioridade. 
 A prioridade dos processos de usuário é a soma de sua prioridade básica 
(valor de seu nice) e seu bonus dinâmico, que varia de +5 a –5. 
Thread de migração 
Em cada processador roda uma thread de migração, cuja função é 
movimentar processos de um processador para outro. Como existe uma ready 
list por processador, a idéia é evitar que processadores fiquem ociosos enquanto 
outros estão sobrecarregados. 
A thread de migração é chamada periodicamente, a cada tick do relógio, e 
também explicitamente quando o sistema fica desbalanceado. 
 
 Gerenciamento de Memória 
“No Linux a memória funciona da seguinte maneira, processos que estão em 
execução têm prioridade na memória, quando termina um processo e se tiver 
espaço na memória, ficam resíduos desse processo na memória para uma futura 
volta desse processo ser mais rápida. Caso essa memória RAM esteja lotada com 
processos que estão em execução, aí começa a utilização da memória SWAP 
(troca)”. (LIMA, 2007) 
A memória virtual do Linux é paginada, ou seja, é possível que sejam 
executados programas que tenham o tamanho maior que a própria memoria física 
do computador. É como se o sistema operacional assumisse a responsabilidade 
de manter em sua memória e sustentasse os programas em execução, deixando o 
resto no HD. Só que a utilização da memória virtual torna o computador mais 
lento, mas faz com ele que aparente ter mais memória RAM do que tem de fato. 
Ou seja, quanto mais memória é requisitada, o Linux passa a transferir 
arquivos não usados há algum tempo, da memória RAM à memória virtual, 
também chamada de swap, liberando, assim, memória física para os aplicativos. 
Em suma, o que acontece é que o Linux utiliza a energia ociosa (que não 
está sendo aproveitada) para cache, a fim de agilizar os processos solicitados pelo 
usuário naquele determinado momento. Durante esse período de ociosidade da 
energia, o sistema toma para si essa memória, mas logo que o usuário necessite 
do recurso, o Linux libera imediatamente. 
É possível afirmar, então, que o Linux gerencia a energia e a memória de 
forma muito inteligente, pois ao invés de deixá-la “sem fazer nada” utiliza para 
agilizar outros processos. 
 
 Sistema de arquivos 
Atualmente, uma importante característica dos atuais sistemas de arquivos é 
o journaling. Sistemas de arquivos que possuem essa característica são preferidos 
em detrimento aos que não possuem. 
Journaling é um recurso que permite recuperar um sistema após um 
desastre no disco (ex.: quando um disco está sujo) em uma velocidade muito 
maior que nos sistemas de arquivos sem journaling. 
Segue abaixo uma breve descrição sobre os sistemas de arquivos mais 
comuns disponíveis para o Linux: 
EXT2 - O sistema de arquivos ext2 é conhecido como "Second Extended 
FileSystem". Foi desenvolvido para ser mais "eficiente" que o sistema de arquivos 
"Minix", seu antecessor. O Minix era muito utilizado nas primeiras versões do 
Linux, e foi utilizado por muitos anos. O sistema de arquivos ext2 não possui 
journaling e foi substituído pelo ext3. 
EXT3 - O sistema de arquivos ext3 é uma versão do ext2 com suporte a 
journaling. Portanto, o ext3 tem as mesmas características do ext2, mas com 
suporte journaling. Essa característica foi uma evolução e tornou o ext3 um 
sistema de arquivos muito estável e robusto. Como no ext3 só foi adicionado o 
suporte a journaling, podemos converter um sistema de arquivos ext2 para ext3, 
adicionado suporte a journaling, e também podemos converter um sistema de 
arquivos ext3 para ext2, removendo o suporte a journaling. 
EXT4 - O ext4 trouxe, de acordo com seus desenvolvedores, alguns recursos que 
não existiam no ext3, mantendo alguns que a versão anterior já possuía. Na 
verdade são recursos que estavam tentando implantar na versão 3 do extFS 
(ext3), porém, devido a alguns problemas na implementação, lançaram essa nova 
versão com as características descritas abaixo. O Ext4 apresenta inúmeros novosaprimoramentos quanto a desempenho, escalabilidade e confiabilidade. Mais 
especificamente, o ext4 suporta sistemas de arquivos de 1 exabyte. Tem uma 
performance considerada muito boa, principalmente para o seu uso em máquinas 
de grande porte, como é o caso de várias máquinas de empresas. O EXT4 supera 
a capacidade de armazenamento do EXT3. O novo sistema de Journaling do 
EXT4 melhora a quantidade de arquivos e processos suportados pelo linux. 
Apresentando várias vantagens do gênero em relação ao EX3. Graças a alocação 
tardia, existe uma considerável redução de fragmentação, por ele melhorar nas 
decisões do sistema sobre o arquivo levando em consideração o tamanho do 
mesmo. O Ext4 usa checksums no jornal para melhorar a confiabilidade, já que o 
jornal é um dos arquivos mais utilizados do disco. Esta característica tem um lado 
benéfico, que pode evitar com segurança um disco I / O esperar durante o 
processo diário, melhorando o desempenho ligeiramente. O melhoramento na 
capacidade de armazenamento: O EXT4 tem aumento na capacidade de suportar 
maior quantidade de atividades, maiores arquivos e maior quantidade de pastas. 
Compatibilidade com Versões anteriores: o sistema de arquivos do EXT4 é 
compatível com as versões EXT3 e EXT2 o que ajuda muito no desempenho. 
Apresenta riscos de ocorrência de perda de dados: Isso ocorre pelo uso da 
alocação tardia, que ajuda na redução da fragmentação e na decisão do que 
ocorrerá com o arquivo pelo seu tamanho. 
REISERFS - O sistema de arquivos ReiserFS foi criado recentemente. Mas 
atualmente quase todas as distribuições Linux o suportam. Sua performance é 
muito boa, principalmente para um número muito grande de arquivos pequenos. 
ReiserFS também possui suporte a journaling. 
XFS - O sistema de arquivos XFS também possui suporte a journaling. Foi 
desenvolvido originalmente pela Silicon Graphics e posteriormente disponibilizado 
o código fonte. O XFS é considerado um dos melhores sistemas de arquivos para 
banco de dados, pois é muito rápido na gravação. XFS utiliza muitos recursos de 
cache com memória RAM, e para utilizar XFS é recomendado utilizar sistemas 
que possuem redundância de energia. 
SWAP - SWAP é um espaço reservado para troca de dados com a memória 
RAM. Em alguns lugares ele não é mencionado como um Sistema de Arquivos. 
VFAT - O sistema de arquivos VFAT é também conhecido como FAT32 (M$ 
Windows). O sistema de arquivos VFAT não possui suporte a journaling. É 
utilizado normalmente para transferir dados entre sistemas M$ Windows e o Linux 
instalados no mesmo disco, pois pode ser lido e escrito por ambos os sistemas 
operacionais. O sistema de arquivos VFAT está longe de ser um sistema de 
arquivos utilizado para Sistemas Linux, exceto para 
compartilhamento/compatibilidade entre o M$ Windows e Linux. Se você utilizar 
VFAT no Linux, esteja certo de perder alguns atributos, tais como: permissão de 
execução, links simbólicos, entre outras coisas. Ambos os sistemas de arquivos 
ext3 e ReiserFS são maduros o bastante para serem utilizados como padrão no 
Linux. Esses dois são os mais utilizados pelas distribuições Linux. 
 
 
Referências 
 
https://www.vivaolinux.com.br/artigo/Estudo-sobre-os-tipos-de-gerenciamento-do-
SO-Linux?pagina=1 
 
http://escalonamentoprocessos.blogspot.com.br/2010/10/escalonador-linux.html 
 
http://www.portaleducacao.com.br/informatica/artigos/47774/gerenciamento-de-
memoria-do-linux 
 
http://sorocodigos.ning.com/profiles/blogs/sistema-de-arquivos-suportado-pelo-
linux 
 
https://www.vivaolinux.com.br/artigo/Linux-Sistema-de-arquivos

Outros materiais