Windows 9x의 아키텍처

Architecture of Windows 9x
Windows 95 [clarification needed]아키텍처

Windows 9x 시리즈의 operating system은 Windows 9x의 핵심에 있는 커널을 말합니다.그 아키텍처는 획일적이다.

기본 코드는 MS-DOS와 기능이 비슷하며 16비트/32비트 하이브리드로 동작하려면 MS-DOS 지원이 필요합니다.

중요 파일

Windows 95 는, 다음의 [1]파일 세트를 사용해 기동합니다.

32비트 셸 및 명령줄 인터프리터:

Windows 95 Core:

  • 커널32.DLLKRNL386.EXE – Windows API for Windows 리소스
  • ADVAPI32.커널에 추가되는 DLL 기능.Windows 레지스트리 및 셧다운 및 재시작 기능 포함
  • GDI32.DLL 및 GDI.EXE - 그래픽 디바이스 인터페이스
  • USER32.DLL 및 USER.EXE - GUI 구현
  • 통신DLLCOMCTL32.DLL - 공통 컨트롤(사용자 인터페이스)
  • DDEML.DLL Dynamic Data Exchange Management Library(DDEML)는 응용 프로그램에 DDE 기능을 추가하는 작업을 단순화하는 인터페이스를 제공합니다.
  • MSGSRV32EXE 32비트 메시지서버로서 기능해, Windows 태스크 리스트에 표시되지 않습니다.
  • WIN.COM - 시스템의 GUI 및 Windows 부분을 로드합니다.

레지스트리 및 기타 구성 파일:

가상 시스템 관리자 및 구성 관리자:

  • VMM32.VXD - 가상 머신 매니저 및 기본 드라이버.io.sys에서 커널로 이어받습니다.

설치 가능한 파일 시스템 매니저:

  • IFSHLP.SYS - MS-DOS 메서드를 사용하지 않고 Windows에서 직접 파일 시스템을 호출할 수 있습니다.
  • IFSMGR.VXD - 설치 가능한 파일 시스템용 32비트 드라이버
  • 모든 보호 모드 파일 시스템 및 블록 디바이스 드라이버를 제어 및 관리하는 IOS.VXD I/O 슈퍼바이저
  • MPREXE.EXE MPRSERV.DLLMPR.DLL - 네트워크 인증 및 사용자 프로필에 필요한 여러 공급자 라우터
  • MSPWL32.DLL 암호 목록 관리 라이브러리

디바이스 드라이버:

시스템은 CONFIG를 사용할 수도 있습니다.SYS - 명령어인터프리터를 로드하기 전에 실행한 설정 및 명령어가 포함되어 있습니다).BAT - COMMAND 로드 후 자동으로 실행되는 배치 파일입니다.COM. 단, 이 2개의 파일은 IO로서 부트프로세스에는 중요하지 않습니다.시스템에 없는 경우 SYS에는 둘 다 기본 설정이 포함되어 있습니다.Windows Me 에서는, CONFIG.SYS 및 AUTOEXEC.BAT는 처리되지 않고 로고도 출력됩니다.SYS는 시작 화면으로 사용할 수 있습니다.

부트 시퀀스

Windows 9x 의 기동 프로세스는, 6 개의 국면으로 구성됩니다.이 순서 중 처음 2개는 기존의 BIOS마스터 부트 레코드를 조합하여 OS를 기동할 때 공통입니다.

단계 1 - ROM BIOS 부트스트랩 프로세스

ROM BIOS 는, 물리 메모리 주소 FFFF0h 로 실행을 개시합니다.이 단계에서 BIOS는 먼저 전원 투입자가 테스트를 실행한 후 드라이브 A에 부팅 디스크가 있는지 확인합니다.드라이브 A에 없는 경우는, ROM BIOS 로 HDD 가 확인됩니다.컴퓨터에 플러그 앤 플레이 BIOS가 있는 경우 BIOS는 RAM에서 플러그 앤 플레이 디바이스의 I/O 포트 주소, 인터럽트 회선 및 DMA 채널을 체크하고 발견된 디바이스를 비활성화하며 사용 중이거나 사용되지 않은 리소스 맵을 생성하여 디바이스를 다시 활성화합니다.

단계 2 - 마스터 부트 레코드와 부트 섹터

마스터 부트 레코드는 주소 7C00h에 로드되어 Windows 디스크 파티션의 부트 섹터를 로드합니다.부트 섹터에는 디스크 부트 프로그램과 루트 디렉토리와 IO의 위치를 검색하는 BIOS 파라미터 블록 테이블이 포함되어 있습니다.다음으로 I/O를 로드하는 SYS 파일.SYS 파일을 메모리에 넣습니다.

단계 3 - IOSYS 파일 초기화

IO.SYS는 최소 파일 할당 테이블 드라이버를 초기화하고 MSDOS를 로드합니다.SYS를 메모리에 넣습니다.그런 다음 MSDOS의 Boot-Delay 행에 따라 "Starting Windows"가 표시됩니다.SYS 파일그런 다음 로고를 로드합니다.SYS 파일을 작성하여 화면에 스타트업 이미지를 표시합니다.DRVSPACE의 경우.INI 또는 DBLSPACE.INI 파일이 존재하며 압축 디스크용 드라이버도 로드합니다.그런 다음 레지스트리 파일 SYSTEM을 열려고 합니다.DAT. 실패하면 SYSTEM을 열려고 합니다.DA0. MSDOS로 설정되어 있는 경우.SYS 또는 레지스트리에서는 더블 버퍼링도 유효하게 되어 있습니다.

