Windows NT é uma família de sistemas operacionais produzidos pela Microsoft, a primeira versão da qual foi lançado em 27 de julho de 1993.
Os sistemas operacionais Windows NT são projetados para usuários corporativos, servidores e workstations, inicialmente ao lado dos sistemas operacionais Windows 3.x e, posteriormente, do Windows 9x, destinados a usuários domésticos e automação de escritórios. Com o Windows XP, em 2001 a linha Windows NT também fica disponível para usuários domésticos.
A abreviação "NT" de "New Technology", que a partir do Windows 2000, foi removida do nome do sistema e só está mantida na sequência da versão do produto, no entanto, o Windows 2000 tem o slogan, Desenvolvido com a tecnologia NT, na tela Iniciar, e sua pasta de instalação padrão é C:\WINNT.
NT foi a primeira versão puramente de 32 bits do Windows, enquanto suas contrapartes orientadas ao consumidor, Windows 3.1x e Windows 9x, eram híbridos de 16 bits/32 bits.
É um sistema operacional multi-arquitetura, a ideia era ter uma base de código comum com uma camada de abstração de hardware (HAL) personalizada para cada plataforma.
Inicialmente, ele suportava várias arquiteturas de conjuntos de instruções, incluindo IA-32, MIPS e DEC Alpha; suporte para PowerPC, Itanium, x64 e ARM foram adicionados mais tarde. As versões mais recentes suportam x86 (mais especificamente IA-32 e x64) e ARM.
Os principais recursos da família Windows NT incluem Windows Shell, Windows API, native API, Active Directory, Group Policy, Hardware Abstraction Layer (HAL), NTFS, BitLocker, Windows Store, Windows Update e Hyper-V.
Arquitetura Desde a sua criação, o Windows NT foi inspirado pela filosofia unix e difere fortemente dos sistemas baseados em MS-DOS: a configuração é multi-usuário, multi-processo (ou multitarefa), multiprocessador. O sistema de arquivos seguro, journaled NTFS gerencia adequadamente vários usuários, atribuindo a cada arquivo direitos de acesso específicos para cada usuário.
Kernel miniaturadaimagem|A arquitetura da família do sistema operacional Windows NT consiste em duas camadas (modo de usuário e modo kernel), com muitos módulos diferentes dentro dessas duas camadas. O kernel do Windows NT é muitas vezes equivocadamente considerado micronúcleo, na verdade é híbrido. De fato, a definição de micronúcleo exige que apenas serviços essenciais devem residir no kernel, e todos os outros serviços do sistema operacional, incluindo gerenciamento de memória e I/O entrada/saída, devem funcionar no modo de usuário em espaços de memória separados.
No entanto, por razões de desempenho, quase nenhum sistema operacional tem um micronúcleo puro (a única exceção é Mach). No Windows NT, muitos serviços são implementados no modo kernel, incluindo o sistema de arquivos, o gerenciamento de memória e, começando pelo Windows NT 4, o gerenciamento de gráficos. Em termos de desempenho e segurança, isso é equivalente a núcleos monolíticos (como UNIX e Linux), mas permite maior flexibilidade.
O kernel do Windows NT foi o primeiro totalmente de 32bit do Windows, tem um agendador de tarefas preemptivo (ou seja, ele lida com a liberação antecipada do processo, permitindo que você liberte a CPU de um processo que vem se envolvendo com ele há muito tempo). Além disso, ao contrário do Windows 9x, o kernel é completamente reentrante, para o benefício do desempenho, na verdade, no Windows 9x, quando um aplicativo requer um serviço de sistema, que geralmente é de 16 bits e não-reentrante, o aplicativo engaja uma seção crítica global, efetivamente tornando o sistema monotarefa.
O Windows NT 3.1 apresentava um núcleo central que fornece uma API do sistema, em execução no modo supervisor (ring 0 em x86; referido no Windows NT como "modo kernel" em todas as plataformas), e um conjunto de ambientes de espaço para o usuário com suas próprias APIs que incluíam o novo ambiente Win32, um ambiente de modo de texto OS/2 1.3 e um ambiente POSIX.
A ampla compatibilidade de software foi alcançada com suporte para várias "personalidades" da API, incluindo API do Windows, POSIX, e OS/2 APIs – as duas últimas foram eliminadas gradualmente a partir do Windows XP. A compatibilidade parcial do MS-DOS foi alcançada através de uma Máquina Virtual DOS integrada – embora este recurso esteja sendo eliminado gradualmente na arquitetura x86-64. Listas de controle de acesso (ACL) por objeto suportado por objeto (arquivo, função e função) permitem que um rico conjunto de permissões de segurança seja aplicada a sistemas e serviços. O NT suportava protocolos de rede do Windows, herdando o gerenciador de rede LAN do OS/2, bem como a rede TCP/IP (para a qual a Microsoft implementaria uma pilha TCP/IP derivada inicialmente de uma pilha baseada em STREAMS da Spider Systems e, posteriormente, reescrita internamente).
A primeira GUI do Windows NT foi fortemente influenciada (e programáticamente compatível com) Windows 3.1x; A interface do Windows NT 4 foi redesenhada para coincidir com a do novo Windows 95, passando do Program Manager para o Windows shell design.
Windows NT e sua ligação com o VMS e OS/2 miniaturadaimagem|Windows NT logo A Microsoft decidiu criar um sistema operacional portátil, compatível com OS/2 e POSIX e suportando multiprocessamento, em outubro de 1988. Quando o desenvolvimento começou em novembro de 1989, o Windows NT seria conhecido como OS/2 3.0, a terceira versão do sistema operacional desenvolvido em conjunto pela Microsoft e IBM. Para garantir a portabilidade, o desenvolvimento inicial foi direcionado para o processador Intel i860XR RISC, mudando para o MIPS R3000 no final de 1989, e depois para o Intel i386 em 1990.
A Microsoft também continuou o desenvolvimento paralelo do ambiente Windows baseado em DOS e menos exigente de recursos, resultando na liberação do Windows 3.0 em maio de 1990.
O Windows 3.0 foi finalmente tão bem sucedido que a Microsoft decidiu alterar a interface de programação de aplicativos API primária para o ainda não lançado NT OS/2 (como era então conhecido) de uma API estendida do OS/2 para uma API do Windows estendida. Essa decisão causou tensão entre a Microsoft e a IBM e a colaboração acabou desmoronando.
A IBM continuou o desenvolvimento do OS/2 sozinha, enquanto a Microsoft continuou o trabalho no recém-renomeado Windows NT. Embora nenhum dos sistemas operacionais fosse imediatamente tão popular quanto os produtos MS-DOS ou Windows da Microsoft, o Windows NT eventualmente seria muito mais bem sucedido do que o OS/2.
A Microsoft contratou um grupo de desenvolvedores da Digital Equipment Corporation (DEC), liderados por Dave Cutler para construir o Windows NT, e muitos elementos do design refletem a experiência anterior da DEC com o VMS de Cutler e o RSX-11, mas também um sistema operacional object-based inédito desenvolvido por Dave Cutler para o DEC Prism. A equipe foi acompanhada por membros selecionados da equipe dissolvida do OS/2, incluindo Moshe Dunie.
O kernel VMS foi escrito no VAX Macro, mas o Windows NT foi projetado para ser executado em várias arquiteturas de conjuntos de instruções e várias plataformas de hardware dentro de cada arquitetura. As dependências da plataforma são ocultas do resto do sistema pela camada de abstração de hardware (HAL).
Durante a criação do Windows NT, os desenvolvedores da Microsoft reescreveram o VMS em C. Embora tenham adicionado a API Win32, sistema de arquivos NTFS, GUI e retrocompatibilidade com DOS, OS/2 e Win16, os engenheiros da DEC quase imediatamente notaram as semelhanças internas dos dois sistemas operacionais; partes de VAX/VMS Internals and Data Structures, publicados pela Digital Press, descrevem com precisão os internos do Windows NT usando termos VMS. Em vez de um processo judicial, a Microsoft concordou em pagar a DEC $65–100 milhões, ajudar o mercado do VMS, treinar pessoal digital no Windows NT e continuar o suporte ao Windows NT para o DEC Alpha.
O gerenciamento de memória do Windows NT e do VMS, os processos e o agendamento são muito semelhantes. O gerenciamento de processos do Windows NT difere ao implementar threading, que a DEC não implementou até o VMS 7.0 em 1995, provavelmente para competir com a Microsoft.
Como no VMS, o código do modo kernel do Windows NT distingue entre o "kernel", cujo objetivo principal é implementar funções dependentes de processador e arquitetura e o "executivo". Este foi projetado como um micronúcleo modificado, como o kernel Windows NT foi influenciado pelo micronúcleo Mach desenvolvido na Universidade Carnegie Mellon, mas não atende a todos os critérios de um micronúcleo puro. Tanto o kernel quanto o executivo estão ligados (linked) juntos no módulo único carregado ntoskrnl.exe; de fora deste módulo, há pouca distinção entre o kernel e o executivo. As rotinas de cada um são diretamente acessíveis, como por exemplo, a partir de drivers de dispositivo no modo kernel.
Os conjuntos de API na família Windows NT são implementados como subsistemas no topo da native API não documentada publicamente; isso permitiu a adoção tardia da API do Windows (no subsistema Win32).
O Windows NT foi um dos primeiros sistemas operacionais a usar o Unicode internamente.
Versões do Windows NT