SISTEMA OPERACIONAL OS X EL CAPITAN
Por: Jose.Nascimento • 3/7/2018 • 2.187 Palavras (9 Páginas) • 483 Visualizações
...
- KERNEL
Kernel cujo significado é núcleo, é a parte mais importante do sistema operacional, estabelece a comunicação entre os componentes do sistema. O kernel do OS X é baseado em FreeBSD e Mach 3.0 e apresenta uma arquitetura extensível com base em interfaces de programação de kernel bem definidos.
OS X foi o primeiro sistema operacional a enviar, como uma única instalação que poderia inicializar em um kernel aplicativos de 32 bits ou de 64 bits, com desempenhonativototal. OS X agora usa exclusivamente um kernel de 64 bits (Mas também executa aplicativos de 32 bits). Com o seu kernel de 64 bits, o OS X é capaz de lidar com grandes quantidades de RAM física. OS X El Capitan foi testado e pode suportar até 128 GB de RAM física nos Computadores da Apple.
Figura 1: Estrutura do Kernel
[pic 3]
Fonte: Apple Inc.
- GERENCIAMENTO DE PROCESSOS E THREADS
O Kernel do Mac os X é hibrido (monolítico e microkernel), tendo em vista isso, os processos (Lista de instruções passadas ao processador a serem executadas) não necessita distinguir entre os serviços de usuário ou serviços do kernel, os serviços usam a troca de mensagens para se comunicar. No OS X, todo código especifico de arquitetura está no microkernel.
O escalonamento de processos é como o SO distribui processos para serem executados, quando existem mais de um processo iniciado, o sistema deve ver as prioridades para assim ver quem executa primeiro. O SO se baseia em múltiplas filas, dividindo as em quatro grupos de processos, cada uma agrupada de acordo com suas características:
- Normal: prioridade de simples de usuário.
- Sistema: São as aplicações que o sistema utiliza, mais importante que as threads simples de usuário.
- Kernel: Parte guardada para as threads do kernel, que precisam de maior prioridade em relação as do sistema.
- Tempo real: independente das outras atividades executadas, tem a obrigação de guardar uma parte pré-definida dos ciclos de clock.
Threads é uma divisão de um processo inicial de algum programa, a divisão possibilita a execução de vários processos simultâneos, isso resulta em maior performance na maioria dos casos. Mas não é em todos os casos que acontece a divisão para múltiplas Threads, e nem todos processadores aguentam trabalhar com muitas threads, os processadores vêm de fábrica com um limite de núcleos que trabalham com processos indivisíveis e um limite de quantas threads simultâneas podem trabalhar.
- GERENCIAMENTO DE MEMÓRIA
A cada ano, a evolução do mercado de programas vai se tornando mais amplo, e com isso o usuário e os programadores necessitam de mais memória e velocidade para tratar com muitas informações ao mesmo tempo, isso torna uma tarefa difícil para o S.O. O sistema Mac OS X, tem um método chamado Swapping para quando a memória física do computador está sobrecarregada, esse método faz com que o sistema pareça ter mais memória do que realmente tem, ele causa uma ilusão, levando um aplicativo para o disco rígido e guardando em um espaço até que se necessite executar o programa de novo, o programa volta para memória principal para ser executado. Quanto menos o sistema precisar fazer isso, mais rápido a execução, esse método é lento, porem necessário para não fazer com que a máquina trave e deixe o usuário na “mão”, o OS X evita ao máximo usar esse método para rodar tudo mais fluido e rápido, e para evitar o Swapping, o S.O usa o encerramento automático, ele é acionado quando um programa está muito tempo em segundo plano. Nos iPhones (mobiles com sistema iOS), o encerramento automático é usado frequentemente, mais de forma brusca.
O endereço virtual é onde o processo é guardado em um espaço dividido em dois conjuntos (32 bits e 64 bits). Os de 32 bit pode endereçar no máximo 4GB, e os de 64 bits até 18 exabytes.
- GERENCIAMENTO DE ARQUIVOS
A Apple desenvolveu um sistema de arquivos chamado HFS Plus (HFS +), cujo significado é sistema hierárquico de arquivos, sucessor do HFS, O HFS + é um sistema de arquivos primário do OS X, para nomear os itens ele utiliza o Unicode (codificador). A tabela de mapeamento é de 32 bits, ao invés do seu antecessor queutilizava 16 bits, os arquivos são divididos em setores ou blocos logico, os setores são agrupados em blocos, isso facilita na hora que o sistema faz a busca no disco rígido.
Quando o espaço não está sendo utilizados ou não contem arquivos contínuos o sistema utiliza a fragmentação, deixando os arquivos organizados nos seus espaços de alocação, deixando livre para outros dados ocuparem essa parte, quando o disco rígido está fragmentado, o facilita a busca para o sistema operacional.
- GERENCIAMENTO DE ENTRADA E SAÍDA
A Apple inovou ao criar um sistema diferente de todos os Unix que existem, drivers com base na programação orientada a objetos, com uma versão restrita do c++. O desenvolvimento é feito através de uma ferramenta, chamada I/O Kit, que contém um conjunto de bibliotecas, framework e funcionalidades voltados para a criação dos drivers.
Os dispositivos de entrada e saída (input/ouput), são abertos como arquivos, e para diferenciar os arquivos usa-se descritores, que podem referenciar três tipos de objetos (files, pipes e sockets). Quando o sistema chama, os descritores obtêm a referência do I/O stream, que segundo o tutorial Java, é a ferramenta que guia os arquivos de entrada e saída.
O I/O Registry é um banco de dados que se encarrega de manter os dispositivos conectados e “conversando” com os drivers, ou seja, ele registra todos dispositivos de input e output.
- INTERFACE GRÁFICA
O OS X El Capitan trouxe várias melhorias gráficas e de desempenho em relação a seu antecessor Yosemite, não só detalhes visuais, também ganhou muita velocidade cortando pela metade o delay de troca de um aplicativo para outro, fazendo com que o usuário tenha todo seu tempo bem usufruído.
A grande melhoria foi ter trago da plataforma mobile para os seus computadores uma ferramenta chamada Metal Developer, ela traz até 50 por cento a mais de velocidade na renderização em elementos 3D, como ferramentas de edição e jogos,
...