Re: basic architecture question




On 15 July, 07:48, Tim Roberts <t...@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote:
mamute <mam...@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote:

I am studying assembler with a kind of old book, and the book's based
operating system was DOS and Windows 3.1.

It was describing the intel x86 architecture and it has an exercise
whose you need to dump the memory of video buffer display, at address
b800:0.

When I open a cmd.exe, DOS prompt, and dump the video buffer, it seems
ok. However, if I open a second DOS prompt, and change the screen like
listing the files, and then go to debug and dump the screen again, it
seems that I have another buffer but both with the same memory
location.

It seems that my Windows is emulating this video buffer at b800:0 and
handling internally, but does it?

Absolutely. =A0It's done entirely in software. =A0Now, if you do Alt-Ente=
r to
take your shell full-screen, then you will be talking to the real VGA
hardware, but as long as you're windowed, all of the BIOS calls and
hardware port writes are trapped in software and simulated, and the memor=
y
writes are trapped by the paging system.

Sadly, none of this works any more in Win64. =A0All of the 16-bit stuff i=
s
gone. =A032-bit console apps use the API instead of I/O port calls.

Is there any reason for that behaviour?

Sure -- Microsoft's legendary backward compatibility. =A0The fact that yo=
u
can still run on Vista an MS-DOS program that was compiled more than 25
years ago is an incredible testament to this commitment. =A0Mac users are=
not
so lucky.

Microsoft's? Do you mean Intel's legendary backward compatibility?

Interestingly the AMD-designed x86-64 architecture was the first to
abandon the old VM86 mode.

James
.



Relevant Pages

  • Re: STOP error code (0x000000f4 (0x0000003....) Memory dump & BSOD
    ... downloading symbols package. ... You may get an answer by running the Windows Debugger on the memory dump ...
    (microsoft.public.windowsxp.general)
  • Re: Stop 0x0A
    ... >>has too much memory for a full dump), ... > in Windows 2000 and Windows NT" ... but it mentions that the first parameter should be a memory address. ... but there's not enough detail to know if it's biting me -- I wish Microsoft had included some sample parameters. ...
    (microsoft.public.win2000.general)
  • Re: Pagefile.sys file
    ... I have 768 MB RAM. ... Windows is configured for a Small memory ... dump. ... Are you saying that I should change it to a Complete memory ...
    (microsoft.public.windowsxp.basics)
  • Re: moving your page file
    ... Storing pagefile on a separate controler than where windows is installed is better in perf, ... Overview of memory dump file options for Windows Server 2003, Windows XP, and Windows 2000 ... I guess it first dump the memory to the pagefile and then copy it to the dump folder. ...
    (microsoft.public.windows.server.general)
  • RE: Virtual memory
    ... You can configure virtual memory in windows xp and thereby improve the ... How to set performance options in Windows XP ... if you have background programs such as printing or disk ... It is also known as the paging file. ...
    (microsoft.public.windowsxp.perform_maintain)