Posix

Posix Standard

Posix Standard

POSIX: Uma Visão Geral

A Portable Operating System Interface (POSIX) é um padrão IEEE que ajuda a compatibilidade e portabilidade entre sistemas operacionais. Teoricamente, o código-fonte compatível com POSIX deve ser perfeitamente portátil. No mundo real, a transição do aplicativo geralmente envolve problemas específicos do sistema. Mas a conformidade com POSIX torna mais simples a porta de aplicativos, o que pode resultar em economia de tempo. Portanto, os desenvolvedores devem se familiarizar com os fundamentos deste padrão amplamente utilizado.

História do POSIX

Os primeiros programadores tiveram que reescrever seus aplicativos do zero para cada novo modelo de computador. Mas o IBM System / 360 mudou isso. Em 1964, introduziu o sistema operacional OS / 360. A IBM começou a usar a mesma arquitetura de hardware para permitir que os novos modelos reutilizassem o mesmo sistema operacional. A presença de um sistema operacional comum em várias máquinas configurou o primeiro estágio para portabilidade de aplicativos.

No final dos anos 1960, a chegada do UNIX abriu novas possibilidades. O Bell Labs da AT&T foi responsável pelo desenvolvimento inicial deste novo sistema operacional. Ele pode ser executado em máquinas de vários fornecedores. Mas o UNIX começou a se ramificar em vários sabores. Além do System V da AT&T, havia o Berkeley Software Distribution (BSD), o Xenix e mais. Não foi fácil transportar entre esses sabores. A promessa de portabilidade de aplicativos atingiu um obstáculo. Nas próximas décadas, a introdução de novos sistemas operacionais apenas tornaria mais complexo portar aplicativos em hardware, sistemas operacionais e fornecedores.

O padrão POSIX foi desenvolvido na década de 1980 para resolver o problema de portabilidade. O padrão foi definido com base no System V e BSD Unix. POSIX não define o sistema operacional, apenas define a interface entre um aplicativo e um sistema operacional. Os programadores têm a liberdade de escrever seu sistema operacional e aplicativo da maneira que quiserem, desde que a interface entre os dois seja respeitada. Como POSIX é independente de hardware, sistema operacional ou fornecedor, é mais fácil conseguir portabilidade de aplicativo.

O primeiro padrão POSIX foi lançado em 1988. Formalmente, era chamado de IEEE Standard 1003.1-1988 Interface de sistema operacional portátil para ambientes de computador ”. Em 1990, uma versão internacional do mesmo padrão com pequenas variações foi lançada como ISO / IEC 9945-1: 1990 Tecnologia da informação - Portable Operating System Interface (POSIX) - Parte 1: System Application Program Interface (API).

Inicialmente, POSIX foi dividido em vários padrões:

POSIX.1: Serviços essenciais
POSIX.1b: Extensões em tempo real
POSIX.1c: Extensões de tópicos
POSIX.2: Shell e utilitários

Depois de 1997, o Austin Group trouxe todos os padrões sob um único guarda-chuva. Desde então, as versões POSIX.1-2001 (também conhecido como IEEE Std 1003.1-2001), POSIX.1-2004 (também conhecido como IEEE Std 1003.1-2004) e POSIX.1-2008 (também conhecido como IEEE Std 1003.1-2008) foram lançados.

Exemplos de alguns sistemas compatíveis com POSIX são AIX, HP-UX, Solaris e MacOS (desde 10.5 leopardo). Por outro lado, distribuições Android, FreeBSD, Linux, OpenBSD, VMWare, etc., seguem a maior parte do padrão POSIX, mas não são certificados.

Noções básicas de POSIX

POSIX.O padrão 1-2008 trata de quatro áreas principais:

  1. Volume de definição de base: Termos gerais, conceitos e interfaces.
  2. Volume de interfaces de sistemas: Definições de funções e sub-rotinas de serviço do sistema. Além disso, inclui portabilidade, tratamento de erros e recuperação de erros.
  3. Volume Shell e Utilitários: Definição de interfaces de qualquer aplicativo para shells de comando e programas utilitários comuns.
  4. Volume da justificativa: Contém informações e histórico sobre recursos adicionados ou descartados e os motivos das decisões.

O padrão não cobre interfaces gráficas, interfaces de banco de dados, portabilidade de código de objeto / binário, configurações de sistema, considerações de E / S ou disponibilidade de recursos.

Alguns dos princípios orientadores por trás do design POSIX são:

Desenvolvimento de aplicativos POSIX

O objetivo do POSIX era melhorar a portabilidade. Quando seu código-fonte segue o padrão, você pode compilar e executar o código em uma máquina diferente facilmente. No entanto, se POSIX for definido como um requisito geral para um aplicativo, pode causar confusão. O padrão POSIX completo é de 4000 páginas com mais de 1350 interfaces. Não faz sentido implementar tudo. Portanto, cada projeto deve definir os aspectos do POSIX que atenderão a requisitos específicos.

Existem ideias erradas na comunidade de desenvolvimento de que o padrão POSIX é antigo e irrelevante. Não é verdade. POSIX é um documento vivo que está sendo atualizado regularmente pelo Austin Group. Qualquer pessoa pode se juntar ao grupo e participar da melhoria do padrão. O padrão é usado ativamente nos atuais servidores, estações de trabalho, roteadores, dispositivos móveis, sistemas embarcados e muito mais. É usado para máquinas UNIX e Linux.

No entanto, os desenvolvedores devem estar cientes de que o padrão POSIX tem problemas. Você pode relatar qualquer bug que descobrir ao Austin Group e ele será analisado na próxima revisão.

Conclusão
POSIX pode parecer assustador no início. Ainda assim, os desenvolvedores de aplicativos devem se familiarizar com o básico, pois isso aparecerá como um requisito de vez em quando. Devido ao grande escopo da norma, não é possível se tornar um especialista no documento completo. Os desenvolvedores podem entrar em contato com as comunidades UNIX e Linux para saber mais. As comunidades podem responder às suas perguntas e dar a você uma noção melhor de qual parte do padrão será relevante para o seu projeto.

Um estudo mais aprofundado:

Referências:

Controle e gerencie o movimento do mouse entre vários monitores no Windows 10
Gerenciador de mouse com tela dupla permite que você controle e configure o movimento do mouse entre vários monitores, diminuindo seus movimentos pert...
WinMouse permite que você personalize e melhore o movimento do ponteiro do mouse no PC com Windows
Se você quiser melhorar as funções padrão do ponteiro do mouse, use um freeware WinMouse. Ele adiciona mais recursos para ajudá-lo a obter o máximo do...
O botão esquerdo do mouse não funciona no Windows 10
Se você estiver usando um mouse dedicado com seu laptop ou computador desktop, mas o o botão esquerdo do mouse não funciona no Windows 10/8/7 por algu...