OpenStep

Origem: Wikipédia, a enciclopédia livre.
Ir para: navegação, pesquisa

OpenStep é uma especificação de uma API orientada a objetos para um sistema operacional orientado a objetos que usa qualquer sistema operacional moderno como núcleo, principalmente desenvolvido pela NeXT. Note-se que OpenStep é uma especificação e OPENSTEP (tudo em maiúsculas) é uma implementação dessa especificação desenvolvida pela NeXT. Enquanto originalmente construído em um núcleo Unix baseado no Mach (como o núcleo do NEXTSTEP), versões do OPENSTEP estavam disponíveis para Solaris bem com para Windows NT. Além disso as bibliotecas OPENSTEP (as bibliotecas enviadas com o sistema operacional OPENSTEP) são de fato um superset das especificações OpenStep originais.


Translation Latin Alphabet.svg
Este artigo ou secção está a ser traduzido (desde agosto de 2007). Ajude e colabore com a tradução.

Historia[editar | editar código-fonte]

A API OpenStep foi criada com resultado da colaboração em 1993 entre a NeXT e a Sun Microsystems, permitindo que essa versão reduzida do object layer do sistema operacional NEXTSTEP da NeXT rodasse no sistema operacional Solaris da Sun (mais especificamente, o Solaris num hardware baseado no SPARC). A maior parte do esforço OpenStep foi para separar esta porção do NEXTSTEP que dependia do Mach ou hardware especifico da NeXT estivesse presente. Isso resultou em um sistema pequeno que consistia primariamente de um Display PostScript, o runtime e o compilador Objective-C, e a maioria das bibliotecas Objective-C no NEXTSTEP. Não incluso era o sistema operacional básico, ou display system.

O primeiro rascunho da API foi publicado pela NeXT no verão de 1994. Mais tarde nesse ano seria lançado uma versão compliant com o OpenStep do seu sistema operacional flagship NEXTSTEP, rodando em vários de suas platformas suportadas e remarcado como OPENSTEP. Confusamente, a distribuição OPENSTEP deles roda também em hardware Sun SPARC, independente do Solaris. O OPENSTEP lembrado com o sistema operacional primário da NeXT produzido até ser comprada pela Apple Computer em 1997. O OPENSTEP foi então combinado com tecnologias do Mac OS existente para produzir o Mac OS X.

O OpenStep e a CORBA foram depois divididos, e o NEO foi distribuido mais tarde em 1995 sem o ambiente OpenStep. Em Março de 1996 a Sun anunciou o JOE, um produto para integrar o NEO com a linguagem Java, a Sun enviou um beta do ambiente OpenStep para o Solaris em em 22 de Julho de 1996,1 e o tornou disponível livremente para download em Agosto de 1996 para uso não comercial, e para vendas em setembro de 1996. O OpenStep/Solaris enviado para a arquitetura SPARC.

Descrição[editar | editar código-fonte]

A API OpenStep contrasta com os NEXTSTEP anteriores primeiramente em cinco maneiras:

  • A OpenStep descreve somente as bibliotecas e serviços de nível superior como o Display PostScript), visto que o NEXTSTEP refere-se a ambas como bibliotecas e o sistema operacional mesmo.
  • Remoção de qualquer código dependente inteiramente do núcleo Mach, então esse OpenStep pode ser rodado sobre um sistema operacional razoavelmente poderoso.
  • Uma significante quntidade de esforço foi colocada em tornar o sistema livre de Endianismo, um assunto que a NeXT já tinha encarado durante um port para a plataforma Intel.
  • Objetos de baixo nível como strings foram representadas com tipos de dados em C no NEXTSTEP, enquanto no OpenStep um número de novas classes (NSString, NSNumber, etc.) foram introduzidas para suportar conversão de endianismo bem como prover funcionalidades e tornar independente da plataforma. Isso provocou alterações por toda a API, na maior parte para melhor. Esse conjunto de classes (um framework) foi chamado Foundation Kit, ou só Foundation para abreviação.
  • O gerenciamneto de memória envolve de um simples mecânismo alloc/free a um novo paradigma retêm/libera: Se um pedaço de código pecisar manter um objeto válido, ele retêm ele, e quando não precisa mais, ele o libera.

