WNT: Windows NT의 실제 이야기. Windows NT, 이 프로그램은 무엇이고 꼭 필요한가요? 하드웨어 요구 사항

1988년 말, Microsoft는 David Cutler에게 새로운 소프트웨어 프로젝트, 즉 1990년대를 위한 Microsoft의 새로운 운영 체제를 만드는 임무를 맡겼습니다. 그는 신기술(NT) 시스템을 개발하기 위해 엔지니어 팀을 구성했습니다.

원래 계획은 OS/2 스타일의 사용자 인터페이스와 API(응용 프로그래밍) 인터페이스를 사용하여 NT를 개발하는 것이었지만 OS/2는 잘 팔리지 않았고 Windows 3.0은 시장에서 계속해서 큰 성공을 거두었습니다. 호환되지 않는 두 시스템의 개발 및 지원과 관련된 시장 압력과 과제를 확인한 후 Microsoft는 방향을 바꾸고 엔지니어들을 단일하고 응집력 있는 운영 체제 전략으로 방향을 전환하기로 결정했습니다. 이 전략은 가장 작은 노트북부터 가장 큰 다중 프로세서 워크스테이션까지 다양한 유형의 컴퓨터를 포괄하는 Windows 기반 운영 체제 제품군을 개발하는 것이었습니다. 따라서 차세대 Windows 시스템은 Windows NT라고 불렸습니다.

Windows NT는 Windows 그래픽 사용자 인터페이스(GUI)를 지원하며 새로운 응용 프로그램 개발을 위한 32비트 프로그래밍 인터페이스인 Win32 API를 지원하는 최초의 Windows 기반 Microsoft 운영 체제이기도 합니다. Win32 API는 다중 스레드 프로세스, 동기화, 보안, I/O 및 개체 관리와 같은 고급 운영 체제 기능을 응용 프로그램에 사용할 수 있도록 합니다.

1993년 7월, NT 제품군의 첫 번째 운영 체제인 Windows NT 3.1과 Windows NT Advanced Server 3.1이 등장했습니다.

버전

  • 윈도우 NT 3.1(1993년 7월 27일)
  • 윈도우 NT 3.5(1994년 9월 21일)
  • 윈도우 NT 3.51(1995년 5월 30일)
  • 윈도우 NT 4.0(1996년 8월 24일)
  • 윈도우 2000 (2000년 2월 17일)
  • 윈도우 XP(2001년 10월 25일)
  • Windows XP 64비트 에디션(2003년 3월 28일)
  • 윈도우 서버 2003(2003년 4월 25일)
  • Windows XP 미디어 센터 에디션 2003(2003년 12월 18일)
  • Windows XP 미디어 센터 에디션 2005(2004년 10월 12일)
  • Windows XP Professional x64 에디션(2005년 4월 25일)
  • 레거시 PC를 위한 Windows 기초(2006년 7월 8일)
  • 윈도우 비스타(2006년 11월 30일)
  • Windows 홈 서버(2007년 11월 7일)
  • Windows Server 2008(2008년 2월 27일)

윈도우 NT 구조

구조적으로 Windows NT는 두 부분, 즉 사용자 모드에서 실행되는 운영 체제 부분과 커널 모드에서 실행되는 운영 체제 부분으로 표현될 수 있습니다.

커널 모드에서 실행되는 Windows NT 부분을 실행 부분이라고 합니다. 여기에는 가상 메모리, 개체(리소스), 입력/출력 및 파일 시스템(네트워크 드라이버 포함), 프로세스 통신 및 부분적으로 보안 시스템을 관리하는 여러 구성 요소가 포함됩니다. 이러한 구성 요소는 모듈 간 통신을 사용하여 서로 상호 작용합니다. 각 구성 요소는 신중하게 지정된 내부 절차 집합을 사용하여 다른 구성 요소를 호출합니다.

사용자 모드에서 작동하는 Windows NT의 두 번째 부분은 소위 보호되는 하위 시스템인 서버로 구성됩니다. 하위 시스템은 자동으로 메모리를 공유할 수 없으므로 메시지를 보내 서로 통신합니다. 메시지는 클라이언트와 서버 사이, 그리고 두 서버 사이에서 전송될 수 있습니다. 모든 메시지는 Windows NT 실행을 통해 전달됩니다. Windows NT 커널은 일반 응용 프로그램 프로세스의 스레드와 동일한 방식으로 보호된 하위 시스템의 스레드를 예약합니다.

보호된 하위 시스템에 대한 지원은 실행 부분에서 제공됩니다. 그 구성요소는 다음과 같습니다:

  • 개체 관리자. 시스템 리소스를 나타내는 데 사용되는 추상 데이터 유형인 런타임 개체를 생성, 삭제 및 관리합니다.
  • 보안 모니터. 로컬 컴퓨터에 보호 규칙을 설정합니다. 운영 체제 리소스를 보호하고 실행 가능한 개체를 보호 및 등록합니다.
  • 프로세스 관리자. 프로세스와 스레드를 생성 및 종료, 일시 중지 및 재개하고 이에 대한 정보도 저장합니다.

가상 메모리 관리자.

  • I/O 하위 시스템. 다음 구성 요소가 포함됩니다.
    • 장치 독립적인 I/O 기능을 제공하는 I/O 관리자;
    • 파일 시스템 - 파일 지향 I/O 요청을 수행하고 이를 일반 장치에 대한 호출로 변환하는 NT 드라이버입니다.
    • 네트워크 리디렉터 및 네트워크 서버 - 원격 I/O 요청을 네트워크 시스템에 전송하고 그로부터 요청을 받는 파일 시스템 드라이버입니다.
    • 실행 장치 드라이버 - 장치를 직접 제어하는 ​​하위 수준 드라이버입니다.
    • 디스크 캐싱을 구현하는 캐시 관리자입니다.

실행 부분은 NT 커널이 제공하는 하위 수준 서비스에 의존합니다. 커널 기능은 다음과 같습니다:

  • 프로세스 계획,
  • 인터럽트와 예외 처리,
  • 다중 프로세서 시스템을 위한 프로세서 동기화,
  • 장애 후 시스템 복구.

커널은 특권 모드에서 실행되며 메모리에서 제거되지 않습니다. 커널은 인터럽트를 통해서만 접근할 수 있습니다.

Windows NT 보호 하위 시스템은 사용자 모드에서 실행되며 운영 체제가 부팅될 때 Windows NT에 의해 생성됩니다. 생성 직후 끝없는 실행 주기를 시작하여 애플리케이션 프로세스 및 기타 하위 시스템에서 오는 메시지에 응답합니다. 보호되는 하위 시스템 중에서 환경 하위 시스템이라는 하위 클래스를 구별할 수 있습니다. 환경 하위 시스템은 운영 체제 애플리케이션 인터페이스(API)를 구현합니다. 통합 하위 시스템이라고 하는 다른 유형의 하위 시스템은 운영 체제에 필요한 작업을 수행합니다. 예를 들어, 대부분의 Windows NT 보안 시스템은 통합 하위 시스템으로 구현됩니다. 네트워크 서버도 통합 하위 시스템으로 구현됩니다.

환경의 가장 중요한 하위 시스템은 32비트 Windows API에 대한 애플리케이션 액세스를 제공하는 하위 시스템인 Win32입니다. 또한 이 시스템은 그래픽 인터페이스를 제공하고 사용자 입력/출력을 관리합니다.

보호되는 각 하위 시스템은 사용자 모드에서 작동하며 실행 시스템 서비스를 호출하여 커널 모드에서 권한 있는 작업을 수행합니다. 네트워크 서버는 설계 방식에 따라 사용자 모드 또는 커널 모드에서 실행될 수 있습니다.

하위 시스템은 메시지를 전달하여 서로 통신합니다. 예를 들어, 사용자 애플리케이션이 일부 API 프로시저를 호출하면 이 프로시저를 제공하는 환경 하위 시스템은 메시지를 수신하고 커널에 액세스하거나 다른 하위 시스템에 메시지를 보내 이를 실행합니다. 절차가 완료된 후 환경 하위 시스템은 반환 값이 포함된 메시지를 애플리케이션에 보냅니다. 보호된 하위 시스템의 메시지 전송 및 기타 활동은 사용자에게 표시되지 않습니다.

모든 Windows NT 하위 시스템을 함께 유지하는 주요 도구는 LPC(로컬 프로시저 호출) 메커니즘입니다. LPC는 네트워크의 다른 시스템에 있는 클라이언트와 서버 간의 통신에 사용되는 보다 일반적인 도구인 RPC(원격 프로시저 호출)의 최적화된 버전입니다.

안녕하세요 여러분, Windows NT는 실제 프로그램이 아니라 Microsoft의 Windows 제품군이라는 점을 바로 말씀드리겠습니다. Windows NT라는 이름에는 특정 운영 체제뿐만 아니라 모든 시스템에 대한 Microsoft의 운영 체제 개념이 숨겨져 있습니다. Windows는 오늘날 매우 인기 있는 운영 체제이며, Windows보다 더 인기 있는 운영 체제는 없습니다. 제 생각에는 인기가 주로 가치있는 대안이 없으며 결코 없을 것이라는 사실 때문이라고 생각합니다. 지금 거대 Microsoft와 경쟁하는 것은 어리석은 일입니다.

그럼에도 불구하고 모든 것이 사실입니다. 이 이름은 여러 곳에 나타나기 때문에 실제로 Windows NT라는 이름을 가질 수 있습니다. 정확한 예를 제시하지는 않고 기억도 나지 않지만 Windows에서 이 비문을 쉽게 볼 수 있습니다.

Windows NT 소프트웨어를 제거할지 여부에 대한 질문에 직면하면 이렇게 대답하겠습니다. 제거하지 않는 것이 좋습니다. 나중에 문제가 발생할 수 있기 때문입니다. 논리적으로 생각해 보면 Windows NT가 작성된 모든 항목이 확실할 경우에만 제거해야 한다는 것이 분명해집니다.

