Thread View: comp.dsp
4 messages
4 total messages
Started by Zhang Ya Xin
Wed, 22 Jul 1992 06:46
Adress of memory beyond 1M on PC
Author: Zhang Ya Xin
Date: Wed, 22 Jul 1992 06:46
Date: Wed, 22 Jul 1992 06:46
5 lines
713 bytes
713 bytes
We have a TANG IBM/PC 386 which has 4M of memory. Normally the adress
of memory in the PC consists of a segment plus an offset, say, ****:****.
1M is the limitation. My question is how can I access the memory beyond 1M?
In other words, is there an adress of the memory beyond 1M in the PC?
Many thanks to the help.
Re: Adress of memory beyond 1M on PC
Author: Michael van Elst
Date: Wed, 22 Jul 1992 16:35
Date: Wed, 22 Jul 1992 16:35
43 lines
2524 bytes
2524 bytes
Hello,
first, your news system seems to be misconfigured as it doesn't put a
valid reply address in the header. You may ask your sysadm to fix the
problem.
In <1992Jul22.064616.3401@swanee.ee.uwa.oz.au> zhang@zeus (Zhang Ya Xin) writes:
> We have a TANG IBM/PC 386 which has 4M of memory. Normally the adress
>of memory in the PC consists of a segment plus an offset, say, ****:****.
>1M is the limitation. My question is how can I access the memory beyond 1M?
>In other words, is there an adress of the memory beyond 1M in the PC?
A 80386 processor can work in several modes (assuring backwards compatibility
with older processors). If you use MS-DOS then use the processor in 8086
compatibility or _real_ mode which is indeed limited to 1MB. The higher
modes of the processor (so-called protected modes) can access up to 4GB.
There are several methods to access that memory.
From MS-DOS you can access the memory as 'Expanded memory'. The EMM386
driver supports accessing the memory above 1Meg in 64k chunks. This needs
quite some work and special treatment of that memory in your programs.
You can also access it as 'Extended memory' which means that you temporarily
swithch to protected mode and use protected mode instructions to address
that memory. This can go as far as running your complete application in
protected mode under control of a 'DOS extender' which traps calls to
the operating system and restores real mode for the duration of the
system call.
There are special versions of the common compilers that can generate
protected mode programs.
As far as I know there's better support for protected mode under Windows
or OS/2.
If you choose to run UNIX as an operating system everything will run in
protected mode.
Hope this helps,
--
Michael van Elst
UUCP: universe!local-cluster!milky-way!sol!earth!uunet!unido!mpirbn!p554mve
Internet: p554mve@mpirbn.mpifr-bonn.mpg.de
"A potential Snark may lurk in every tree."
Re: Adress of memory beyond 1M on PC
Author: Jens Rodenberg
Date: Mon, 27 Jul 1992 01:12
Date: Mon, 27 Jul 1992 01:12
26 lines
1960 bytes
1960 bytes
Zhang Ya Xin writes:
> We have a TANG IBM/PC 386 which has 4M of memory. Normally the adress
>of memory in the PC consists of a segment plus an offset, say, ****:****.
>1M is the limitation. My question is how can I access the memory beyond 1M?
>In other words, is there an adress of the memory beyond 1M in the PC?
For my thesis (a prototype for a real-time image processing board), I
needed to access memory above 1M on a 386, for storing images above 1M and
also accessing the board's memory which is at 8M, just above the PC's
memory. An MS-DOS function call (int 15H, AH = 87H) is all that's
needed for the memory transfer, which can transfer a buffer to extended
memory and vice-versa. The source and destination addresses are specified
before the fuction call. More details and example assembly code can be
found in an MS-DOS book, which I don't recall the name of (maybe it's just
"MS-DOS"). A memory transfer of up to 64K can be done, but Turbo C wouldn't
allow me to declare such a large array, so I had to go with 32K.
Jens
P.S. To any potential employers: I would like to get a DSP job, as my thesis
has given me experience with the design, simulation, and construction of
an image processing board. E-mail for more details if you're looking
for a design engineer (BS in Electrical and Computer Engineering, almost
MS in Computer Engineering). Thanks.
Re: Adress of memory beyond 1M on PC
Author: John W. Herman
Date: Mon, 27 Jul 1992 19:56
Date: Mon, 27 Jul 1992 19:56
10 lines
973 bytes
973 bytes
Zhang Ya Xin writes: > We have a TANG IBM/PC 386 which has 4M of memory. Normally the adress >of memory in the PC consists of a segment plus an offset, say, ****:****. >1M is the limitation. My question is how can I access the memory beyond 1M? >In other words, is there an adress of the memory beyond 1M in the PC? There is at least one library available from wsmr-simtel20.army.mil that will interface to Turbo C or Microsoft C for this purpose.
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads