Windows NT - Windows NT

Windows NT
Logótipo e marca nominativa do Windows - 2021.svg
Desenvolvedor Microsoft
Escrito em C , linguagem Assembly
(núcleo)
C ++ , C #
(aplicativos de modo de usuário (C ++ é usado no subsistema gráfico do kernel))
Estado de trabalho Atual
Modelo fonte
lançamento inicial 27 de julho de 1993 ; 28 anos atrás (como Windows NT 3.1 ) ( 27/07/1993 )
Último lançamento 10.0.22000.194 (4 de outubro de 2021 ; 8 dias atrás ) [±] ( 2021-10-04 )
Antevisão mais recente 10.0.22471.1000 (4 de outubro de 2021 ; 8 dias atrás ) [±] ( 2021-10-04 )
Método de atualização Windows Update , Windows Server Update Services
Plataformas IA-32 , x86-64 , ARM e ARM64 (e historicamente Intel i860 , DEC Alpha , Itanium , MIPS e PowerPC )
Tipo de kernel Híbrido ( NT )
Influenciado por RSX-11 , VAXELN , OpenVMS , MICA , MS-DOS , OS / 2 , Windows 3.1x

Interface de usuário padrão
Gráfico ( shell do Windows )
Licença Dependendo da versão, edição ou escolha do cliente: Trialware , software comercial , licenciamento por volume , OEM somente, SaaS , S + S
Website oficial www .microsoft .com / windows /

O Windows NT é um sistema operacional gráfico proprietário produzido pela Microsoft , cuja primeira versão foi lançada em 27 de julho de 1993. É um sistema operacional multiprocessador e multiusuário independente do processador .

A primeira versão do Windows NT foi o Windows NT 3.1 e foi produzida para estações de trabalho e computadores servidores . O objetivo era complementar as versões de consumidor do Windows baseadas no MS-DOS (incluindo o Windows 1.0 até o Windows 3.1x ). Gradualmente, a família Windows NT foi expandida para a linha de produtos de sistema operacional de uso geral da Microsoft para todos os computadores pessoais , substituindo a família Windows 9x .

"NT" foi anteriormente expandido para "Nova Tecnologia", mas não carrega mais nenhum significado específico. A partir do Windows 2000 , "NT" foi removido do nome do produto e está incluído apenas na string da versão do produto junto com vários locais de baixo nível dentro do sistema.

O NT foi a primeira versão puramente de 32 bits do Windows, enquanto suas contrapartes voltadas para o consumidor, Windows 3.1x e Windows 9x, eram híbridos de 16 bits / 32 bits. É um sistema operacional de arquitetura múltipla. Inicialmente, ele suportava várias arquiteturas de conjunto de instruções , incluindo IA-32 , MIPS e DEC Alpha ; suporte para PowerPC , Itanium , x64 e ARM foram adicionados posteriormente. As versões mais recentes suportam x86 (incluindo IA-32 e x64) e ARM. Os principais recursos da família Windows NT incluem Windows Shell , Windows API , Native API , Active Directory , Política de Grupo , Camada de Abstração de Hardware , NTFS , BitLocker , Windows Store , Windows Update e Hyper-V .

Nomeação

Foi sugerido que Dave Cutler pretendia o inicialismo "WNT" como uma brincadeira com VMS , incrementando cada letra em uma . No entanto, o projeto foi originalmente planejado como uma continuação do OS / 2 e foi referido como "NT OS / 2" antes de receber a marca Windows. Um dos desenvolvedores do NT original, Mark Lucovsky , afirma que o nome foi tirado do processador de destino original - o Intel i860 , codinome N10 ("N-Ten"). Uma sessão de perguntas e respostas (Q&A) de 1998 com Bill Gates revelou que as cartas foram previamente expandidas para "Nova Tecnologia", mas não carregam mais nenhum significado específico. As letras foram retiradas dos nomes das versões do Windows 2000 e posteriores, embora a Microsoft tenha descrito esse produto como sendo "Construído com base na tecnologia NT".