Windows NT는 1990년대에 개발되었습니다. Microsoft가 IBM과의 협력을 중단한 후(오, 그들은 멋진 노트북을 만들었습니다), 이들 회사가 함께 OS/2를 개발했습니다. 그것은 또한 나에게 여전히 불분명하지만 상관없는 운영 체제였습니다. 간단히 말해서, 그들은 Windows를 자르기 시작했고 그 결과가 무엇인지 알고 있습니다. 엄청나게 멋진 Windows, 하나의 독점, 아무도 좋아하지 않지만 모두가 사용합니다.

예, Linux도 있지만 아쉽게도 이는 좁은 범위의 사용자를 위한 것입니다. 단순하고 아름답고 복잡하지 않은 것이 필요한 사람들을 위한 것은 아닙니다. 저는 개인적으로 Windows를 좋아하는데, 어떤 이유에서인지 많은 사람들이 좋아하지 않았지만, 특히 Windows 10에서는 비뚤어진 부분이 보이지 않습니다..

고대 창문, 옛날 옛적에 이것은 걸작이자 궁극적인 꿈이었습니다.


그러나 비교해 보면 이것은 이미 7개, 즉 Windows 7이며 많은 사람들이 여전히 그 위에 앉아 있고 내리지 않을 것입니다.


저는 오랫동안 Windows XP의 팬이었습니다. 아주 오랜 시간 동안이라도 그 자리에 오랫동안 앉아 있었습니다. 이미 Windows 7이 나왔고, XP에 빠져 지내던 중... 그래서 새 하드웨어를 구입했습니다. , 1150 소켓이었고 모든 것이 새롭지만 Windows XP를 설치할 수 있었고 여전히 약 2년 동안 거기에 앉아 있었습니다. 그러다가 Windows 10이 나왔고 결국 Windows 10으로 전환했습니다. 컴퓨터는 몇 주 동안 작동해 왔고 모든 것이 정상이며 결함이나 블루 스크린도 없고 오류도 없습니다. 모든 것이 시계처럼 작동합니다. 사실, 이것은 XP에서도 거의 발생하지 않았습니다. 그래서 어쩐지 모두가 Windows를 좋아하는군요...

나는 Windows NT와 같은 것을 정확히 알 수 있는 목록을 작성했습니다.

  1. 일부 시스템 파일에 대한 설명
  2. Windows 설정, 시스템 설정, Windows NT는 어디에서나 찾을 수 있습니다.
  3. 프로그램의 참고 자료 또는 일부 장비에 대한 지침에도 포함됩니다.
  4. 그럴 가능성은 낮지만 어떤 종류의 바이러스가 Windows NT에 영향을 미칠 가능성이 있습니다.
  5. 시스템 폴더(예: C:\Windows)에는 Windows NT가 포함된 정크 파일이 많이 있습니다.

글을 쓰는 것을 완전히 잊어 버렸고 확실하게 말할 수는 없지만 Windows NT라는 운영 체제 자체가있는 것 같습니다. 여기에 부팅 화면이 있습니다.

뿌리

모든 것은 Digital Equipment Corporation이 32비트 VAX 플랫폼 개발을 시작한 1975년에 시작되었습니다.

이 프로젝트의 리더십은 유명한 PDP-11 미니컴퓨터용 RSX-11M을 만들어 이미 강력한 시스템 엔지니어로 명성을 얻은 Cutler에게 맡겨졌습니다. 1977년에 VAX-11/780 기계와 이를 위한 운영 체제인 VMS 1.0이 발표되었습니다. 4년 후, Cutler는 세 글자로 된 일정한 접두사 뒤에 숫자를 "부여"하는 데 지쳤고 Digital을 떠나기로 결정했습니다. 그러나 회사의 임원들은 더 교활한 것으로 판명되었습니다. 재능있는 개발자를 조직의 품에 유지할 수 없었기 때문에 스타트 업의 분위기를 모방하고 자유로운 창의력을 발휘하기로 결정했습니다. 시애틀에 자율 부서가 만들어졌고 Cutler는 디지털 직원으로부터 직접 필요한 수의 직원(약 200명)을 모집할 수 있었습니다. 새로운 구조는 코드명 Prism이라는 프로세서 아키텍처와 운영 체제를 설계하기 시작했습니다.

Windows NT 제품군의 운영 체제 개발 다이어그램

"행복의 순간"은 오래 가지 못했습니다. 대기업들은 시작한 작업을 논리적인 결론에 도달할 수 없었고, 1988년에 Cutler는 200명의 엔지니어 및 프로그래머와 함께 자유롭게 생계를 꾸릴 수 있었습니다. 그러나 유명한 개발자는 직장을 그만두지 않았습니다. 당시 Bill Gates의 머리에는 Unix 클론과 경쟁할 서버 OS를 만들어야 한다는 결정이 무르익었습니다. 미래의 Microsoft 수석 설계자는 David Cutler를 확보하기 위해 자신이 선택한 전직 디지털 엔지니어 20명을 고용하기로 합의했습니다. 1988년 11월, Digital 소속 5명과 Microsoft 프로그래머 1명으로 구성된 팀이 사업에 착수했습니다.

임무는 코드명 N-Ten인 새로운 Intel i860 RISC 프로세서용 OS를 작성하는 것이었습니다. 그건 그렇고, NT라는 약어가 유래되었으며 나중에 Microsoft 마케팅 담당자가 New Technology로 해석했습니다. 1988년 12월에 이미 시스템의 첫 번째 부분이 준비되었습니다. 문제는 i860이 종이로만 존재했기 때문에 코드를 소프트웨어 에뮬레이터에서 테스트해야 한다는 것이었습니다. 개발은 오늘날 표준에 따라 13MB RAM 및 110MB 하드 드라이브를 갖춘 Intel 386 25MHz 시스템인 "장난감"에서 수행되었습니다.

원래 NT의 기초였던 마이크로커널 아키텍처는 1989년 하드웨어 i860이 작성된 코드를 충분히 효율적으로 실행할 수 없다는 사실이 발견되면서 매우 중요해졌습니다. 우리는 MIPS R3000으로 전환한 다음 표준 Intel 386 프로세서로 전환해야 했는데, 이는 28명의 엔지니어로 성장한 팀에 의해 1년도 채 안 되어 완료되었습니다.

1990년에는 Windows 3.0의 출시와 놀라운 성공이라는 NT 운명의 핵심이 된 가장 중요한 사건이 발생했습니다. 실제로 이는 실제 작업을 수행할 수 있는 적절한 그래픽 인터페이스를 갖춘 Microsoft 최초의 멀티태스킹 OS였습니다. NT의 미래를 미리 결정한 것은 이 인터페이스와 API를 차용한 것이었습니다. 처음에 서버 OS는 IBM과 공동으로 OS/2 프로젝트를 리메이크하여 기존 OS/2 응용 프로그램과 함께 작동할 것으로 예상되었습니다. 그러나 Windows의 세 번째 버전은 적시에 나타났습니다. Redmond는 동맹을 버리고 NT 개발 팀의 방향을 바꾸어 Win16 인터페이스의 "이미지 및 유사성"으로 만들어진 Win32 API를 디자인했습니다. 이는 절실히 필요한 연속성을 제공하여 데스크탑에서 서버 플랫폼으로 애플리케이션을 더 쉽게 포팅할 수 있게 했습니다.

당시 Windows NT로 개편된 NT 개발 그룹은 급속도로 성장하기 시작했고 곧 직원 수는 약 300명에 이르렀습니다. OS/2에 집중하지 못함으로써 Microsoft와 IBM의 관계에 심각한 문제가 발생했습니다. 공식적인 성명은 없었습니다. 단지 회사 간 프레젠테이션에서 IBM 직원이 혼란에 빠진 채 생성된 OS가 회사의 아이디어와 아무 관련이 없다는 사실을 발견했다는 것뿐입니다. 그럼에도 불구하고 Windows NT 3.1(번호 지정은 당시 존재했던 16비트 Windows의 현재 버전으로 "조정"됨)에는 DOS, Win16, POSIX 및 OS/2 API 등에 대한 지원이 포함되었습니다. 1993년 7월, 마이크로소프트의 새로운 서버 시스템이 출시되어 그 여정을 시작했습니다.

그런 다음 모든 일은 순조롭게 진행되었습니다. 1994년 9월에 Windows NT 3.5가 출시되었습니다. 이전 버전은 분주하게 준비했고, 모든 것을 처음부터 코딩해야 했으며, 많은 기능이 구현되지 않은 채로 남아 있었습니다. 이제 효율성, 속도, 그리고 로컬 네트워크 시장을 지배하며 당시의 절대적인 리더였던 NetWare를 기반으로 구축된 네트워크와의 상호 작용을 조직하는 것에 대해 생각할 때입니다. 그 당시 그들이 오늘날처럼 독점 규제 문제에 세심한주의를 기울였다면 아마도 해당 당국에 상응하는 비방을 쓰는 것으로 충분했을 것입니다. 불행하게도 마이크로소프트는 스스로 상황을 파악해야 했습니다. Novell은 Windows NT에 대한 클라이언트 지원을 제공할지 여부에 대해 주저했습니다. Redmond는 더 이상 기다릴 수 없었습니다. 그들은 자신의 NetWare 클라이언트를 작성했고 그것이 너무 좋아서 원래 Novell 소프트웨어가 출시된 후에도 계속 사용되었습니다. 1995년 5월, 마이크로커널 기반 아키텍처 덕분에 특별한 "PowerPC 에디션" OS인 Windows NT 3.51이 등장했습니다. 일부 보고서에 따르면 IBM이 이 프로세서를 시장에 출시하려는 계획을 준수하지 못하여 출시가 한때 지연되었습니다. 따라서 PowerPC 버전은 Windows NT 3.5보다 조금 더 발전하여 다음 버전의 OS의 기반이 되었습니다.