단계 4 - 설정SYS 및 리얼모드 설정

Windows 95에서 Windows 98로 CONFIG를 분석하게 되었습니다.SYS 및 MS-DOS 리얼 모드 드라이버를 로드합니다.Windows Me 에서는, 이것을 무시합니다.CONFIG의 경우.SYS 파일이 존재하지 않습니다. IO.SYS 파일은 드라이버 IFSHP를 로드합니다.SYS, HIMEMSYSSETVER.EXE. Windows 에서는, Windows 95 operating system의 사용 또는 확장 메모리용으로, 모든 상위 메모리 블록을 예약합니다.Windows 95에서 Windows 98로 명령어를 실행합니다.AUTOEXEC를 처리하는 COM.BAT. 종료된 프로그램을 메모리에 로드합니다.Real Mode DOS 지원이 비활성화되어 로드 중인 TSR에 의해 시스템 안정성이 저하될 수 있으므로 Windows Me는 이 절차를 무시합니다.

단계 5 - 드라이버 초기화

IO.SYS가 WIN을 실행합니다.COM. 윈.COM은 VMM32.VXD 파일을 메모리에 로드하거나 하드 디스크에서 액세스합니다.이 파일에는 가장 중요한 드라이버와 9x 커널이 포함되어 있습니다.리얼 모드 가상 디바이스 드라이버 로더는 Windows\ 에 존재하는 중복된 가상 디바이스 드라이버를 체크합니다.System\Vmm32 폴더와 VMM32.VXD 파일.중복되는 경우 Windows의 드라이버\System\Vmm32 디렉토리가 로드됩니다.Windows 95 ~98은 INT 2Fh를 호출하는 리얼 모드 드라이버를 조회하여 레지스트리 엔트리 HKEY_LOCAL_MACHINE\System\에서 드라이버를 검색합니다.CurrentControlSet\Services\VxD는 외부 파일로 로드되도록 마크되어 있습니다.다음으로 Vmm32는 Windows의 [386 Enh]섹션을 분석합니다.System.ini 파일을 작성하여 여기에 나열된 드라이버를 로드합니다.Windows 레지스트리의 SYSTEM 에 리스트 되어 있지 않아도, 중요한 드라이버가 로드됩니다.INI 또는 Windows\System\Vmm32 디렉토리.

리얼 모드 가상 디바이스 드라이버가 로드되면 Windows 95에서 Windows 98로 드라이버가 초기화됩니다.그런 다음 Vmm32는 CPU를 실제 모드에서 보호 모드로 전환합니다.다음 단계는 보호 모드 드라이버의 초기화입니다.디바이스별로 3단계로 실행됩니다.초기화의 중요한 부분(인터럽트가 무효가 되어 있는 경우), 디바이스의 초기화(파일 I/O가 허가되어 있는 경우), 및 Init Complete 단계입니다.디스플레이 드라이버의 초기화 후에, Windows 는 그래픽 모드로 전환됩니다.

단계 6 - Win32 초기화

모든 드라이버가 로드되면 Kernel32.dll, gdi32.dll, Gdi.exe, user32.dll, User.exe, shell32.dllExplorer.exe 파일이 로드됩니다.기동 프로세스의 다음 단계는 네트워크 환경을 로드하는 것입니다.설정되어 있는 네트워크에의 로그 온이 요구됩니다.사용자가 로그온할 때 사용자의 데스크톱 설정이 레지스트리에서 로드되거나 데스크톱 구성이 기본 데스크톱을 사용합니다.그런 다음 Windows가 시작 폴더 WIN정의된 프로그램을 시작합니다.INI 및 레지스트리 키에 정의된 프로그램HKEY_LOCAL_MACHINE\Software\Microsoft\ 브런치 내에서 RunOnce, RunServicesOnce 및 RunServicesOnceWindows\CurrentVersion 및 HKEY_CURRENT_USER\소프트웨어\Microsoft\Windows\CurrentVersion\RunOnce 레지스트리 키의 각 프로그램이 시작되면 해당 프로그램이 키에서 제거됩니다.

커널

윈도우즈 9x 커널은 가상 메모리가 있는 32비트 커널입니다.드라이버는 에서 제공합니다.VXD 파일 또는 Windows 98 이후 최신 WDM 드라이버를 [2]사용할 수 있습니다.다만, MS-DOS 커널은 메모리에 보존되어 있습니다.Windows Me 를 제외하고, 인스톨 되고 있는 경우는, 낡은 MS-DOS 16 비트 드라이버를 사용합니다.Windows Me 에서는 DOS 는 아직 동작하고 있습니다만, AUTOEXEC 를 해석할 때는 디바이스 드라이버를 로드하는 시도를 무시합니다.BAT 는, 아직 인식되고 있는 환경 변수를 CONFIG 로부터 이동합니다.SYS를 Windows 레지스트리에 넣습니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ "Windows 95 OSR 2". WinWorld. Retrieved 2022-07-31.
  2. ^ Microsoft (2002-04-15). "Windows Driver Model (WDM)". Microsoft. Archived from the original on 2013-01-18. Retrieved 2016-05-27.

추가 정보

외부 링크