Principais características

Um dos principais objetivos do NT é a portabilidade de hardware e software. Várias versões dos sistemas operacionais da família NT foram lançadas para uma variedade de arquiteturas de processador, inicialmente IA-32 , MIPS e DEC Alpha , com PowerPC , Itanium , x86-64 e ARM suportados em versões posteriores. Uma ideia inicial era ter uma base de código comum com uma Hardware Abstraction Layer (HAL) customizada para cada plataforma. No entanto, o suporte para MIPS, Alpha e PowerPC foi abandonado posteriormente no Windows 2000 . A ampla compatibilidade de software foi alcançada inicialmente com suporte para várias "personalidades" de API , incluindo API do Windows , POSIX e APIs do OS / 2 - as duas últimas foram eliminadas a partir do Windows XP. A compatibilidade parcial do MS-DOS e do Windows de 16 bits é obtida no IA-32 por meio de uma máquina virtual DOS integrada - embora esse recurso não esteja disponível em outras arquiteturas.

O NT tem suporte para listas de controle de acesso por objeto (arquivo, função e função), permitindo que um rico conjunto de permissões de segurança seja aplicado a sistemas e serviços. O NT também oferece suporte a protocolos de rede do Windows, herdando a rede OS / 2 LAN Manager anterior , bem como a rede TCP / IP (para a qual a Microsoft costumava implementar uma pilha TCP / IP derivada inicialmente de uma pilha baseada em STREAMS da Spider Systems , e posteriormente reescrito internamente).

O Windows NT 3.1 foi a primeira versão do Windows a usar endereçamento de memória virtual plana de 32 bits em processadores de 32 bits. Seu produto complementar, o Windows 3.1, usava endereçamento segmentado e alterna o endereçamento de 16 para 32 bits nas páginas.

O Windows NT 3.1 apresentava um kernel central fornecendo uma API do sistema, executando no modo supervisor (anel 0 em x86; referido no Windows NT como "modo kernel" em todas as plataformas) e um conjunto de ambientes de espaço do usuário com suas próprias APIs que incluiu o novo ambiente Win32, um ambiente de modo de texto OS / 2 1.3 e um ambiente POSIX. O kernel multitarefa totalmente preemptivo poderia interromper a execução de tarefas para agendar outras tarefas, sem depender de programas do usuário para voluntariamente desistir do controle da CPU, como nos aplicativos Windows 3.1 do Windows (embora os aplicativos do MS-DOS fossem multitarefa preventivamente no Windows a partir do Windows / 386 )

Notavelmente, no Windows NT 3.x, vários subsistemas de driver de E / S, como vídeo e impressão, eram subsistemas de modo de usuário . No Windows NT 4, os subsistemas de vídeo, servidor e spooler de impressora foram movidos para o modo kernel. A primeira GUI do Windows NT foi fortemente influenciada (e programaticamente compatível com) a do Windows 3.1; A interface do Windows NT 4 foi reprojetada para corresponder à do novo Windows 95 , passando do Gerenciador de Programas para o design do shell do Windows .

NTFS , um sistema de arquivos seguro com registro de mudanças, é um recurso importante do NT. O Windows NT também permite outros sistemas de arquivos instaláveis; desde as versões 3.1, o NT pode ser instalado em sistemas de arquivos FAT ou HPFS .

O Windows NT introduziu seu próprio modelo de driver, o modelo de driver do Windows NT, e é incompatível com estruturas de driver mais antigas. Com o Windows 2000 , o modelo de driver do Windows NT foi aprimorado para se tornar o modelo de driver do Windows , que foi introduzido pela primeira vez com o Windows 98 , mas foi baseado no modelo de driver do NT. O Windows Vista adicionou suporte nativo para o Windows Driver Foundation , que também está disponível para Windows XP , Windows Server 2003 e, até certo ponto, Windows 2000 .

Desenvolvimento

Marca original do Windows NT