지금까지 Windows NT와 Unix 아키텍처 간의 유사성에 대해 이야기하는 것이 여전히 가능했다면(어떤 면에서는 무한히 멀리 떨어져 있고 다른 면에서는 VMS OS와 매우 유사함) NT 4.0이 출시되면서 그래픽 하위 시스템이 코어로 통합되면서 그러한 추론의 마지막 이유가 사라졌습니다. 이론적으로 그러한 결정은 널리 사용되는 윈도우 환경인 Windows 95를 NT에 통합하려는 슬픈 경험에서 나온 절대적으로 논리적인 결론이었습니다. 아마도 X Window(Unix)의 아키텍처 모델을 복제하려는 아이디어는 정확하게 일어났습니다. NT의 초기 "서버 지향"에 대한 설명입니다. 그러나 그래픽 셸의 실제 "이식"에 문제가 없다면 사용자 모드(예: 일반 응용 프로그램)에서의 성능은 아쉬운 점이 많으며 이는 당연한 일입니다. 추상화된 출력 장치를 지원합니다. 래스터 디스플레이, 프린터 등) Windows 그래픽 하위 시스템은 래스터 디스플레이만 "이해"하는 X Window보다 훨씬 더 복잡하고 따라서 리소스를 더 많이 요구합니다. 따라서 1996년 7월에 출시된 Windows NT 4.0 커널의 일부로 또 다른 모듈이 등장했습니다. 개정판을 SUR(Shell Update Release)이라고 했습니다.

다음 단계는 2000년에 Windows 2000이라는 이름으로 시장에 출시된 Windows NT 5.0이었습니다. "제목"의 변경은 마케팅 담당자의 영향으로 이루어졌으며 전체적으로 올바른 결정으로 판명되었습니다. 이 운영 체제의 위치를 ​​변경합니다. Windows Server 2003의 출시로 알 수 있듯이 작업은 오늘날까지 계속되고 있습니다.

The Battle for Windows Windows Server 설계 및 구현은 회사 서버 OS 부문의 챔피언 중 한 명인 Mark Lucovsky에게 보고됩니다. 그는 7개 실험실에 배정된 5,000명의 개발자로 구성된 군대를 이끌고 있습니다. 또 다른 5천 명의 프로그래머가 파트너 회사의 직장에서 일하고 있으며 매일 Windows Server 2003의 최종 코드 5천만 줄을 작성하고 있습니다.

기능을 확인하고 오류를 식별하기 위해 매일 시스템의 전체 컴파일 및 조립이 수행됩니다. 감지된 오류 목록은 개발팀에 전송됩니다. 수정 사항은 게시판에 보고되어야 하며, 메인 빌드에 포함하기 위해 대기열에 배치됩니다. 시스템을 컴파일하는 서버 팜은 지속적으로 현대화되고 있지만 몇 년 전처럼 완전한 조립에는 컴퓨터 시간이 12시간이 걸렸습니다. 그리고 이것은 거대한 코드 배열을 트리와 같은 계층 구조로 구성된 별도의 독립적인 소스 코드 그룹으로 나누었음에도 불구하고 발생합니다.

개발 과정의 정수는 매일 2~3회(9:30, 14:00, 17:00) 열리는 소위 "전쟁실"에서 한 시간 동안 진행되는 회의입니다. 8시에 작업 그룹의 지역 "전시실"에서 유사한 행사가 시작됩니다. 메인 회의에서는 이전에 발견된 오류에 대한 수정 사항이 논의되고 프로젝트의 전반적인 상태가 결정됩니다. 최근 이곳 사람들은 Windows.NET Server 2003의 이름을 Windows Server 2003으로 바꾸는 중요한 문제를 해결하기 위한 방법을 주로 찾고 있었습니다. 다양한 모듈에 수천 개의 이름이 있으며 이는 시스템 출시 전 마지막 순간입니다. 이는 개발자들에게 심각한 골칫거리를 안겨주었습니다.

회의에서 각 팀은 작업 진행 상황, 발견된 오류를 수정하는 과정, 수정 여부에 따라 발생할 수 있는 결과를 보고해야 합니다. 문제가 해결될 수 없거나 충분히 중요하지 않은 것으로 간주되면 원래 용어에 따라 해당 버그는 최종 릴리스에 "발표"됩니다. 아침 회의에 참석하지 않는 것은 탈영과 같습니다.

빌드는 매일 오후 4시 30분에 시작되며 세 번째 상황실 회의 후 최신 수정 사항이 시스템에 통합될 수 있도록 오후 6시까지 지연될 수 있습니다. 팀은 기존 문제에 대한 해결책 없이는 회의에 참석할 수 없습니다. 아니면 아예 참석하지 않는 것이 좋습니다. 7개의 실험실 각각은 시스템 소스 코드의 전체 사본을 보유하고 있으며 이를 수정하고 컴파일하고 기능을 테스트합니다. 모든 것이 순조롭게 진행되면 새 코드가 다른 그룹에서 만든 코드와 기본 어셈블리로 병합됩니다. 문제는 다른 그룹이 작성한 새로운 코드의 상호 작용일 수 있습니다. 주 조립이 항상 잘 진행되는 것은 아니며 때로는 시스템이 실행 불가능한 것으로 판명되기도 합니다. 이런 경우 범인 모듈이 발견되자마자(보통 새벽 3~4시쯤) 해당 모듈을 작성한 사람들을 급히 직장으로 불러 오류가 수정될 때까지 자리를 뜨지 않는다. 따라서 프로그래머는 하루 24시간, 주 6일(제품 출시일이 다가올수록 6일 도입) 작업할 준비가 되어 있어야 합니다.

테스트의 최종 단계를 구성하는 주요 원칙은 프로젝트 프로세스에서 자체 제품을 사용하는 것입니다. 시스템이 "레벨 1" 안정성에 도달하면 작업 그룹의 기본 OS가 됩니다. OS가 기능할 수 있는 능력을 획득하면 "두 번째 수준"에 도달한 것으로 간주됩니다. 그 후에만 Microsoft 캠퍼스에서 사용할 수 있습니다. 이는 NT의 파일 서버의 경우였으며 처음 사용된 것은 Windows NT 소스 코드를 저장하는 것이었고 Active Directory의 첫 번째 버전과 모든 후속 버전에서도 마찬가지였습니다.

그런 다음 제품은 테스트를 위해 JDP(공동 개발 파트너) 프로그램을 통해 선택된 파트너에게 제출됩니다. 오류가 발견되면 '의지적 결정'이 내려집니다. 이를 시스템에 남겨두고 판매 시작일을 저장하거나 출시일을 연기하고 개선을 시작합니다. 후자의 경우 모든 결과가 취소되고 테스트가 처음부터 시작됩니다.

판매 후 지원을 제공하는 것이 훨씬 더 어렵습니다. 결함, 보안 허점이 확인되거나 제품에 새로운 기능을 추가해야 하는 경우 로컬 패치나 전체 기능을 갖춘 서비스 팩을 만들어야 합니다. 이 패치나 서비스 팩 이전에 다른 코드가 이미 존재했기 때문에 새 코드는 시스템의 다양한 변형에서 테스트되어 패치와 서비스 팩의 가능한 모든 조합을 시도합니다. 또한 전체 기능 검사를 수행하기 위해 회사에서는 현장에서 시스템을 "테스트"할 수 있는 이전 버전의 제품(예: Windows Server 2000)에서 작동하는 별도의 네트워크 조각을 지원합니다.

VMS가 WNT가 된 이유

Cutler 운영 체제 VMS 이름의 각 문자에 대해 증가 연산(1씩 증가)을 수행하면 WNT 또는 Windows NT를 얻게 된다는 농담이 있었습니다. 전문가에 따르면 이것은 절대적인 진실입니다. NT의 주요 설계자가 한때 VMS 개발자였다는 사실에 근거한 편향된 의견이 아니라 객관적인 현실입니다.

실제로 NT는 더 나은 이식성을 달성하기 위해 C 언어로 구현되고 해당 인터페이스 API와 새로운 파일 및 그래픽 하위 시스템으로 보완되는 VMS 어셈블리 코어의 근본적으로 재설계된 아키텍처 아이디어의 구현입니다. 두 시스템의 아키텍처 솔루션의 공통점은 매우 큽니다. 따라서 프로세스, 우선순위(32개 레벨), 우선순위 변경 관리 및 프로세서 시간 분배 제어에 대한 동일한 개념을 갖습니다. 그러나 상당한 유사점에도 불구하고 수석 설계자 Cutler 팀의 이전 경험으로 인해 NT는 원래 멀티 스레드 OS로 만들어졌습니다. 이 "작은" 차이점을 통해 NT가 어느 정도인지 이해할 수 있습니다. "기본" VMS 아키텍처에서 제거되었습니다.

두 운영 체제의 드라이버는 각 계층이 다른 계층과 격리된 스택 모델 내에서 작동하므로 다단계 장치 관리 체계를 구성할 수 있습니다. 시스템에서는 드라이버를 포함하여 사용자 프로세스와 시스템 프로세스를 모두 교체할 수 있습니다. 리소스를 표시하는 방법도 비슷합니다. 두 시스템 모두 리소스를 개체로 처리하고 개체 관리자를 사용하여 관리합니다. 기본 임의 액세스 제어 목록(DACL)과 같은 NT 보안은 VMS 4.0까지 거슬러 올라갑니다.

