himem.sys Vs Protected Mode Question(s)
Results 1 to 3 of 3

Thread: himem.sys Vs Protected Mode Question(s)

  1. #1
    Senior Member
    Join Date
    Jun 2002
    Posts
    148

    himem.sys Vs Protected Mode Question(s)

    Hey, it's me again, I am learning how to make an operating system, on this journey, I decided to learn about protected mode. I was reading that the RAM memory is maped, and when there was only 1M of spase, 640k was given to the operating system and application software, so as not to corupt external memory locations, and this mode of operation was called protected mode because neither the operating system nor the appolication software could address memory locations outside the bounderies. I then read that as RAM got bigger, the need to access more then 640k arived, so they developed dos extenders to alow these oprograms acess to the other memory locations, and himem.sys is suposed to load DOS into the extended memory so as to provide this extension? and it is a memory manager, that controlls memory above 1MB?

    That is what I understood, I found some urls

    http://www.abedi.net/ebook/whatis/protecte.htm
    http://nim.harlingen.tstc.edu/placement/REVIEW/dos.htm
    http://www.frick-cpa.com/dos/DOS_Memory_1.asp#5

    Can someone plese explain, when would I use himem.sys and why?
    In snatches, they learn something of the wisdom
    which is of good, and more of the mere knowledge which is of evil. But must I know what must not come, for I shale become those of knowledgedome. Peace~

  2. #2
    Webius Designerous Indiginous
    Join Date
    Mar 2002
    Location
    South Florida
    Posts
    1,121
    As you said, himem.sys is a driver that allows access to extended memory. Extended memory is all memory above 1024K. Anything above that 1024K is considered extended memory. The need for himem.sys came about when DOS was still in use and programs began to need larger blocks of memory. In the original DOS all applications, including the OS, used only 640K of memory. Obviously this is no longer the case. The first 64 K of extended memory is called High memory and is there because the first processor to use extended memory caused a bug, this 64K of unused memory. With DOS 5 they relised this and began to use this 64K to load parts of the OS.

    As for why you would need it, well thats pretty obvious. Its for any program that needs more than the base 1M to operate. This is pretty much any of today's programs. In the original DOS OS's you had to load this driver in the config.sys file by putting the following line:

    DEVICE=C:\DOS\HIMEM.SYS

    In windows 9x, this is an automated process. The himem.sys is now loaded in the io.sys file that starts the OS.

    If you have any more questions fell free to ask.

    See my tut for more info on this and how the OS starts.

    Its Here at AO.
    cheers
    x

  3. #3
    Senior Member
    Join Date
    Jun 2002
    Posts
    148
    10Q very much, I found your tutorial very xciteing and educational, one of the best I have seen. I bookmarked the tutorial for easy access, That will help me alot in my quest to design an operating system. Yea, i was woundering why i did not see device = himem.sys in my autoexec, its neat that Microsoft decided to automate that process. Thanks so much.

    I just got a Microsoft Internet Keyboard pro, so that should keep me from posting messages on the message boards for a while
    In snatches, they learn something of the wisdom
    which is of good, and more of the mere knowledge which is of evil. But must I know what must not come, for I shale become those of knowledgedome. Peace~

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •