Escolar Documentos
Profissional Documentos
Cultura Documentos
Resumo:
Neste artigo, discutiremos vários aspectos técnicos do Mac OS X, incluindo
estruturas e abstrações de dados, gerenciamento de threads, comunicação entre
objetos, exclusão e sincronização mútuas, gerenciamento de memória e sistema de
arquivos. Limitamos nossa discussão aos elementos encontrados no ambiente do
kernel do Mac OS X.
Introdução:
Desde então, a Apple lançou três versões do Mac OS X desde seu lançamento
inicial em março de 2001: 10.1 em setembro de 2001, 10.2 (codinome Jaguar) em
agosto de 2002 e, mais recentemente, 10.3 (codinome Panther) em outubro de
2003. sistema introduziu melhorias de desempenho, maior estabilidade e novos
recursos para computadores Apple; essas inovações, bem como a facilidade com
que os aplicativos podem ser criados para o Mac OS X, estimularam mais de cinco
milhões de usuários a adotar o Mac OS X em janeiro de 2003 (Apple 2, 2003). Os
avanços feitos no sistema operacional, aliados com novos lançamentos de
hardware, como o iPod, Power Macintosh G5 e iMac, combinaram-se para tirar a
Apple dos problemas financeiros encontrados no início dos anos 1990. O Mac OS X
foi projetado para ser executado exclusivamente no hardware da Apple. Há uma boa
razão para isso; A Apple é principalmente uma empresa de hardware. Suas receitas
de hardware excedem em muito as receitas de software. O Mac OS X e muitos
outros aplicativos de software projetados pela Apple destinam-se a aumentar a
comercialização do hardware da Apple (e é por isso que muitos programas de
aplicativos de qualidade da Apple são fornecidos gratuitamente). O hardware de
computador da Apple inclui servidores, sistemas de desktop de nível profissional e
de consumo e sistemas de laptop de nível profissional e de consumo. Os sistemas
de computador da Apple incluem arquiteturas de 32 bits e 64 bits. Esses são os
únicos ambientes de hardware nos quais o Mac OS X foi projetado para ser
executado, permitindo à Apple um grande controle sobre a integração do hardware e
do sistema operacional. Por exemplo, devido ao suporte a multiprocessamento
simples e poderoso do Mac OS X, a Apple quase sempre inclui configurações de
processador duplo em sua linha. O Mac OS X foi projetado como um sistema
multiusuário. Ele pode ser facilmente implementado em uma rede. No Mac OS X, a
Apple tentou preservar a facilidade de uso encontrada nas versões anteriores do
Mac OS, manter sua base de mercado com profissionais criativos e expandir para
novos mercados.
Características
Conclusão
Discutimos, resumidamente, alguns dos recursos mais essenciais do sistema
operacional Mac OS X. Começamos com uma introdução às estruturas de dados no
Mac OS X, discutimos a implementação e gerenciamento de threads, exclusão
mútua no Mac OS e comunicação entre objetos. Também discutimos o
gerenciamento de memória do Mac OS e o sistema de arquivos do Mac OS. Deve
ser visto a partir desta discussão, que o Mac OS é fortemente dependente de
abstrações de Mach para implementar funções de um sistema operacional
extremamente aberto e definido por aplicativos. As abstrações de Mach por si só, no
entanto, são bastante incompletas sem a interface para os componentes de nível
superior. Por exemplo, o algoritmo de escalonamento Mach, se implementado
sozinho, resultaria em um escalonamento de execução quase completamente cego
com pouca visão das prioridades do usuário ou do desenvolvedor. Mach é cego de
propósito - ele é projetado para permitir que componentes em um nível mais alto
tomem decisões. O objetivo do Mach é fornecer um ambiente unificado onde essas
decisões possam ser aplicadas de maneira consistente e livre de conflitos. O Mac
OS X é provavelmente a extensão mais completa do kernel Mach desenvolvida até
hoje. A parte BSD do kernel (especialmente na definição de pthreads e processos) e
as APIs fornecidas pelo Mac OS X fornecem um contexto altamente versátil para
acessar e direcionar o kernel Mach.
Referências
(Silberschatz et al. 2 2003)
Silberschatz et al. 2003, Galvin & Gagne. (2003) "Operating System Concepts Sixth
Edition." Appendix B. John Wiley & Sons, Inc. URL:
www.bell-labs.com/topic/books/os-book/mach-dir/mach.pdf.
(Apple 2 2003)
Apple Computer, Inc.” (2003). “Apple’s Mac OS X Adoption Soars With
More Than 5 Million Users and 5,000 Native Applications.” URL:
http://www.apple.com/pr/library/2003/jan/07macosx.html
(Apple 3 2003)
Apple Computer, Inc. (2003). “Mac OS X System Architecture.” URL:
http://developer.apple.com/macosx/architecture/index.html
(Apple 2003)
Apple Computer, Inc. (2003). “System Overview.” URL:
http://developer.apple.com/documentation/MacOSX/Conceptual/
SystemOverview/
(Apple KP 2003)
Apple Computer, Inc. (2003). "Inside Mac OS X: Kernel Programming." URL:
http://developer.apple.com/documentation/Darwin/Conceptual/KernelProgramming/
(Apple 2001)
Apple Computer, Inc. (2001). "Threading Architectures." URL:
http://developer.apple.com/technotes/tn/tn2028.html
Rashid, Tevanian, Young, Golub, Baron, Black, Bolosky & Chew. (1987) "Machine-
Independent Virtual Memory Management for Paged Uniprocessor and
Multiprocessor Architectures" URL: www.cs.berkeley.edu/~brewer/cs262/mach-
vm.pdf