1993년에 디지털 엔지니어들은 Windows NT의 사양을 검토한 후 Prism 프로젝트의 일부로 만들어진 실험적인 Mica OS와 놀라울 정도로 유사하다는 사실을 발견했습니다. 레드먼드 제품에 왜 그렇게 관심이 집중되나요? 디지털 직원들이 다른 사람의 시스템 내부를 연구하기 시작한 것은 좋은 삶 때문이 아니었다. 1992년에 회사는 장기간의 침체에 빠져 돈이 빠져나가고 새로운 Alpha 프로세서의 판매가 중단되었습니다. 이제 회사의 상사는 구원을 찾기 위해 치열한 경쟁사인 인텔에 도움을 요청했지만 앤드류 그로브(Andrew Grove) 사장은 이를 거부했습니다. 결국 나는 "Gates III"에 고개를 숙이고 나의 주요 운영 체제인 VMS를 손상시키면서 NT를 만들겠다는 약속의 대가로 Alpha에서 Windows NT 포팅을 요청해야 했습니다. 그러나 NT의 예비 버전을 받은 후 Digital 엔지니어들은 이 OS에 일반적인 "5,000달러짜리 Alpha PC"보다 훨씬 더 많은 RAM이 필요하다는 것을 점차 깨달았습니다. NT는 분명히 RISC 스테이션의 대중 시장에 적합하지 않았습니다. (실제로 대부분의 다른 회사와 마찬가지로) 디지털을 위한 Microsoft 플래그에 가입하려는 시도는 시간과 돈 낭비로 판명되었습니다.

WNT와 VMS의 "10가지 차이점 찾기" 게임은 디지털에 상당한 이익을 가져다주었습니다. 당시 Business Week에 발표된 한 버전에 따르면 Digital의 사장은 지적 재산권 침해에 대한 반박할 수 없는 증거를 손에 쥐고 공개적으로 소송을 제기하는 대신 지출을 줄여 더 많은 것을 얻기로 결정했습니다. 그는 설명을 위해 Microsoft에 눈을 돌렸고 그 결과 Digital이 NT의 주요 네트워크 통합업체가 되는 대규모 계약이 체결되었습니다. 또한 같은 해 10월에 Redmond는 Windows NT에서 Alpha와 경쟁하는 두 프로세서인 PowerPC 및 MIPS에 대한 지원을 포기했습니다. 불행하게도 Digital의 경영진에게는 동맹이 곧 무너지고 "Microsoft 용 NT 네트워크 설치 서비스"상태가 Hewlett-Packard로 넘어 갔지만 몇 년 후 회사의 또 다른 무거운 부담 인 VMS OS를 받았습니다.

NT와 VMS가 갈라졌다는 사실에도 불구하고 이들 운영 체제는 일련의 독특한 차용을 계속했습니다. 특히 Windows NT는 1997년에만 클러스터 지원을 받았지만 VMS는 1984년부터 클러스터 지원을 받았으며 Windows의 64비트 버전은 훨씬 나중에 나타났습니다(VMS는 1996년에 더 높은 비트 용량으로 마이그레이션되었습니다). 반면 VMS 7.0은 1995년에 커널 수준 스레딩을 도입했으며 VMS 7.2에는 해당 NT 도구와 유사한 레지스트리와 유사한 데이터베이스와 전역 이벤트 로그가 포함되었습니다. Windows Server 2003이 출시됩니다. 다음에는 어떻게 되는지 살펴보겠습니다.

1988년 말, Microsoft는 David Cutler에게 새로운 소프트웨어 프로젝트, 즉 1990년대를 위한 Microsoft의 새로운 운영 체제를 만드는 임무를 맡겼습니다. 그는 신기술(NT) 시스템을 개발하기 위해 엔지니어 팀을 구성했습니다.

원래 계획은 OS/2 스타일의 사용자 인터페이스와 API(응용 프로그래밍) 인터페이스를 사용하여 NT를 개발하는 것이었지만 OS/2는 잘 팔리지 않았고 Windows 3.0은 시장에서 계속해서 큰 성공을 거두었습니다. 호환되지 않는 두 시스템의 개발 및 지원과 관련된 시장 압력과 과제를 확인한 후 Microsoft는 방향을 바꾸고 엔지니어들을 단일하고 응집력 있는 운영 체제 전략으로 방향을 전환하기로 결정했습니다. 이 전략은 가장 작은 노트북부터 가장 큰 다중 프로세서 워크스테이션까지 다양한 유형의 컴퓨터를 포괄하는 Windows 기반 운영 체제 제품군을 개발하는 것이었습니다. 따라서 차세대 Windows 시스템은 Windows NT라고 불렸습니다.

Windows NT는 Windows 그래픽 사용자 인터페이스(GUI)를 지원하며 새로운 응용 프로그램 개발을 위한 32비트 프로그래밍 인터페이스인 Win32 API를 지원하는 최초의 Windows 기반 Microsoft 운영 체제이기도 합니다. Win32 API는 다중 스레드 프로세스, 동기화, 보안, I/O 및 개체 관리와 같은 고급 운영 체제 기능을 응용 프로그램에 사용할 수 있도록 합니다.

1993년 7월, NT 제품군의 첫 번째 운영 체제인 Windows NT 3.1과 Windows NT Advanced Server 3.1이 등장했습니다.

버전

  • 윈도우 NT 3.1(1993년 7월 27일)
  • 윈도우 NT 3.5(1994년 9월 21일)
  • 윈도우 NT 3.51(1995년 5월 30일)
  • 윈도우 NT 4.0(1996년 8월 24일)
  • 윈도우 2000 (2000년 2월 17일)
  • 윈도우 XP(2001년 10월 25일)
  • Windows XP 64비트 에디션(2003년 3월 28일)
  • 윈도우 서버 2003(2003년 4월 25일)
  • Windows XP 미디어 센터 에디션 2003(2003년 12월 18일)
  • Windows XP 미디어 센터 에디션 2005(2004년 10월 12일)
  • Windows XP Professional x64 에디션(2005년 4월 25일)
  • 레거시 PC를 위한 Windows 기초(2006년 7월 8일)
  • 윈도우 비스타(2006년 11월 30일)
  • Windows 홈 서버(2007년 11월 7일)
  • Windows Server 2008(2008년 2월 27일)

윈도우 NT 구조

구조적으로 Windows NT는 두 부분, 즉 사용자 모드에서 실행되는 운영 체제 부분과 커널 모드에서 실행되는 운영 체제 부분으로 표현될 수 있습니다.

커널 모드에서 실행되는 Windows NT 부분을 실행 부분이라고 합니다. 여기에는 가상 메모리, 개체(리소스), 입력/출력 및 파일 시스템(네트워크 드라이버 포함), 프로세스 통신 및 부분적으로 보안 시스템을 관리하는 여러 구성 요소가 포함됩니다. 이러한 구성 요소는 모듈 간 통신을 사용하여 서로 상호 작용합니다. 각 구성 요소는 신중하게 지정된 내부 절차 집합을 사용하여 다른 구성 요소를 호출합니다.

사용자 모드에서 작동하는 Windows NT의 두 번째 부분은 소위 보호되는 하위 시스템인 서버로 구성됩니다. 하위 시스템은 자동으로 메모리를 공유할 수 없으므로 메시지를 보내 서로 통신합니다. 메시지는 클라이언트와 서버 사이, 그리고 두 서버 사이에서 전송될 수 있습니다. 모든 메시지는 Windows NT 실행을 통해 전달됩니다. Windows NT 커널은 일반 응용 프로그램 프로세스의 스레드와 동일한 방식으로 보호된 하위 시스템의 스레드를 예약합니다.

보호된 하위 시스템에 대한 지원은 실행 부분에서 제공됩니다. 그 구성요소는 다음과 같습니다:

  • 개체 관리자. 시스템 리소스를 나타내는 데 사용되는 추상 데이터 유형인 런타임 개체를 생성, 삭제 및 관리합니다.
  • 보안 모니터. 로컬 컴퓨터에 보호 규칙을 설정합니다. 운영 체제 리소스를 보호하고 실행 가능한 개체를 보호 및 등록합니다.
  • 프로세스 관리자. 프로세스와 스레드를 생성 및 종료, 일시 중지 및 재개하고 이에 대한 정보도 저장합니다.

가상 메모리 관리자.

  • I/O 하위 시스템. 다음 구성 요소가 포함됩니다.
    • 장치 독립적인 I/O 기능을 제공하는 I/O 관리자;
    • 파일 시스템 - 파일 지향 I/O 요청을 수행하고 이를 일반 장치에 대한 호출로 변환하는 NT 드라이버입니다.
    • 네트워크 리디렉터 및 네트워크 서버 - 원격 I/O 요청을 네트워크 시스템에 전송하고 그로부터 요청을 받는 파일 시스템 드라이버입니다.
    • 실행 장치 드라이버 - 장치를 직접 제어하는 ​​하위 수준 드라이버입니다.
    • 디스크 캐싱을 구현하는 캐시 관리자입니다.

실행 부분은 NT 커널이 제공하는 하위 수준 서비스에 의존합니다. 커널 기능은 다음과 같습니다:

  • 프로세스 계획,
  • 인터럽트와 예외 처리,
  • 다중 프로세서 시스템을 위한 프로세서 동기화,
  • 장애 후 시스템 복구.

커널은 특권 모드에서 실행되며 메모리에서 제거되지 않습니다. 커널은 인터럽트를 통해서만 접근할 수 있습니다.

Windows NT 보호 하위 시스템은 사용자 모드에서 실행되며 운영 체제가 부팅될 때 Windows NT에 의해 생성됩니다. 생성 직후 끝없는 실행 주기를 시작하여 애플리케이션 프로세스 및 기타 하위 시스템에서 오는 메시지에 응답합니다. 보호되는 하위 시스템 중에서 환경 하위 시스템이라는 하위 클래스를 구별할 수 있습니다. 환경 하위 시스템은 운영 체제 애플리케이션 인터페이스(API)를 구현합니다. 통합 하위 시스템이라고 하는 다른 유형의 하위 시스템은 운영 체제에 필요한 작업을 수행합니다. 예를 들어, 대부분의 Windows NT 보안 시스템은 통합 하위 시스템으로 구현됩니다. 네트워크 서버도 통합 하위 시스템으로 구현됩니다.

환경의 가장 중요한 하위 시스템은 32비트 Windows API에 대한 애플리케이션 액세스를 제공하는 하위 시스템인 Win32입니다. 또한 이 시스템은 그래픽 인터페이스를 제공하고 사용자 입력/출력을 관리합니다.