A Microsoft decidiu criar um sistema operacional portátil, compatível com OS / 2 e POSIX e com suporte a multiprocessamento , em outubro de 1988. Quando o desenvolvimento começou em novembro de 1989, o Windows NT era 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 ao processador Intel i860 XR 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 demandante de recursos , resultando no lançamento do Windows 3.0 em maio de 1990.

O Windows 3.0 foi eventualmente tão bem-sucedido que a Microsoft decidiu mudar a interface de programação de aplicativo principal para o ainda não lançado NT OS / 2 (como era então conhecido) de uma API OS / 2 estendida para uma API Windows estendida . Essa decisão causou tensão entre a Microsoft e a IBM e a colaboração acabou por se desfazer.

A IBM continuou o desenvolvimento do OS / 2 sozinha, enquanto a Microsoft continuou a trabalhar 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 acabaria sendo muito mais bem-sucedido do que o OS / 2.

A Microsoft contratou um grupo de desenvolvedores da Digital Equipment Corporation liderado por Dave Cutler para construir o Windows NT, e muitos elementos do design refletem a experiência DEC anterior com VMS, VAXELN e RSX-11 de Cutler , mas também um sistema operacional baseado em objeto não lançado desenvolvido por Dave Cutler da Digital, codinome MICA . A equipe foi acompanhada por membros selecionados da equipe OS / 2 dissolvida, incluindo Moshe Dunie .

Arquitetura Windows 2000

O kernel VMS foi escrito principalmente em VAX MACRO , mas o Windows NT foi projetado para rodar em múltiplas arquiteturas de conjunto de instruções e múltiplas plataformas de hardware dentro de cada arquitetura. As dependências da plataforma são ocultadas do resto do sistema pela HAL (Hardware Abstraction Layer).

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 compatibilidade retroativa 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 e Data Structures , publicadas pela Digital Press , descrevem com precisão os internos do Windows NT usando termos VMS. Em vez de uma ação judicial, a Microsoft concordou em pagar DEC $ 65–100 milhões, ajudar a comercializar o VMS, treinar o pessoal da Digital no Windows NT e continuar com o suporte do Windows NT para o DEC Alpha.

O gerenciamento , os processos e a programação de memória do Windows NT e VMS são muito semelhantes. O gerenciamento de processos do Windows NT difere pela implementação de threading , que a DEC não implementou até o VMS 7.0 em 1995, provavelmente para competir com a Microsoft.

Como o VMS, o código do modo kernel do Windows NT distingue entre o "kernel", cujo objetivo principal é implementar funções dependentes do processador e da arquitetura, e o "executivo". Ele foi projetado como um microkernel modificado , já que o kernel do Windows NT foi influenciado pelo microkernel Mach desenvolvido por Richard Rashid na Carnegie Mellon University, mas não atende a todos os critérios de um microkernel puro. Tanto o kernel quanto o executivo estão vinculados no único módulo carregado ntoskrnl.exe ; 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, de drivers de dispositivo no modo kernel.

Os conjuntos de API da família Windows NT são implementados como subsistemas sobre a API "nativa" publicamente não documentada ; 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.

Lançamentos

