<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ko">
	<id>https://doswiki.oscc.kr/index.php?action=history&amp;feed=atom&amp;title=HIMEM.SYS</id>
	<title>HIMEM.SYS - 편집 역사</title>
	<link rel="self" type="application/atom+xml" href="https://doswiki.oscc.kr/index.php?action=history&amp;feed=atom&amp;title=HIMEM.SYS"/>
	<link rel="alternate" type="text/html" href="https://doswiki.oscc.kr/index.php?title=HIMEM.SYS&amp;action=history"/>
	<updated>2026-06-25T13:37:00Z</updated>
	<subtitle>이 문서의 편집 역사</subtitle>
	<generator>MediaWiki 1.42.1</generator>
	<entry>
		<id>https://doswiki.oscc.kr/index.php?title=HIMEM.SYS&amp;diff=105&amp;oldid=prev</id>
		<title>2025년 11월 28일 (금) 12:12에 Pc1412님의 편집</title>
		<link rel="alternate" type="text/html" href="https://doswiki.oscc.kr/index.php?title=HIMEM.SYS&amp;diff=105&amp;oldid=prev"/>
		<updated>2025-11-28T12:12:08Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;https://doswiki.oscc.kr/index.php?title=HIMEM.SYS&amp;amp;diff=105&amp;amp;oldid=68&quot;&gt;차이 보기&lt;/a&gt;</summary>
		<author><name>Pc1412</name></author>
	</entry>
	<entry>
		<id>https://doswiki.oscc.kr/index.php?title=HIMEM.SYS&amp;diff=68&amp;oldid=prev</id>
		<title>Pc1412: 새 문서: = HIMEM.SYS =  &#039;&#039;&#039;HIMEM.SYS&#039;&#039;&#039;는 MS-DOS, PC DOS, Windows 3.x 환경에서 사용되는 공식 XMS(Extended Memory Specification) 메모리 관리자이다. CPU의 A20 라인을 제어하여 HMA(High Memory Area)에 접근할 수 있도록 하며, XMS 규격에 따라 확장 메모리를 할당·관리하는 역할을 담당한다.  HIMEM은 EMM386.EXE와 함께 동작하여 DOS 환경에서 효율적인 메모리 활용을 가능하게 한다. (단, UMB는 HIMEM이 아니라 &#039;&#039;...</title>
		<link rel="alternate" type="text/html" href="https://doswiki.oscc.kr/index.php?title=HIMEM.SYS&amp;diff=68&amp;oldid=prev"/>
		<updated>2025-11-25T08:14:46Z</updated>

		<summary type="html">&lt;p&gt;새 문서: = HIMEM.SYS =  &amp;#039;&amp;#039;&amp;#039;HIMEM.SYS&amp;#039;&amp;#039;&amp;#039;는 MS-DOS, PC DOS, Windows 3.x 환경에서 사용되는 공식 XMS(Extended Memory Specification) 메모리 관리자이다. CPU의 A20 라인을 제어하여 HMA(High Memory Area)에 접근할 수 있도록 하며, XMS 규격에 따라 확장 메모리를 할당·관리하는 역할을 담당한다.  HIMEM은 EMM386.EXE와 함께 동작하여 DOS 환경에서 효율적인 메모리 활용을 가능하게 한다. (단, UMB는 HIMEM이 아니라 &amp;#039;&amp;#039;...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;새 문서&lt;/b&gt;&lt;/p&gt;&lt;div&gt;= HIMEM.SYS =&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;HIMEM.SYS&amp;#039;&amp;#039;&amp;#039;는 MS-DOS, PC DOS, Windows 3.x 환경에서 사용되는 공식 XMS(Extended Memory Specification) 메모리 관리자이다.&lt;br /&gt;