보호되는 각 하위 시스템은 사용자 모드에서 작동하며 실행 시스템 서비스를 호출하여 커널 모드에서 권한 있는 작업을 수행합니다. 네트워크 서버는 설계 방식에 따라 사용자 모드 또는 커널 모드에서 실행될 수 있습니다.

하위 시스템은 메시지를 전달하여 서로 통신합니다. 예를 들어, 사용자 애플리케이션이 일부 API 프로시저를 호출하면 이 프로시저를 제공하는 환경 하위 시스템은 메시지를 수신하고 커널에 액세스하거나 다른 하위 시스템에 메시지를 보내 이를 실행합니다. 절차가 완료된 후 환경 하위 시스템은 반환 값이 포함된 메시지를 애플리케이션에 보냅니다. 보호된 하위 시스템의 메시지 전송 및 기타 활동은 사용자에게 표시되지 않습니다.

모든 Windows NT 하위 시스템을 함께 유지하는 주요 도구는 LPC(로컬 프로시저 호출) 메커니즘입니다. LPC는 네트워크의 다른 시스템에 있는 클라이언트와 서버 간의 통신에 사용되는 보다 일반적인 도구인 RPC(원격 프로시저 호출)의 최적화된 버전입니다.

Windows NT 또는 New Technology 운영 체제는 Dave Cutler가 이끄는 개발자 그룹에 의해 만들어졌습니다.

Windows NT는 우선순위 멀티태스킹 기능을 갖춘 32비트 운영 체제입니다. 운영 체제의 기본 구성 요소에는 보안 도구와 개발된 네트워크 서비스가 포함됩니다. Windows NT는 또한 다른 많은 운영 체제, 파일 시스템 및 네트워크와의 호환성을 제공합니다. Windows NT는 복잡한 명령어 집합 컴퓨팅을 사용하는 CISC 프로세서가 장착된 컴퓨터와 축소된 명령어 집합 컴퓨팅을 사용하는 RISC 프로세서가 장착된 컴퓨터에서 모두 작동할 수 있습니다. Windows NT 운영 체제는 다중 프로세서 구성을 갖춘 고성능 시스템도 지원합니다.

Windows NT에 대해 친숙한 유일한 점은 외관입니다. 그래픽 사용자 인터페이스 뒤에는 강력한 새 기능이 있습니다.

Windows 생성 시 설정되는 작업N.T. Windows NT는 기존 제품을 추가로 개발한 것이 아닙니다. 최신 운영 체제에 대한 요구 사항을 고려하여 아키텍처가 새로 만들어졌습니다. 이러한 요구사항을 바탕으로 개발된 시스템의 특징은 다음과 같다.

제공하기 위해 노력하고 있습니다. 호환성새로운 운영 체제인 Windows NT 개발자는 친숙한 Windows 인터페이스를 유지하고 기존 파일 시스템(예: FAT) 및 다양한 응용 프로그램(MS-DOS, OS/2 1.x, Windows 3.x 및 POSIX용으로 작성됨)에 대한 지원을 구현했습니다. . 개발자는 다양한 네트워크 도구를 사용하기 위해 Windows NT 도구에도 포함시켰습니다.

달성 이식성(이식성) 이제 CISC 및 RISC 프로세서 모두에서 실행될 수 있는 시스템입니다. CISC에는 Intel 호환 프로세서 80386 이상이 포함되어 있습니다. RISC는 MIPS R4000, Digital Alpha AXP 및 P54 시리즈 이상의 Pentium 프로세서를 갖춘 시스템으로 대표됩니다.

확장성(확장성)은 Windows NT가 단일 프로세서 컴퓨터 아키텍처에 묶여 있지 않고 대칭형 다중 프로세서 시스템이 제공하는 기능을 최대한 활용할 수 있음을 의미합니다. 현재 Windows NT는 1부터 32까지의 프로세서 수를 갖춘 컴퓨터에서 작동할 수 있습니다. 또한, 사용자가 직면하는 작업이 더욱 복잡해지고 컴퓨터 환경에 대한 요구가 확대되면 Windows NT를 사용하면 보다 강력하고 효율적인 프로세서를 쉽게 추가할 수 있습니다. 생산적인 서버 및 워크스테이션 "기업 네트워크.

서버와 워크스테이션 모두에 단일 개발 환경을 사용하면 추가적인 이점을 얻을 수 있습니다.


Windows NT는 동종 보안 시스템(보안) 미국 정부 사양을 충족하고 B2 보안 표준을 준수합니다. 기업 환경에서는 중요한 애플리케이션이 완전히 격리된 환경으로 제공됩니다.

분산 처리(분산 처리)은 Windows NT에 시스템에 네트워킹 기능이 내장되어 있음을 의미합니다. 또한 Windows NT에서는 다양한 전송 프로토콜을 지원하고 명명된 파이프, RPC(원격 프로시저 호출) 및 Windows 소켓을 포함한 고급 클라이언트-서버 기능을 사용하여 다양한 유형의 호스트 컴퓨터와 통신할 수 있습니다.

신뢰성 및 내결함성(신뢰성 및 견고성)은 응용 프로그램이 서로 손상되거나 운영 체제가 손상되지 않도록 보호하는 아키텍처 기능을 통해 제공됩니다. Windows NT는 복구 가능한 NTFS 파일 시스템을 포함하고 기본 제공 보안 및 고급 메모리 관리 기술을 통해 보호를 제공하는 모든 아키텍처 수준에서 내결함성 구조적 예외 처리를 사용합니다.

가능성 현지화(할당)은 유니코드 표준(국제 표준화 기구인 ISO에서 개발)을 사용하여 달성한 자국어로 세계 여러 국가에서 작업할 수 있는 도구를 제공합니다.

시스템의 모듈식 설계 덕분에 다음이 보장됩니다. 확장성 Windows NT는 운영 체제의 다양한 수준에서 새 모듈을 추가할 수 있는 유연성을 제공합니다.

패키지에는 Internet Information Server 2.0, Index Server, FrontPage, Internet Explorer, DNS(Domain Name System) 서버, 프록시 서버 및 인터넷 리소스 센터, 모든 서비스 팩, Plus! 등 다양한 응용 프로그램이 포함되어 있습니다. 관리 마법사 또는 이미저와 같은 새로운 유틸리티와 작업 관리자와 같은 이전 프로그램의 개선된 버전을 포함한 다양한 추가 유틸리티가 있습니다.

관리 마법사를 사용하면 네트워크를 관리할 때 발생하는 일반적인 작업을 자동화할 수 있으며 Windows NT 진단 및 성능 모니터 프로그램의 업데이트된 버전은 시스템 상태의 작동 모니터링을 제공합니다. 작업 관리자 대화 상자는 프로세서 로드 정도부터 모든 활성 시스템 프로세서 이름까지 많은 유용한 정보를 제공하는 강력한 프로그램으로 변모했습니다.

Windows NT 4.0의 주요 구성 요소 중 하나는 Internet Information Server 2.0입니다. 이는 인터넷 연결과 개인 인트라넷 네트워크 구축을 위한 유연하고 다기능적인 솔루션입니다. 사용자는 TCP/IP 프로토콜 매개변수를 구성하고(DHCP 서비스가 설치된 경우 IP 주소가 자동으로 할당됨) IIS를 실행하고 자신의 웹 페이지를 하나 이상 생성하기만 하면 됩니다. 그러면 TCP/IP 프로토콜과 표준 World-Wide Web 브라우저를 지원하는 소프트웨어가 설치된 네트워크의 모든 사용자가 웹 문서를 사용할 수 있습니다.

원격 액세스 하위 시스템인 RAS(원격 액세스 서비스)가 일부 변경되었습니다. 이제 보안 통신 채널, 새로운 PPTP(지점 간 터널링 프로토콜) 및 여러 모뎀을 사용하여 원격 네트워크와의 통신 채널을 구성하는 기능을 사용할 수 있습니다.

이전 버전의 Windows NT 네트워크 아키텍처 기능(무단 액세스에 대한 다단계 보호 모델, 시스템의 특정 모듈식 설계 등)으로 인해 고속 인터넷 네트워크에서 작업할 때 처리량이 제한되었습니다. 버전 4.0에서는 네트워크 요청 캐싱 알고리즘이 개선되었고, 리소스 공유 하위 시스템의 모듈이 최적화되었으며, 인터럽트 생성 메커니즘이 변경되었습니다. (고속 네트워크로 전환하면서 이 기능은 예기치 않게 문제의 원인이 되었습니다.) 네트워크 운영 체제). Microsoft가 지적하는 두 번째 변화는 그래픽 작업을 수행할 때 OS 성능이 향상된다는 것입니다.

강력한 네트워크 OS와 비숙련 사용자를 위해 설계된 그래픽 인터페이스의 조합은 다소 이례적으로 보입니다. Windows NT 4.0은 널리 사용되는 운영 체제의 또 다른 버전이 아닙니다. 이는 인터넷에서 작동하도록 설계된 차세대 소프트웨어 제품의 기반을 나타냅니다.

Windows NT 아키텍처 모듈.그림에서 볼 수 있듯이 Windows NT는 개별적이고 상호 연결된 상대적으로 간단한 모듈로 구성된 모듈식(모놀리식보다 더 발전된) 운영 체제입니다.

Windows NT의 주요 모듈은 다음과 같습니다(아키텍처의 가장 낮은 수준에서 가장 높은 수준 순서로 나열됨): 하드웨어 추상화 수준 HAL(Hardware Abstraction Layer), 커널(Kernel), 실행 시스템(Executive), 보호된 하위 시스템 (보호된 하위 시스템) 및 환경 하위 시스템 하위 시스템).

하드웨어 인터페이스를 가상화하여 운영 체제의 나머지 부분이 특정 하드웨어 기능으로부터 독립되도록 보장합니다. 이 접근 방식을 사용하면 한 하드웨어 플랫폼에서 다른 하드웨어 플랫폼으로 Windows NT를 쉽게 이식할 수 있습니다.