Lançamentos do Windows NT
Versão Nome de marketing Edições Data de lançamento Número de construção
3,1 Windows NT 3.1 Estação de trabalho (nomeada apenas Windows NT ), Advanced Server 27 de julho de 1993 528
3,5 Windows NT 3.5 Estação de trabalho, servidor 21 de setembro de 1994 807
3,51 Windows NT 3.51 30 de maio de 1995 1057
4,0 Windows NT 4.0 Estação de trabalho, servidor, servidor empresarial, servidor de terminal, incorporado 24 de agosto de 1996 1381
5.0 Windows 2000 Profissional, Servidor, Servidor Avançado 17 de fevereiro de 2000 2195
Servidor Datacenter 26 de setembro de 2000
5,1 Windows XP Home, Professional, Media Center (original, 2004 e 2005), Tablet PC (original e 2005), Starter, Embedded , Home N, Professional N 25 de outubro de 2001 2600
Fundamentos do Windows para PCs herdados N / D 8 de julho de 2006
5,2 Windows XP Edição de 64 bits, versão 2003 ( IA-64 ) 28 de março de 2003 3790
Windows Server 2003 Padrão, Enterprise, Datacenter, Web, Storage, Small Business Server, Compute Cluster 24 de abril de 2003
Windows XP Professional x64 Edition ( x86-64 ) 25 de abril de 2005
Windows Server 2003 R2 Padrão, Enterprise, Datacenter, Web, Storage, Small Business Server, Compute Cluster 6 de dezembro de 2005
Windows Home Server N / D 4 de novembro de 2007
6,0 Windows Vista Starter, Home Basic, Home Premium, Business, Enterprise, Ultimate
  • Negócios: 30 de novembro de 2006
  • Consumidor: 30 de janeiro de 2007
  • 6000 (RTM)
  • 6001 (SP1)
  • 6002 (SP2)
  • 6003 (atualização SP2)
Windows Server 2008 Foundation, Standard, Enterprise, Datacenter, Web Server, HPC Server, Itanium-Based Systems 27 de fevereiro de 2008
  • 6001 (RTM)
  • 6002 (SP2)
  • 6003 (atualização SP2)
6,1 Windows 7 Starter, Home Basic, Home Premium, Professional, Enterprise, Ultimate 22 de outubro de 2009
  • 7600 (RTM)
  • 7601 (SP1)
Windows Server 2008 R2 Foundation, Standard, Enterprise, Datacenter, Web Server, HPC Server, Itanium-Based Systems
Windows Home Server 2011 Home Server Premium 6 de abril de 2011
  • 7601 (SP1)
PC com Windows Thin 6 de junho de 2011
6,2 Windows 8 Windows 8, Windows 8 Pro, Windows 8 Enterprise, Windows RT 26 de outubro de 2012 9200
Windows Server 2012 Foundation, Essentials, Standard, Datacenter 4 de setembro de 2012
6,3 Windows 8.1 Windows 8.1, Windows 8.1 Pro, Windows 8.1 Enterprise, Windows RT 8.1 18 de outubro de 2013 9600
Windows Server 2012 R2 Foundation, Essentials, Standard, Datacenter
10,0 Windows 10 Home Single Language, Home China, Home, Pro, Pro Education, Pro para Workstations, Enterprise, Education, Windows 10 S, IoT Core, Mobile , Mobile Enterprise 29 de julho de 2015
  • 10240 (TH1)
  • 10586 (TH2)
  • 14393 (RS1)
  • 15063 (RS2)
  • 16299 (RS3)
  • 17134 (RS4)
  • 17763 (RS5)
  • 18362 (19H1)
  • 18363 (19H2)
  • 19041 (20H1)
  • 19042 (20H2)

19043 (21H1)

Windows Server 2016 Essentials, Standard, Datacenter, Multipoint Premium Server, Storage Server, Hyper-V Server 26 de setembro de 2016
  • 14393 (RS1)
Windows Server 2019 Essentials, Standard, Datacenter, Servidor Multipoint Premium, Servidor Hyper-V 2 de outubro de 2018
  • 17763 (RS5)
Windows Server 2022 18 de agosto de 2021
  • 20348 (ferro)
Windows 11 Home Single Language, Home China, Home, Pro, Pro Education, Pro for Workstations 5 de outubro de 2021
  • 22000 (21H2)

O Windows NT 3.1 a 3.51 incorporou o Gerenciador de Programas e o Gerenciador de Arquivos da série Windows 3.1x . O Windows NT 4.0 em diante substituiu esses programas pelo Windows Explorer (incluindo uma barra de tarefas e o menu Iniciar ), que originalmente aparecia no Windows 95 .