CPU의 A20 라인을 제어하여 HMA(High Memory Area)에 접근할 수 있도록 하며,&lt;br /&gt;
XMS 규격에 따라 확장 메모리를 할당·관리하는 역할을 담당한다.&lt;br /&gt;
&lt;br /&gt;
HIMEM은 EMM386.EXE와 함께 동작하여 DOS 환경에서 효율적인 메모리 활용을 가능하게 한다.&lt;br /&gt;
(단, UMB는 HIMEM이 아니라 &amp;#039;&amp;#039;&amp;#039;EMM386.EXE&amp;#039;&amp;#039;&amp;#039;가 생성한다.)&lt;br /&gt;
&lt;br /&gt;
본 문서는 MS-DOS 6.2 / 6.22 정품 HIMEM.SYS 설명서(cp437)를 기반으로 교정·재작성한 기술 문서이다.&lt;br /&gt;
&lt;br /&gt;
== 개요 ==&lt;br /&gt;
; 종류 : 장치 드라이버&lt;br /&gt;
; 확장자 : .SYS&lt;br /&gt;
; 기능 :&lt;br /&gt;
* XMS(확장 메모리) 관리&lt;br /&gt;
* A20 라인 제어&lt;br /&gt;
* HMA 제공&lt;br /&gt;
* XMS 핸들 관리&lt;br /&gt;
* INT 15h 방식 메모리 호환(구 프로그램용)&lt;br /&gt;
* (참고) UMB는 HIMEM이 아닌 EMM386이 생성함&lt;br /&gt;
&lt;br /&gt;
HIMEM.SYS는 DOS 부팅 시 CONFIG.SYS의 DEVICE 명령으로 로드한다.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
DEVICE=HIMEM.SYS&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 역할 상세 ==&lt;br /&gt;
* A20 라인을 제어하여 CPU가 1MB 이상 메모리를 사용할 수 있게 함  &lt;br /&gt;
* DOS=HIGH 를 통해 DOS 커널을 HMA로 이동 가능  &lt;br /&gt;
* XMS 2.0 규격 기반 (일부 버전은 XMS 3.0 기능 부분 지원)  &lt;br /&gt;
* XMS 블록(EMB) 할당/해제  &lt;br /&gt;
* Windows 3.x 386 Enhanced Mode에서는 직접적인 동작 일부가 무시됨(XMS 관리자 교체)&lt;br /&gt;
&lt;br /&gt;
== 스위치 ==&lt;br /&gt;
다음 스위치는 MS-DOS 6.x 정식 himem.txt 기준이며, 모든 옵션은 선택 사항이다.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
DEVICE=[drive:][path]HIMEM.SYS [/A20CONTROL:ON|OFF]&lt;br /&gt;
                                [/CPUCLOCK:ON|OFF]&lt;br /&gt;
                                [/EISA]&lt;br /&gt;
                                [/HMAMIN=n]&lt;br /&gt;
                                [/INT15=xxxx]&lt;br /&gt;
                                [/NUMHANDLES=n]&lt;br /&gt;
                                [/MACHINE:xxxx]&lt;br /&gt;
                                [/SHADOWRAM:ON|OFF]&lt;br /&gt;
                                [/TESTMEM:ON|OFF]&lt;br /&gt;
                                [/VERBOSE]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== /A20CONTROL:ON|OFF ===&lt;br /&gt;
HIMEM이 A20 라인의 제어권을 강제로 가져올지 지정한다.  &lt;br /&gt;
기본값은 ON.&lt;br /&gt;
&lt;br /&gt;
=== /CPUCLOCK:ON|OFF ===&lt;br /&gt;
일부 구형 시스템에서 HIMEM 로드 시 클럭 속도 변화가 발생할 때 사용.  &lt;br /&gt;
ON으로 설정하면 문제를 고칠 수 있으나 HIMEM 동작이 약간 느려진다.  &lt;br /&gt;
기본값은 OFF.&lt;br /&gt;
&lt;br /&gt;
=== /EISA ===&lt;br /&gt;
EISA 시스템에서 16MB 이상 메모리를 올바르게 인식하기 위해 사용.  &lt;br /&gt;
일반 AT/386/486에서는 자동 처리되므로 필요 없음.&lt;br /&gt;
&lt;br /&gt;
=== /HMAMIN=n ===&lt;br /&gt;
HMA를 요청한 프로그램이 최소 nKB 이상 필요할 때만 HMA를 할당.  &lt;br /&gt;
0~63KB 지정 가능. 기본값은 0.  &lt;br /&gt;
Windows 3.x 386 Enhanced Mode에서는 무시됨.&lt;br /&gt;
&lt;br /&gt;
=== /INT15=xxxx ===&lt;br /&gt;
INT 15h AH=87h 방식으로 확장 메모리를 요청하는 구형 프로그램과의 호환을 위해  &lt;br /&gt;
xxxx KB 만큼 메모리를 예약.  &lt;br /&gt;
값은 64~65535KB 지정 가능. 기본값 0.&lt;br /&gt;
&lt;br /&gt;
=== /NUMHANDLES=n ===&lt;br /&gt;
동시에 유지할 수 있는 XMS 핸들의 최대 개수를 지정.  &lt;br /&gt;
1~128, 기본값 32.  &lt;br /&gt;
각 핸들당 6바이트 오버헤드.  &lt;br /&gt;
Windows 3.x 386 Enhanced Mode에서는 무시됨.&lt;br /&gt;
&lt;br /&gt;
=== /MACHINE:xxxx ===&lt;br /&gt;
특정 BIOS/컴퓨터 타입에서 A20 동작을 강제 지정할 때 사용.  &lt;br /&gt;
HIMEM이 자동 감지를 실패하는 시스템에서 유용.&lt;br /&gt;
&lt;br /&gt;
==== MACHINE 코드 목록 ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! 값 || 기종&lt;br /&gt;
|-&lt;br /&gt;
| 1 || at, IBM AT 호환&lt;br /&gt;
|-&lt;br /&gt;
| 2 || ps2, IBM PS/2&lt;br /&gt;
|-&lt;br /&gt;
| 3 || ptlcascade, Phoenix Cascade BIOS&lt;br /&gt;
|-&lt;br /&gt;
| 4 || hpvectra, HP Vectra (A &amp;amp; A+)&lt;br /&gt;
|-&lt;br /&gt;
| 5 || att6300plus, AT&amp;amp;T 6300 Plus&lt;br /&gt;
|-&lt;br /&gt;
| 6 || acer1100, Acer 1100&lt;br /&gt;
|-&lt;br /&gt;
| 7 || toshiba, Toshiba 1600 &amp;amp; 1200XE&lt;br /&gt;
|-&lt;br /&gt;
| 8 || wyse, Wyse 12.5 MHz 286&lt;br /&gt;
|-&lt;br /&gt;
| 9 || tulip, Tulip SX&lt;br /&gt;
|-&lt;br /&gt;
| 10 || zenith, Zenith ZBIOS&lt;br /&gt;
|-&lt;br /&gt;
| 11 || at1, IBM AT (alternative delay)&lt;br /&gt;
|-&lt;br /&gt;
| 12 || at2, IBM AT (alternative delay)&lt;br /&gt;
|-&lt;br /&gt;
| 12 || css, CSS Labs&lt;br /&gt;
|-&lt;br /&gt;
| 13 || at3, IBM AT (alternative delay)&lt;br /&gt;
|-&lt;br /&gt;
| 13 || philips&lt;br /&gt;
|-&lt;br /&gt;
| 14 || fasthp, HP Vectra&lt;br /&gt;
|-&lt;br /&gt;
| 15 || ibm7552, IBM 7552 Industrial Computer&lt;br /&gt;
|-&lt;br /&gt;
| 16 || bullmicral, Bull Micral 60&lt;br /&gt;
|-&lt;br /&gt;
| 17 || dell, Dell XBIOS&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== /SHADOWRAM:ON|OFF ===&lt;br /&gt;
일부 BIOS는 부팅 시 ROM 코드를 RAM으로 복사(Shadow RAM)하여 속도를 높인다.  &lt;br /&gt;
HIMEM은 특정 시스템(특히 2MB 이하)의 경우 shadow RAM을 disable하여  &lt;br /&gt;
추가 확장 메모리를 확보할 수 있다.&lt;br /&gt;
&lt;br /&gt;
=== /TESTMEM:ON|OFF ===&lt;br /&gt;
부팅 시 HIMEM이 확장 메모리 테스트를 수행할지 지정한다.  &lt;br /&gt;
기본값은 ON. OFF로 설정하면 부팅이 더 빨라진다.&lt;br /&gt;
&lt;br /&gt;
=== /VERBOSE (/V) ===&lt;br /&gt;
HIMEM 로드 시 상태 메시지를 출력한다.  &lt;br /&gt;
ALT 키를 누른 채 부팅해도 동일한 효과.&lt;br /&gt;
&lt;br /&gt;
== HIMEM과 EMM386 관계 ==&lt;br /&gt;
* HIMEM = XMS / A20 / HMA  &lt;br /&gt;
* EMM386 = EMS / UMB / VCPI  &lt;br /&gt;
둘은 함께 사용해야 DOS 메모리 관리가 완성된다.&lt;br /&gt;
&lt;br /&gt;
예시:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
DEVICE=HIMEM.SYS&lt;br /&gt;
DEVICE=EMM386.EXE NOEMS&lt;br /&gt;
DOS=HIGH,UMB&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 버전 역사 요약 ==&lt;br /&gt;
HIMEM.SYS 버전은 XMS 버전과 완전히 일치하지 않으며,  &lt;br /&gt;
운영체제 배포판마다 다르게 포함되었다.&lt;br /&gt;
&lt;br /&gt;
; 주요 버전&lt;br /&gt;
* Windows/286 2.1 → 1.1&lt;br /&gt;
* Windows/386 2.1 → 2.04&lt;br /&gt;
* MS-DOS 5.0 → 2.77&lt;br /&gt;
* Windows 3.1 → 3.07&lt;br /&gt;
* MS-DOS 6.0 → 3.09&lt;br /&gt;
* MS-DOS 6.2/6.22 → 3.10&lt;br /&gt;
* Windows 95/98 → 3.95&lt;br /&gt;
&lt;br /&gt;
== 같이 보기 ==&lt;br /&gt;
* [[EMM386.EXE]]&lt;br /&gt;
* [[CONFIG.SYS]]&lt;br /&gt;
* [[XMS]]&lt;br /&gt;
* [[DOS 메모리 구조]]&lt;br /&gt;
* [[UMB]]&lt;br /&gt;
* [[HMA]]&lt;br /&gt;
* [[HIMEMX.EXE]] (FreeDOS)&lt;/div&gt;</summary>
		<author><name>Pc1412</name></author>
	</entry>
</feed>