핵심시스템의 모듈식 구조의 기초이며 가장 기본적인 Windows NT 작업의 실행을 조정합니다. 이 구성 요소는 볼륨 및 운영 효율성 측면에서 특별히 최적화되었습니다. 커널은 스레드 실행 예약, 여러 프로세서의 작업 동기화, 하드웨어 인터럽트 및 예외 처리를 담당합니다.

실행 시스템환경 하위 시스템에 대한 운영 체제의 기본 서비스를 나타내는 일련의 특권 모드 프로그램 구성(커널 모드)을 포함합니다. 실행 시스템은 여러 구성 요소로 구성됩니다.

쌀. 2.32. Windows NT의 모듈형 구조

각각은 특정 시스템 서비스를 지원하도록 설계되었습니다. 따라서 구성 요소 중 하나인 보안 참조 모니터는 보호된 하위 시스템과 함께 작동하고 시스템 보안 모델의 구현을 보장합니다.

환경 하위 시스템다양한 운영 환경(다양한 운영 체제)용으로 설계된 응용 프로그램에 대한 실행 및 지원을 제공하는 보안 사용자 모드 서버입니다. 환경 하위 시스템의 예로는 Win32 및 OS/2 하위 시스템이 있습니다.

하드웨어 추상화 계층(HAL)은 운영 체제의 상위 계층과 하드웨어 차이점을 숨기거나 추상화하기 위해 하드웨어 제조업체가 만든 소프트웨어 계층입니다. 따라서 HAL에서 제공하는 필터 덕분에 운영 체제의 관점에서는 다양한 하드웨어가 유사하게 보입니다. 사용되는 장비에 대한 운영 체제의 특별한 구성이 필요하지 않습니다.

하드웨어 추상화 계층을 생성할 때 작업은 특정 장치의 단일 드라이버가 모든 플랫폼에서 이 장치의 기능을 지원할 수 있도록 하는 절차를 준비하는 것이었습니다. HAL은 단일 프로세서 아키텍처를 갖춘 다양한 하드웨어 플랫폼을 목표로 합니다. 따라서 각 하드웨어 옵션에는 별도의 운영 체제 버전이 필요하지 않습니다.

HAL 루틴은 운영 체제(커널 포함) 기능과 장치 드라이버 모두라고 합니다. 장치 드라이버로 작업할 때 하드웨어 추상화 계층은 다양한 I/O 기술에 대한 지원을 제공합니다(단일 하드웨어 구현에 중점을 두거나 각각의 새로운 하드웨어 플랫폼에 대한 비용이 많이 드는 적응 대신).

또한 하드웨어 추상화 수준을 사용하면 운영 체제의 다른 수준에서 대칭형 다중 프로세서 시스템의 하드웨어 구현 기능을 "숨길" 수 있습니다.

핵심(커널)은 하드웨어 추상화 계층과 긴밀하게 작동합니다. 이 모듈은 주로 프로세서의 작업을 예약하는 것과 관련이 있습니다. 컴퓨터에 여러 프로세서가 포함되어 있는 경우 커널은 최대 시스템 성능을 달성하기 위해 프로세서 작업을 동기화합니다.

커널이 디스패치합니다. 스트림(스레드 - 하위 작업, 분기라고도 하는 제어 스레드)는 계획된 시스템의 주요 개체입니다. 스레드는 프로세스의 컨텍스트에서 정의됩니다. 프로세스에는 주소 공간, 프로세스에 사용 가능한 개체 집합, 프로세스 컨텍스트에서 실행되는 제어 스레드 집합이 포함됩니다. 개체는 운영 체제에서 관리하는 리소스입니다.

커널은 시스템 프로세서의 로드를 최대화하고 우선 순위가 더 높은 스레드의 우선 처리를 보장하는 방식으로 제어 스레드를 디스패치합니다. 총 32개의 우선순위 값이 있으며 실시간과 가변이라는 두 가지 클래스로 그룹화됩니다. 이 접근 방식을 사용하면 운영 체제의 효율성을 극대화할 수 있습니다.

I/O 관리자 및 프로세스 관리자와 같은 실행 시스템 하위 구성 요소는 커널을 사용하여 작업을 동기화합니다. 또한 더 높은 수준의 추상화를 위해 커널과 상호 작용합니다. 커널 객체;이러한 개체 중 일부는 사용자 정의 API(응용 프로그램 인터페이스) 호출 내에서 내보내집니다.

커널은 두 가지 유형의 객체를 관리합니다.

객체 파견(디스패처 객체)는 신호 상태(신호 또는 비신호)를 특징으로 하며 시스템 작업의 디스패치 및 동기화를 제어합니다. 이러한 개체에는 이벤트, 돌연변이, 뮤텍스, 세마포어, 스레드, 타이머가 포함됩니다.

제어 개체(제어 개체)는 커널 제어 작업에 사용되지만 예약이나 동기화에는 영향을 미치지 않습니다.

제어 개체에는 비동기 프로시저 호출, 인터럽트, 전원 알림, 전원 상태, 프로세스, 프로필이 포함됩니다.

실행 시스템(Executive)는 커널 및 하드웨어 추상화 계층 HAL을 포함하며 환경의 모든 하위 시스템에서 사용할 수 있는 공통 시스템 서비스를 제공합니다. 각 서비스 그룹은 실행 시스템의 개별 구성 요소 중 하나에 의해 제어됩니다.

개체 관리자;

가상 메모리 관리자;

프로세스 관리자;

현지 절차 호출 시설;

I/O 관리자;

보안 참조 모니터.

보안 모니터는 로그온 프로세서(로그온) 및 보호된 하위 시스템과 함께 다음을 구현합니다. Windows NT 보안 모델.

실행 시스템의 최상위 수준을 시스템 서비스라고 합니다. 그림에 표시됩니다. 2.33 시스템 서비스는 사용자 모드와 권한 모드 환경 하위 시스템 간의 인터페이스입니다.

캐시 관리자. I/O 아키텍처에는 전체 I/O 시스템에 대해 캐싱을 수행하는 단일 캐시 관리자가 포함되어 있습니다. 캐싱은 효율성을 높이기 위해 파일 시스템에서 사용하는 기술입니다.

그림 2.33. 시스템 인터페이스

디스크에 직접 쓰고 읽는 대신 자주 사용하는 파일은 캐시 메모리에 임시 저장됩니다. 따라서 이러한 파일에 대한 작업은 메모리에서 수행됩니다. 메모리에 있는 데이터를 사용한 작업은 디스크에 있는 데이터를 사용한 작업보다 훨씬 빠릅니다.

캐시 관리자는 Windows NT 가상 메모리 관리자와 통합된 파일 매핑 모델을 사용합니다. 캐시 관리자는 I/O 관리자의 제어 하에 작동하는 모든 파일 시스템 및 네트워크 구성 요소에 대한 캐싱 서비스를 제공합니다. 사용 가능한 RAM의 양에 따라 캐시 관리자는 캐시 크기를 동적으로 늘리거나 줄일 수 있습니다. 프로세스가 이미 캐시에 있던 파일을 열면 캐시 관리자는 단순히 캐시의 데이터를 가상 주소 공간으로 복사합니다.

캐시 관리자는 지연 쓰기(Lazy Write), 지연 커밋(Lazy Commit)과 같은 서비스를 지원하여 파일 시스템의 효율성을 크게 높일 수 있습니다. 느린 쓰기 중에는 더 빠른 액세스를 위해 변경 사항이 파일 구조 캐시에 기록됩니다. 나중에 CPU 부하가 줄어들면 캐시 관리자는 변경 사항을 디스크에 기록합니다. 슬로우 모션 녹화는 슬로우 모션 녹화와 유사합니다. 트랜잭션이 성공했다고 즉시 표시하는 대신 전송된 정보가 캐시된 후 나중에 백그라운드에서 파일 시스템 로그에 기록됩니다.

파일 시스템 드라이버. Windows NT I/O 아키텍처에서 파일 시스템 드라이버는 I/O 관리자에 의해 관리됩니다. Windows NT에서는 기존 FAT 파일 시스템을 포함하여 다양한 파일 시스템을 사용할 수 있습니다. MS-DOS, Windows 3.x 및 OS/2 운영 체제와의 상위 호환성을 보장하기 위해 Windows NT는 FAT 및 HTTPS 파일 시스템을 지원합니다.

또한 Windows NT는 Windows NT용으로 특별히 설계된 새로운 파일 시스템인 NTFS도 지원합니다. NTFS는 파일 시스템 복구 도구, 유니코드 지원, 긴 파일 이름, POSIX 지원을 포함한 다양한 기능을 제공합니다.

Windows NT I/O 아키텍처는 기존 파일 시스템을 지원할 뿐만 아니라 네트워크 편집기와 서버가 파일 시스템 드라이버로 작동하도록 허용합니다. I/O 관리자의 관점에서 볼 때 네트워크의 원격 컴퓨터에 있는 파일로 작업하는 것과 로컬 하드 드라이브에 있는 파일로 작업하는 것에는 차이가 없습니다. 리디렉터와 서버는 다른 드라이버와 마찬가지로 동적으로 로드 및 언로드될 수 있습니다. 한 컴퓨터에 동시에 많은 수의 리디렉터와 서버가 있을 수 있습니다.

네트워크 드라이버. I/O 아키텍처의 구성 요소로 존재하는 다음 유형의 드라이버는 네트워크 드라이버입니다. Windows NT에는 통합 네트워킹 기능과 분산 응용 프로그램 지원이 포함되어 있습니다. 리디렉터와 서버는 파일 시스템 드라이버로 작동하며 NetBIOS 및 Windows 소켓이 있는 공급자 인터페이스 수준 이하에서 실행됩니다.