O primeiro lançamento recebeu o número de versão 3.1 para corresponder ao Windows contemporâneo de 16 bits; revistas da época afirmavam que o número também era usado para fazer essa versão parecer mais confiável do que um lançamento ".0". Além disso, o protocolo Novell IPX foi aparentemente licenciado apenas para as versões 3.1 do software Windows.

O número da versão do NT não é geralmente usado para fins de marketing, mas ainda é usado internamente e reflete o grau de alterações no núcleo do sistema operacional. No entanto, por razões de compatibilidade de aplicativos, a Microsoft manteve o número da versão principal como 6 nos lançamentos após o Vista, mas o alterou posteriormente para 10 no Windows 10. O número da compilação é um identificador interno usado pelos desenvolvedores e testadores beta da Microsoft.

A partir do Windows 8.1 , a Microsoft mudou o comportamento das funções do Auxiliar da API da Versão. Se um aplicativo não for manifestado para Windows 8.1 ou posterior, a API sempre retornará a versão 6.2, que é o número da versão do Windows 8 . Isso ocorre porque o recurso de manifesto foi introduzido com o Windows 8.1, para substituir GetVersion e funções relacionadas.

Linguagem de programação

O Windows NT é escrito em C e C ++ , com uma quantidade muito pequena escrita em linguagem assembly . C é usado principalmente para o código do kernel, enquanto C ++ é usado principalmente para código de modo de usuário. A linguagem assembly é evitada sempre que possível porque impediria a portabilidade .

Plataformas suportadas

Plataformas de 32 bits

Para evitar que códigos específicos do Intel x86 entrem no sistema operacional por desenvolvedores acostumados a desenvolver em chips x86, o Windows NT 3.1 foi inicialmente desenvolvido usando sistemas de desenvolvimento não x86 e depois transferido para a arquitetura x86. Este trabalho foi inicialmente baseado no Intel i860 baseados Dazzle sistema e, depois, a base-R4000 MIPS Jazz plataforma. Ambos os sistemas foram projetados internamente na Microsoft.

O Windows NT 3.1 foi lançado para plataformas Intel x86 PC compatível , PC-98 , DEC Alpha e MIPS compatível com ARC . O Windows NT 3.51 adicionou suporte para o processador PowerPC em 1995, especificamente sistemas compatíveis com PReP , como os desktops / laptops IBM Power Series e a série Motorola PowerStack; mas apesar das reuniões entre Michael Spindler e Bill Gates, não no Power Macintosh, pois o projeto Power Macintosh compatível com PReP não foi lançado.

A Intergraph Corporation portou o Windows NT para sua arquitetura Clipper e mais tarde anunciou a intenção de portar o Windows NT 3.51 para a arquitetura SPARC da Sun Microsystems , mas nenhuma das versões foi vendida ao público como um produto de varejo.

Apenas duas das variantes do Windows NT 4.0 (IA-32 e Alpha) têm um conjunto completo de service packs disponíveis. Todas as outras portas feitas por terceiros (Motorola, Intergraph, etc.) têm poucas, se houver, atualizações disponíveis publicamente.

O Windows NT 4.0 foi a última versão principal a oferecer suporte a Alpha, MIPS ou PowerPC, embora o desenvolvimento do Windows 2000 para Alpha tenha continuado até agosto de 1999, quando a Compaq interrompeu o suporte para Windows NT nessa arquitetura; e três dias depois, a Microsoft também cancelou seu programa AlphaNT, embora o lançamento do Alpha NT 5 (Windows 2000) tivesse alcançado o status RC1 .

A Microsoft anunciou em 5 de janeiro de 2011 que a próxima versão principal da família Windows NT incluirá suporte para a arquitetura ARM . A Microsoft demonstrou uma versão preliminar do Windows (versão 6.2.7867) em execução em um computador baseado em ARM no 2011 Consumer Electronics Show . Isso acabou levando ao lançamento comercial do Windows RT derivado do Windows 8 em 26 de outubro de 2012 e à implementação do NT sobre CE no Windows Phone 8 .