A especificação da API por si mesma é composta de dois conjuntos principais de classes orientadas a objeto: a GUI e front-end gráfico conhecido como Application Kit, e o mencionado acima Foundation Kit.

Entretano, a OpenStep também especificava o uso do Display PostScript, um poderoso e versatil método baseado em PostScript de desenhar janelas e gráficos na tela. A NeXT com sua devoção a implementar soluções orintadas a objeto, fornecendo pswraps para interfacear código C para o Display PostScript. O pswraps atua em um módo encapsulado e de algum modo orientado a objeto. O Application Kit, o Foundation, e o Display PostScript as trez tecnoligias chave na especificação OpenStep; entretanto, o Display PostScript era caracterizado nas tecnologias antigas da NeXT, como no NEXTSTEP.

Implementações[editar | editar código-fonte]

OPENSTEP/Mach[editar | editar código-fonte]

O primeiro sistema operacional da NeXT foi o NEXTSTEP, um sistema operacioal sofisticado baseado no Mach-UNIX que foi portado para rodar em várias arquiteturas (PA-RISC, SPARC, i386 and 68k). Entretanto, a nova política da NeXT para o NEXTSTEP foi liberar as bibliotecas do sistema operacional de ser atrelados ao UNIX e tornar-se mais independente de dispositivos.

NeXT completed an implementation of OpenStep on their existing Mach-based OS and called it OPENSTEP/Mach. It was, for all intents, NEXTSTEP 4.0, and still retained flagship NEXTSTEP technologies (such as DPS, UNIX underpinnings, user interface characteristics like the Dock and Shelf, and so on), and retained the classic NEXTSTEP user interface and styles. OPENSTEP/Mach was further improved, in comparison to NEXTSTEP 3.3, with vastly improved driver support – however the environment to actually write drivers was changed with the introduction of the object-oriented DriverKit.

OPENSTEP/Mach supported Intel x86, Sun's SPARC and NeXT's own Motorola based 68k architectures, while the HP PA-RISC version was dropped. These versions continued to run on the underlying Mach-based OS used in NEXTSTEP. OPENSTEP/Mach became NeXT's primary OS from 1995 on, and was used mainly on the Intel platform. In addition to being a complete OpenStep implementation, the system was delivered with a complete set of NEXTSTEP libraries for backward compatibility. This was an easy thing to do in OpenStep due to library versioning, and OPENSTEP did not suffer in bloat because of it. -->

OPENSTEP Solaris[editar | editar código-fonte]

Yupi

OPENSTEP Enterprise[editar | editar código-fonte]

Rhapsody, Mac OS X Server 1.0[editar | editar código-fonte]

Mac OS X 10.0[editar | editar código-fonte]

Depois de substituir o Display Postscript WindowServer com um baseado em PDF, e respondendo aos desenvolvedores incluindo melhor retrocompatibilidade para as aplicações Mac OS através da adição do Carbon, a Apple distribuiu o Mac OS X e o Mac OS X Server, começando na versão 10.0.

GNUstep[editar | editar código-fonte]

O GNUstep, uma implementação software livre das bibliotecas NeXT, começou na época do NEXTSTEP, predating OPENSTEP. Enquanto o OPENSTEP e o OSE, foram comprados pela Apple, que efetivamente finalizou como o desenvolvimento comercial da implementação para outras plataformas, GNUstep é um projeto ongoing open source que pretende criar uma implementação free software das bibliotecas OPENSTEP.

As bibliotecas Foundation e AppKit são completas com exceção de poucas classes que são raramente usadas. GNUstep also features a fully functional development environment. GNUstep also features reimplementations of some of the newer innovations from Mac OS X's Cocoa framework, as well as its own extensions to the API.

Referências

  1. Sun Microsystems, Inc.. SUN ANNOUNCES AVAILABILITY OF SOLARIS OPENSTEP AND WORKSHOP OPENSTEP BETA. Press release. Página visitada em 2006-10-25.

Ligações externas[editar | editar código-fonte]