전송 프로토콜 드라이버는 TD1(전송 드라이버 인터페이스)이라는 계층을 통해 리디렉터 및 서버와 통신합니다. Windows NT에는 다음 차량이 포함됩니다.

  • 전송 제어 프로토콜/인터넷 프로토콜 TCP/IP는 광범위한 기존 네트워크와 함께 작동할 수 있는 기능을 제공합니다.
  • NBF는 NetBEUI(NetBIOS 확장 사용자 인터페이스)의 후속 제품으로 LAN Manager, LAN 서버 및 MS-Net을 기반으로 하는 기존 LAN과의 호환성을 제공합니다.
  • 메인프레임 및 네트워크에 연결된 프린터에 대한 액세스를 위한 인터페이스를 제공하는 데이터 링크 제어(DLC - Data Link Control)
  • NWLink는 No-well NetWare와의 통신을 제공하는 IPX/SPX 구현입니다.

네트워크 아키텍처의 맨 아래에는 네트워크 어댑터 카드 드라이버가 있습니다. Windows NT는 현재 NDIS(네트워크 장치 인터페이스 사양) 버전 3.0을 준수하는 장치 드라이버를 지원합니다. NDIS는 전송 프로토콜과 네트워크 어댑터 간의 데이터 교환을 위한 유연한 환경을 제공합니다. NDIS 3.0을 사용하면 단일 컴퓨터에 여러 네트워크 어댑터 카드를 설치할 수 있습니다. 결과적으로, 각 네트워크 어댑터 카드는 여러 전송 프로토콜을 지원하여 다양한 유형의 네트워크 스테이션에 액세스할 수 있습니다.

Windows NT 보안 모델- 보안 모니터(보안 참조 모니터)와 두 가지 다른 구성 요소인 로그온 프로세서(로그온 프로세스)와 보안 보호 하위 시스템으로 표시됩니다.

Windows NT와 같은 멀티태스킹 운영 체제에서 응용 프로그램은 컴퓨터 메모리, 입/출력 장치, 파일 및 시스템 프로세서를 포함하여 많은 시스템 리소스를 공유합니다. Windows NT에는 응용 프로그램이 적절한 권한 없이 이러한 리소스에 액세스할 수 없도록 보장하는 일련의 보안 구성 요소가 포함되어 있습니다.

보안 모니터는 특정 로컬 보안 하위 시스템의 적절한 액세스 및 제어 정책을 시행하는 일을 담당합니다. 보안 모니터는 개체에 대한 액세스 확인, 사용자 권한 확인, 권한 모드와 사용자 모드 모두에 대한 메시지 생성을 위한 서비스를 제공합니다. 운영 체제의 다른 부분과 마찬가지로 보안 모니터는 권한 모드에서 실행됩니다.

Windows NT 로그온 프로세스에는 사용자를 인증하기 위한 보안 로그인이 필요합니다. 각 사용자는 예산이 있어야 하며 해당 예산에 액세스하려면 비밀번호를 사용해야 합니다.

사용자가 Windows NT에서 컴퓨터 리소스에 액세스하려면 보안 엔진이 사용자 이름과 암호를 인식할 수 있도록 로그온 프로세스를 통해 로그인해야 합니다. 인증이 성공한 후에만 보안 모니터가 액세스 검사를 수행하여 개체에 액세스할 수 있는 사용자의 권한을 결정합니다.

리소스 보안은 보안 모델이 제공하는 기능 중 하나입니다. 작업은 특별한 공유 메커니즘을 사용하지 않는 한 다른 사람의 리소스(예: 메모리)에 액세스할 수 없습니다.

Windows NT는 관리자가 사용자 활동을 기록할 수 있는 컨트롤도 제공합니다.

Windows NT 메모리 관리. Windows NT Workstation 3.51은 기본적으로 워크스테이션용으로 맞춤화된 서버 운영 체제입니다. 이로 인해 속도와 호환성을 고려하는 것보다 응용 프로그램과 데이터의 절대적인 보호가 우선되는 아키텍처가 탄생합니다. Windows NT의 극도의 신뢰성은 시스템 비용이 높기 때문에 적절한 성능을 얻으려면 빠른 CPU와 최소 16MB의 RAM이 필요합니다. Windows NT는 리얼 모드 장치 드라이버와의 호환성을 제거하여 낮은 메모리 보안을 달성합니다. Windows NT는 대부분의 Windows 95 응용 프로그램뿐만 아니라 자체 32비트 NT 응용 프로그램도 실행합니다. Windows 95와 마찬가지로 Windows NT에서는 해당 환경 내에서 16비트 Windows 및 DOS 프로그램을 실행할 수 있습니다.

Windows NT 메모리 할당은 Windows 95 메모리 할당과 다릅니다. 기본 응용 프로그램에는 64KB 제한에서 2GB(처음 64KB는 완전히 액세스할 수 없음)까지 2GB의 특수 주소 공간이 할당됩니다. 응용 프로그램은 클립보드, DDE 및 OLE 메커니즘을 통해 통신할 수 있지만 서로 격리되어 있습니다.

각 2GB 응용 프로그램 블록의 맨 위에는 응용 프로그램이 링 3 시스템 DLL로 간주하는 코드가 있습니다. 이는 실제로 클라이언트 측 DLL이라고 하는 호출 전달 스텁입니다. 대부분의 API 함수가 애플리케이션 프로그램에서 호출되면 클라이언트측 DLL은 LPC(로컬 프로세스 통신) 프로시저를 호출합니다. LPC는 호출 및 관련 매개변수를 실제 시스템 코드가 포함된 완전히 격리된 주소 공간으로 전달합니다. 이 서버 프로세스는 매개변수의 값을 확인하고, 요청된 기능을 실행하고, 그 결과를 다시 응용 프로그램의 주소 공간으로 전달합니다. 서버 프로세스 자체는 애플리케이션 계층 프로세스로 남아 있지만 이를 호출하는 프로그램으로부터 완전히 보호되고 격리됩니다.

2GB와 4GB 표시 사이에는 커널, 스레드 스케줄러 및 가상 메모리 관리자를 포함하여 링 0의 하위 수준 Windows NT 시스템 구성 요소가 있습니다. 이 영역의 시스템 페이지에는 프로세서의 물리적 링 보호 회로에 의해 지정된 감독자 권한이 있습니다. 이로 인해 하위 수준 시스템 코드가 응용 프로그램 수준 프로그램에 보이지 않고 쓸 수 없게 되지만 링 간 전환 중에 성능이 저하됩니다. 16비트 Windows 응용 프로그램의 경우 Windows NT는 WOW(Windows on Windows) 세션을 구현합니다. Windows NT는 16비트 Windows 프로그램을 자체 메모리 공간에서 개별적으로 실행하거나 공유 주소 공간에서 함께 실행하는 기능을 제공합니다. 거의 모든 경우에 16비트 및 32비트 Windows 응용 프로그램은 별도 또는 공유 메모리에서 실행되는지 여부에 관계없이 OLE(필요한 경우 특수 썽크를 통해)를 사용하여 자유롭게 통신할 수 있습니다. 기본 WOW 애플리케이션과 세션은 개별 스레드 제어를 기반으로 하는 선점형 멀티태스킹으로 실행됩니다. 단일 WOW 세션의 여러 16비트 Windows 응용 프로그램은 협력적 멀티태스킹 모델을 사용하여 실행됩니다. Windows NT는 여러 DOS 세션을 멀티태스킹할 수도 있습니다. Windows NT에는 완전한 32비트 아키텍처가 있으므로 GDI 및 USER 리소스에 대한 이론적인 제한이 없습니다.

Windows 2000의 주요 차이점. Windows 2000 또는 W2k는 W2k 프로젝트의 원래 이름인 Windows NT 5.0에 반영된 Windows NT 기술을 기반으로 하는 Microsoft 운영 체제(OS)입니다. Windows 2000은 우선순위 멀티태스킹과 향상된 메모리 관리 기능을 갖춘 완전한 32비트 OS입니다. W2k 프로젝트는 한때 NT의 성공을 보장했던 것과 동일한 원칙을 기반으로 합니다.

W2k 인터페이스 IE 5.0이 설치된 Windows 98의 인터페이스와 유사합니다. 그러나 우리는 여전히 몇 가지 세부 사항을 언급할 것입니다.

가장 먼저 눈에 띄는 것은 색 구성표가 변경되었다는 것입니다. 이제 Linux용 KDE 데스크탑에 사용되는 디자인 중 하나와 유사합니다. 또 다른 눈에 띄는 세부 사항은 마우스 커서 아래의 그림자입니다. 이 그림자는 제어판 -> 마우스 -> 포인터에서 포인터 그림자 활성화를 선택하여 제거/설정할 수 있습니다. 또한, 메뉴가 나타날 때 새로운 효과가 추가되었습니다. 이제 메뉴가 갑자기 나타나게 됩니다. 데스크탑 속성의 효과 탭에서 제어되며 메뉴 및 도구 설명에 전환 효과 사용을 선택합니다.

시작 메뉴에는 Office 2000에서 익숙한 기능이 도입되었습니다. 열면 가장 자주 사용하는 항목만 표시되고 아래쪽 화살표를 누르면 나머지 항목이 열립니다. 작업 표시줄 속성의 일반 탭에서 개인 메뉴 사용을 선택하여 이 효과를 제어할 수 있습니다(마찬가지로 1E5에서는 도구 -> 인터넷 옵션 -> 고급 -> 개인 즐겨찾기 메뉴 활성화에서 이 옵션이 비활성화되어 있습니다). Alt 키를 사용할 때까지 키보드 탐색 표시기 숨기기를 포함하여 데스크탑 속성에는 몇 가지 추가 항목이 있습니다. 선택하면 Windows 프로그램에서 키보드 단축키를 나타내는 문자 아래의 밑줄이 누를 때까지 제거됩니다. .