De acordo com a Microsoft, é um equívoco comum que o Xbox e o Xbox 360 usem um kernel do Windows 2000 modificado. Na realidade, o sistema operacional do Xbox foi construído do zero, mas implementa um subconjunto de APIs do Windows . O Xbox One e o Xbox Series X / S , no entanto, usam uma versão modificada do Windows 10.

O Windows 11 será a primeira versão sem servidor do Windows NT a não oferecer suporte a plataformas de 32 bits.

Plataformas de 64 bits

As versões de 64 bits do Windows NT foram originalmente planejadas para rodar em Itanium e DEC Alpha ; o último foi usado internamente na Microsoft durante o desenvolvimento inicial do Windows de 64 bits. Isso continuou por algum tempo depois que a Microsoft anunciou publicamente que estava cancelando os planos de lançar o Windows de 64 bits para Alpha. Devido a isso, as versões Alpha do Windows NT são apenas de 32 bits.

Enquanto o Windows 2000 suporta apenas Intel IA-32 (32 bits), Windows XP, Server 2003, Server 2008 e Server 2008 R2, cada um tem uma edição dedicada a sistemas baseados em Itanium. Em comparação com o Itanium, a Microsoft adotou o x64 em uma escala maior: todas as versões do Windows desde o Windows XP (que tem uma edição x64 dedicada ) têm edições x64.

Requisitos de hardware

A especificação mínima de hardware necessária para executar cada lançamento da versão profissional da estação de trabalho do Windows NT tem sido bastante lenta até o lançamento do Vista 6.0, que requer um mínimo de 15 GB de espaço livre em disco, um aumento de 10 vezes no espaço livre em disco sozinho em relação à versão anterior.

Requisitos mínimos de hardware do Windows NT
Versão Windows CPU RAM Espaço livre em disco
NT 3.1 i386 , 25 MHz 12 MB 90 MB
NT 3.1 Advanced Server 16 MB
Estação de Trabalho NT 3.5 12 MB
Servidor NT 3.5 16 MB
Estação de Trabalho NT 3.51 12 MB
Servidor NT 3.51 16 MB
Estação de Trabalho NT 4.0 i486 , 25 MHz 12 MB 124 MB
Servidor NT 4.0 16 MB
2000 Professional Pentium , 133 MHz 32 MB 650 MB
Server 2000 128 MB
XP Pentium, 233 MHz 64 MB 1,5 GB
Server 2003 133 MHz 128 MB
Vista Home Basic 800 MHz 512 MB 20 GB
Vista (outras edições) 1 GHz 1 GB 40 GB
7 para IA-32 16 GB
7 para x64 2 GB 20 GB
8 para IA-32 1 GHz com NX bit , SSE2 , PAE 1 GB 16 GB
8 para x64 2 GB 20 GB
8,1 para IA-32 1 GB 16 GB
8,1 para x64 1 GHz com NX bit , SSE2 , PAE , CMPXCHG16b, PrefetchW e LAHF / SAHF 2 GB 20 GB
10 para IA-32 (v1507-1809) 1 GHz com NX bit , SSE2 , PAE 1 GB 16 GB
10 para x64 (v1507-1809) 1 GHz com NX bit , SSE2 , PAE , CMPXCHG16b, PrefetchW e LAHF / SAHF 2 GB 20 GB
10 para IA-32 (v1903 e posterior) 1 GHz com NX bit , SSE2 , PAE 1 GB 32 GB
10 para x64 (v1903 e posterior) 1 GHz com NX bit , SSE2 , PAE , CMPXCHG16b, PrefetchW e LAHF / SAHF 2 GB
11 para x64 1 GHz dual-core com NX bit , SSE4.1 , PAE , CMPXCHG16b, PrefetchW e LAHF / SAHF 4GB 64 GB
11 para ARM64 1 GHz dual-core com PF_ARM_V81_ATOMIC_INSTRUCTIONS_AVAILABLE

Veja também

Notas

Referências

links externos