작업 표시줄 속성의 두 번째 탭인 고급에는 시작 메뉴 설정 창이 있는데, 여기서 시작 메뉴에 포함된 줄을 추가/제거하고 일부 항목을 확장할 수 있습니다. 예를 들어 제어판 확장 확인란을 선택한 다음 시작 메뉴의 제어판 위에 마우스 커서를 올리면 오른쪽에 다른 메뉴가 열리고 여기에 포함된 모든 요소가 포함됩니다. 이 탭의 유용한 기능은 다시 정렬 버튼입니다. 기본적으로 W2k는 최신 설치된 프로그램이 있는 폴더를 시작 메뉴 맨 아래에 배치합니다. 폴더는 파일 링크 아래에 있을 수도 있습니다. 재정렬은 이러한 불의를 제거하고 모든 폴더를 위에서 아래로 알파벳 순서로 정렬합니다. 그러나 시작 메뉴 -> 프로그램을 마우스 오른쪽 버튼으로 클릭하고 이름별 정렬을 선택하면 동일한 효과를 얻을 수 있습니다. 또한 오른쪽 버튼을 사용하면 해당 요소를 원하는 위치로 "끌어서 놓을" 수 있습니다.

이전에 NT 및 W9x로 작업한 사람들이 자주 실패하는 또 다른 차이점은 이상하게도 확인란이 널리 사용된다는 것입니다. 특히 흰색 배경에 정사각형인 확인란이 더욱 그렇습니다. 따라서 무언가를 할 수 없다고 생각되면 모든 창을 다시 살펴보십시오. 아마도 그러한 확인란에주의를 기울이지 않았을 것입니다.

작업 관리자프로세스 관리를 위해 설계된 NT의 가장 강력하고 편리한 도구 중 하나입니다. 그것은 다음 중 하나라고 불립니다. , 또는 작업 표시줄을 마우스 오른쪽 버튼으로 클릭하면 나타나는 메뉴에서 선택할 수 있습니다. 선택하신 후 선택하시면 됩니다 .

작업 관리자는 성능, 프로세스, 응용 프로그램의 세 가지 탭으로 구성됩니다. 성능부터 시작해 보겠습니다. 이 탭에는 프로세서의 로드에 대한 정보가 실시간으로 표시되고, 실제 메모리의 로드가 표시되며, 사용/비어 있는 RAM의 양과 시스템 스왑이 차지하는 양이 표시됩니다. 또한 기타 추가 정보도 제공됩니다. 예를 들어 스레드 및 프로세스 - 현재 시스템에서 실행 중인 스레드 및 프로세스 수, 피크 - 세션 중 최대 스왑 크기, 비페이징 - 커널에 할당된 메모리 양입니다. 이 정보는 작업 속도를 늦추는 "병목 현상"이 시스템의 어떤 요인인지에 대한 질문에 대답하는 데 사용할 수 있습니다(이런 목적으로 성능 모니터를 사용하는 것이 더 좋지만).

두 번째 탭인 프로세스에는 현재 활성 프로세스 목록이 포함되어 있습니다. 각 프로세스에 대해 PID(프로세스 ID), 사용된 RAM 양, 프로세스에서 생성된 스레드 수 등과 같은 몇 가지 추가 정보를 확인할 수 있습니다. 보기 -> 열 선택을 통해 표시된 매개변수를 추가/제거할 수 있습니다. 또한 이러한 프로세스를 사용하여 특정 작업을 수행할 수 있습니다. 이렇게 하려면 마우스 오른쪽 버튼을 클릭하기만 하면 됩니다. 프로세스를 종료할 수 있는 상황에 맞는 메뉴가 나타납니다. 프로세스 종료, 프로세스 자체와 프로세스가 생성한 다른 모든 프로세스를 "종료"할 수 있습니다. 나무. 가장 높은 RealTime부터 가장 낮은 Low까지 프로세스의 우선순위를 설정할 수 있습니다. 컴퓨터에 두 개의 프로세서와 하나의 멀티프로세서 코어가 있는 경우 이 메뉴에 다른 항목인 선호도 설정이 표시되어 프로세스를 다른 프로세서, Cpu 0, Cpu l 등 최대 Sri31로 전송할 수 있습니다.

작업 관리자의 마지막 탭 - 응용 프로그램에서는 실행 중인 응용 프로그램 목록을 보고 해당 응용 프로그램을 종료할 수 있습니다. 작업 관리자를 사용하면 응용 프로그램을 종료할 수 있을 뿐만 아니라 새 응용 프로그램을 시작할 수도 있습니다. 파일 -> 새 작업(실행).

액티브 디렉토리 -이는 사용자 및 네트워크 리소스를 관리하기 위한 새로운 도구입니다. 대규모 W2k 기반 네트워크 관리자의 업무를 보다 쉽게 ​​할 수 있도록 설계되었으며, 전체 네트워크 관리 및 보안 시스템이 이를 중심으로 구축되었습니다. Active Directory를 설치하려면 W2k 서버가 있어야 합니다. W2kPro는 Active Directory 환경에서 실행될 수 있지만 생성할 수는 없습니다. Active Directory는 다음 원칙에 따라 구축되었습니다.

1. 네트워크의 싱글 사인온(SSO). IntelliMirror 기술 덕분에 사무실에 있는 어느 컴퓨터에서나 비밀번호를 입력할 수 있습니다.

그리고 당신 앞에는 데스크탑, 문서 및 설정이 있을 것입니다.

2. 정보 보안. Active Directory에는 사용자 인증 기능이 내장되어 있습니다. 네트워크의 각 개체에 대해 그룹 및 특정 사용자에 따라 중앙에서 액세스 권한을 설정할 수 있습니다. Kerberos 보안을 사용하면 인터넷과 같은 개방형 네트워크에서도 안전하게 통신할 수 있습니다. 이 경우 네트워크를 통해 전송되는 데이터는 암호화되며 비밀번호는 클라이언트 시스템에 전송되거나 저장되지 않습니다. Kerberos 보안 시스템(그리스 신화에 따르면 지옥의 문을 수호한다는 전설적인 머리 셋 달린 개 이름을 따서 명명)은 오랫동안 알려져 왔지만 Microsoft OS에서는 처음으로 사용됩니다. 자세히 설명하지 않고 이 시스템은 다음과 같이 작동합니다.

클라이언트는 필요한 정보에 액세스할 수 있는 권한을 요청하기 위해 인증 서버에 요청을 보냅니다.

서버는 클라이언트의 권리를 확인하고 클라이언트에게 알려진 키를 사용하여 암호화된 필수 정보를 수신할 수 있는 권한을 클라이언트에게 보내는 동시에 임시 암호화 키를 보냅니다. 전송되는 모든 정보는 이 키를 이용해 암호화되며, 키의 수명은 제한되어 있기 때문에 인증서버에서는 수시로 새로운 키를 보내는데(당연히 새 키는 현재 키를 사용해 암호화된다) 본인 외에는 누구도 알 수 없다. 서버와 클라이언트. 암호화 키를 정기적으로 변경하면 공격자가 데이터를 찾는 것이 훨씬 더 어려워집니다.

그러나 우리 모두가 기억하는 것처럼 그리스 신화에서 케르베로스는 강력한 헤라클레스에 저항할 수 없었습니다. 따라서 우리의 경우 모든 장점에도 불구하고 Kerberos 보안 시스템은 모든 유형의 공격을 견딜 수 없습니다. 예를 들어, 응용 프로그램이 Kerberos 프로토콜을 사용하지 못하게 할 수 있는 서비스 거부 공격이라는 잘못된 요청을 응용 프로그램에 퍼붓는 것이 가능합니다.

3. 중앙 집중식 관리. Active Directory를 사용할 때 관리자는 예를 들어 단일 개체에 대한 액세스 권한을 변경하거나 새 네트워크 프린터를 설치해야 하는 경우 더 이상 각 시스템을 수동으로 구성할 필요가 없습니다. 이러한 변경은 전체 네트워크에 대해 즉시 이루어질 수 있습니다.

4 . 유연한 인터페이스. 디렉토리 구조는 빠르고 쉽게 변경됩니다. 예를 들어, 회사의 디렉토리, 별도의 회계, 마케팅 부서, 사무국을 별도의 하위 디렉토리에 만들고 이 모든 것을 트리 구조 형태로 표시할 수 있습니다. 또는 예를 들어 서로 다른 건물이나 지역의 서로 다른 사무실을 나타내는 여러 개의 트리를 만들고 이들 간의 연결 및 액세스 권한을 쉽게 설정할 수 있습니다. 한 번의 마우스 클릭으로 네트워크 프린터를 회계사의 디렉토리에 연결합니다. (이 경우 드라이버는 해당 컴퓨터에 자동으로 설치됩니다.) 또는 모든 권한, 폴더 및 문서와 함께 전체 회계 부서를 한 서버에서 다른 서버로 끌어서 놓습니다.

5. DNS 통합. Active Directory와 DNS의 긴밀한 통합 덕분에 로컬 네트워크는 인터넷과 동일한 리소스 이름을 사용하므로 로컬 네트워크와 광역 네트워크 간의 혼란이 줄어들고 상호 운용성이 향상됩니다.

6. 확장성. 여러 Active Directory 도메인을 하나의 관리로 결합할 수 있습니다.

7. 검색이 쉽습니다. Active Directory 도메인에서는 사용자 또는 컴퓨터 이름, 사용자 이메일 주소 등과 같은 다양한 기준을 기반으로 다양한 개체를 찾을 수 있습니다.

DFS(분산 파일 시스템)- Active Directory 도구 중 하나입니다. 이를 통해 서로 다른 시스템에 있는 여러 파일 시스템을 포함할 수 있는 네트워크 공유를 생성할 수 있습니다. Active Directory 사용자의 경우 이것은 완전히 투명하며 그가 작업하는 파일이 물리적으로 어디에 있고 어떤 컴퓨터에 있는지는 중요하지 않습니다. 그에게는 모든 파일이 한 곳에 있습니다. 또한 DFS 및 Active Directory를 사용하면 이러한 리소스 관리가 단순화됩니다. 중앙 집중식이므로 새 리소스를 간단하고 쉽게 추가하거나 기존 리소스를 삭제하고 DFS에 포함된 파일의 물리적 위치를 변경할 수 있습니다.