A Windows XP help forum. PCbanter

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

Go Back   Home » PCbanter forum » Microsoft Windows 7 » Windows 7 Forum
Site Map Home Register Authors List Search Today's Posts Mark Forums Read Web Partners

Win 7 thrashes



 
 
Thread Tools Rate Thread Display Modes
  #1  
Old October 27th 17, 09:43 AM posted to alt.windows7.general
Wilber
external usenet poster
 
Posts: 3
Default Win 7 thrashes

Dual boot system

Three partitions: XP, Win 7, Data

XP Pro installed first.

Win 7 Pro installed to allow dual boot.

All that works fine except.

Starting Win 7 takes 15 minutes after the desktop first appears.

Why ?

I hear the disk thrashing about.

Once past all that things seem to work OK.

I did a full defrag.

Things are still loading and starting that I tried to start once I saw
the desktop.

Is there some way to fix this ?
Ads
  #2  
Old October 27th 17, 02:16 PM posted to alt.windows7.general
Paul[_32_]
external usenet poster
 
Posts: 11,873
Default Win 7 thrashes

Wilber wrote:
Dual boot system

Three partitions: XP, Win 7, Data

XP Pro installed first.

Win 7 Pro installed to allow dual boot.

All that works fine except.

Starting Win 7 takes 15 minutes after the desktop first appears.

Why ?

I hear the disk thrashing about.

Once past all that things seem to work OK.

I did a full defrag.

Things are still loading and starting that I tried to start once I saw
the desktop.

Is there some way to fix this ?


So this just started happening, or it's been doing
this since Win7 was installed ?

Do you use a software which does "boot-time defragmentation" ?
Check the logs on the product or the status screen, to see if
it mentions the last time it ran a procedure. I have a product
that does that (but I would *never* schedule an operation like
that, for the reasons you state - takes too long for the
screen to appear).

It could be a CHKDSK, but there would be a screen full
of information if that was happening. A certain kind of
entry in Event Viewer, has the CHKDSK log if one has
run like that.

https://askleo.com/how_do_i_see_the_...ran_on_b oot/

If some surreptitious activity is happening on the
machine, the "BootExecute" registry key can be involved.
Malware wouldn't use this, because such an attack is
well known, and Windows users soon learn that nasty
startup activity can be loaded into that registry key.
Legitimate software will use the key. The key can hold
multiple lines of commands. A legit usage, will leave
the "default" command there, and add its own line(s)
in front.

The reason for using BootExecute, is some sort of rubbish
about C: not being mounted yet. I'm not convinced that's
true. I think the volume doesn't have any locked files
yet, but it might still be mounted when that key is
being read by the OS. In any event, that point in time
when the OS comes up, is considered "a prime time to do
things without OS interference", which is why everybody
and his dog likes to add their command to the key.

This would be the default, just a single string with three words.

HKLM\System\CurrentControlSet\Control\Session Manager
BootExecute RegMultiSZ autocheck autochk *

If some other operation is scheduled, since that's a "multi-string"
registry entry, it can contain a paragraph of stuff. In this
contrived example, two commands (with parameters) are
running before the default autocheck. The autocheck
checks for dirty bits on partitions, which is an
indicator that a CHKDSK is scheduled.

HKLM\System\CurrentControlSet\Control\Session Manager
BootExecute RegMultiSZ My dog has fleas
The quick brown fox had chicken for breakfast
autocheck autochk *

If CHKDSK needs to run, there would be a ten second
timer kind of thing on the screen, indicating a
CHKDSK is about to happen. And offering an
opportunity to abort it.

*******

If you really don't have any hints at all as to
what is happening, then you'd need the Windows Performance
kit with xbootmgr and xperfview. These use etl events. The
operating system can generate log events, from
sun up until sun down. The Sysinternals.com application
Process Monitor, logs those events when it records
what the system and all the applications are doing.
The Microsoft performance tools can store those
events in a file, for both the shutdown sequence
and for the startup sequence. Then, you can
use the graphical viewer xperfview, to see what is
happening.

Well, what's wrong with that ? Complexity. Hardly
anyone is going to get that running, or figure out
how to get the right stuff on the display later.

The only time Microsoft "did it right", was with
the very first version of that software. It was
called BootVis (for WinXP only), and it kept
things relatively simple.

Now, the program I mentioned above, Process Monitor
or "procmon.exe", can also record just the
startup events. The next time you run process monitor,
it knows a log is being collected, and it will
offer to save the log. And then you can analyze
the startup activity. How that works is, Process
Monitor "injects" procmon23.sys into the
system folder, and it records startup activity.

Well, what's wrong with that ? It hardly ever works.
I got it to run a couple times, but I've had
trouble since. If you asked me right now to
run a demo, chances are it would be broken.

While there are tools that can do the
analysis, I would rate them "IT staff" material.
Unless you're very persistent, and know how to run
this stuff, you'll not be getting an answer. And
if you had the skill level to run xbootmgr and
friends, you'd have probably fixed your PC
by now :-)

The end result, is "rock and a hard place".

You can see someone here, debugging their boot.

https://blogs.technet.microsoft.com/...-nla-services/

A test run I did with it a while back. The Win8
version is the last version with xbootmgr and
xperfview.

http://al.howardknight.net/msgid.cgi...nt-email.me%3E

In theory, that's how you could debug it.
In practice, not so much. Somebody at MS forgot
that ordinary users would like to know why their
machine is so slow at startup. And the latest
WPR (Windows Performance Recorder?) is way way
over the top. I would expect even IT professionals
roll their eyes, when they see that one. I found
I couldn't burrow into SVCHOST activity, and
see what service was running amok. And then, that
means it really isn't an analysis tool, if
activities remain obscured by stupid OS designs.

Paul
  #3  
Old October 27th 17, 03:16 PM posted to alt.windows7.general
Paul[_32_]
external usenet poster
 
Posts: 11,873
Default Win 7 thrashes (PS)

Wolf K wrote:
On 2017-10-27 04:43, Wilber wrote:
Dual boot system

Three partitions: XP, Win 7, Data

XP Pro installed first.

Win 7 Pro installed to allow dual boot.

All that works fine except.

Starting Win 7 takes 15 minutes after the desktop first appears.

Why ?

I hear the disk thrashing about.

Once past all that things seem to work OK.

I did a full defrag.

Things are still loading and starting that I tried to start once I saw
the desktop.

Is there some way to fix this ?


Another possibility:

Win7 is updating. If I were you, I'd do an complete Update on Win7. That
will probably require multiple restarts depending on the version of Win7
that you installed. Even the most recent versions aren't fully up to date.

Good luck.


Does wuauserv start running, before the desktop appears ?

If the desktop appears, and then thrashing happens, that
could be Windows Update.

But if the screen is still dark, and the disk is thrashing,
my guess would be it's something else.

Paul
  #4  
Old October 27th 17, 04:09 PM posted to alt.windows7.general
Java Jive
external usenet poster
 
Posts: 391
Default Win 7 thrashes

On Fri, 27 Oct 2017 09:45:49 -0400, Wolf K
wrote:

On 2017-10-27 04:43, Wilber wrote:

Starting Win 7 takes 15 minutes after the desktop first appears.


Long boot times usually imply a slew of services being installed. Many
of these aren't necessary. They can be set to start as needed, or
manually. Or they can be set to not load at boot. That's a complicated
subject. Search on "windows 7 unnecessary services" for starters.


Yes, installing software from the CD supplied with many hardware
devices - netcards, scanners, cameras, printers, etc - can result
in unnecessary services being installed.

Also, software such as Adobe Reader and Java install programs into the
Startup folder which accomplish nothing of any value - they sit
consuming resources all the time the PC is running on the off chance
that, should you happen to run the associated Reader or Java software,
it will load more quickly than it would have done if the Startup
programs had not already consumed resources by pre-loading most of it;
in other words, they slow down the entire OS just to make the
individual software program appear to load and run more quickly when
the user chooses to actually run it.

The disk thrashing usually means too little RAM and/or not enough disk
space for paging. The system can't find enough RAM space for files it
uses intermittently, so it keeps writing from RAM to disk and reading
back again (that's called "paging"). Solution is to increase RAM and
possibly add a disk.


Or housekeep user data to free up disk space. A common failing of a
'default' Windows installation is that the system and user data are on
the same disk or partition (which is really a form of 'virtual' disk),
usually C:, and this means that if user data is allowed to swell to
fill nearly all the available disk space on C:, then, as you say,
there is no room left for the system to perform paging and it grinds
to a near halt. A few months back, I had a PC brought in by a
neighbour in this state, and I cured it by moving all his data onto a
seperate partition. Although I note from the OP that there is already
a seperate data partition, so this might not be expected to be the
issue here, it is still worth checking the size of the individual user
profile folders under C:\Users, because, unless the OP has taken steps
to change all the default document and download save locations, there
still could be downloaded software, videos, music, etc taking up vast
acreages of disk space on the system drive. To check on the disk
space used, rt-click each user's profile directory and choose
Properties, General. Particularly, check each user's Documents,
Downloads, Temp, and browser cache folders, and also check the
C:\Windows\Temp folder.

RAM: On a previous W7 laptop I upped RAM to 2GB, the most it would
accept. Speeded up all operations. However, I'm more comfortable with
4GB RAM minimum.


For W7, agreed.

Disk space: I'd want at least 20GB for XP and 30GB for W7, double that
if you intend to add a lot of software,


.... perhaps for 32-bit, but double the latter for 64-bit because so
much of the embedded software, such as IE and WMP, is duplicated in 32
& 64-bit versions in a 64-bit W7 installation, and also W7
installations include language files for every supported language, not
just the one chosen at installation time - for reference, my W2k
'standard build' is 23Gb, XP 25GB, but my current W7 64-bit 'standard
build' designed to replace the former is not yet complete, there is
still no email and newsgroup software nor Office 2010, but already it
has reached 44GB ...

plus common data space of at
least 500GB. But I generate/store a lot of data, you may not need as
much. But disk space is less of a problem than RAM IMO.


Yes, I too generate quite a lot of data, however I don't need to do
that on every PC. My data partitions range from 44GB upwards, but
most are around 250GB or greater.
--
================================================== ======
Please always reply to ng as the email in this post's
header does not exist. Or use a contact address at:
http://www.macfh.co.uk/JavaJive/JavaJive.html
http://www.macfh.co.uk/Macfarlane/Macfarlane.html
  #5  
Old October 27th 17, 05:22 PM posted to alt.windows7.general
Wilber
external usenet poster
 
Posts: 3
Default Win 7 thrashes

PC
Quad Core
AMD A8-3850 APU 2.89GHz
3G RAM
Radeon HD


=======================
Win XP Pro side after boot.

Memory Information
Physical Total: 3,210,059,776 (3.2G) Bytes
Physical Available: 531,353,600 (531.4M) Bytes 16.6%
Virtual Total: 2,147,352,576 (2.1G) Bytes
Virtual Available: 2,106,531,840 (2.1G) Bytes 98.1%
Page File Total: 5,186,904,064 (5.2G) Bytes
Page File Available: 2,654,633,984 (2.7G) Bytes 51.2%

Drive free
C: 30G Win XP
D: 30G Data
E: 300G Win 7

  #6  
Old October 27th 17, 06:03 PM posted to alt.windows7.general
Wilber
external usenet poster
 
Posts: 3
Default Win 7 thrashes

Win 7 Pro Side
Memory Information
Physical Total: 8,041,967,616 (8.0G) Bytes
Physical Available: 3,600,556,032 (3.6G) Bytes 44.8%
Virtual Total: 2,147,352,576 (2.1G) Bytes
Virtual Available: 2,061,697,024 (2.1G) Bytes 96.0%
Page File Total: 16,082,055,168 (16.1G) Bytes
Page File Available: 11,074,060,288 (11.1G) Bytes 68.9%

  #7  
Old October 27th 17, 06:22 PM posted to alt.windows7.general
Java Jive
external usenet poster
 
Posts: 391
Default Win 7 thrashes

On Fri, 27 Oct 2017 09:22:22 -0700, Wilber wrote:

PC
Quad Core
AMD A8-3850 APU 2.89GHz
3G RAM
Radeon HD

=======================
Win XP Pro side after boot.

Memory Information
Physical Total: 3,210,059,776 (3.2G) Bytes


On Fri, 27 Oct 2017 10:03:11 -0700, Wilber wrote:

Win 7 Pro Side
Memory Information
Physical Total: 8,041,967,616 (8.0G) Bytes


How can there be different amounts of physical memory in the one PC?
--
================================================== ======
Please always reply to ng as the email in this post's
header does not exist. Or use a contact address at:
http://www.macfh.co.uk/JavaJive/JavaJive.html
http://www.macfh.co.uk/Macfarlane/Macfarlane.html
  #8  
Old October 27th 17, 06:31 PM posted to alt.windows7.general
Paul[_32_]
external usenet poster
 
Posts: 11,873
Default Win 7 thrashes

Wilber wrote:
Win 7 Pro Side
Memory Information
Physical Total: 8,041,967,616 (8.0G) Bytes
Physical Available: 3,600,556,032 (3.6G) Bytes 44.8%
Virtual Total: 2,147,352,576 (2.1G) Bytes
Virtual Available: 2,061,697,024 (2.1G) Bytes 96.0%
Page File Total: 16,082,055,168 (16.1G) Bytes
Page File Available: 11,074,060,288 (11.1G) Bytes 68.9%


Is that a 32-bit OS perhaps ?
Being used on a larger system ?

Even though, those numbers don't make sense.
Why is the virtual total only 2GB ?

*******

This is mine. Most of mine is tied up in a RAMDisk.

msinfo32

Installed Physical Memory (RAM) 64.0 GB
Total Physical Memory 63.9 GB
Available Physical Memory 5.94 GB
Total Virtual Memory 64.9 GB
Available Virtual Memory 6.87 GB
Page File Space 1.00 GB
Page File C:\pagefile.sys

I use Win7 SP1 Pro x64, because it has a memory license
large enough to support that much memory. These are
the limits.

https://msdn.microsoft.com/en-us/lib...(v=vs.85).aspx

x32 OS x64 OS
Win7 Ultimate 4 GB 192 GB
Win7 Enterprise 4 GB 192 GB
Win7 Pro 4 GB 192 GB
Win7 Home Premium 4 GB 16 GB
Win7 Home Basic 4 GB 8 GB
Win7 Starter 2 GB

What does yous System control panel say about
your OS version ?

Paul
  #9  
Old October 28th 17, 03:16 PM posted to alt.windows7.general
Java Jive
external usenet poster
 
Posts: 391
Default Win 7 thrashes

On Fri, 27 Oct 2017 18:22:13 +0100, Java Jive
wrote:

Win XP Pro side after boot.

Memory Information
Physical Total: 3,210,059,776 (3.2G) Bytes


On Fri, 27 Oct 2017 10:03:11 -0700, Wilber wrote:

Win 7 Pro Side
Memory Information
Physical Total: 8,041,967,616 (8.0G) Bytes


How can there be different amounts of physical memory in the one PC?


.... and ...

On Fri, 27 Oct 2017 13:31:46 -0400, Paul
wrote:

Wilber wrote:
Win 7 Pro Side
Memory Information
Physical Total: 8,041,967,616 (8.0G) Bytes
Physical Available: 3,600,556,032 (3.6G) Bytes 44.8%
Virtual Total: 2,147,352,576 (2.1G) Bytes
Virtual Available: 2,061,697,024 (2.1G) Bytes 96.0%
Page File Total: 16,082,055,168 (16.1G) Bytes
Page File Available: 11,074,060,288 (11.1G) Bytes 68.9%


Is that a 32-bit OS perhaps ?
Being used on a larger system ?


Yes, it seems that a 32-bit OS can only ever 'see' a maximum of 3.2GB
RAM. Here's the results from my PCs:

Win2K #1 4GB Installed 3,398,896 KB available to OS
Win2K #2 2GB Installed 2,096,624 KB available to OS
WinXP-32 2GB Installed 2,048.00 MB available to OS
Win7-64 #1 4GB Installed 4.00 GB available to OS
Win7-64 #2 8GB Installed 7.88 GB available to OS

Note particularly the first - 4GB installed but 32-bit OS only sees
it as 3.2GB - which is a bit odd ...

2^32 = 4294967296 = 4GB address space available

.... so why can't it see the missing 0.8GB?

Even though, those numbers don't make sense.
Why is the virtual total only 2GB ?

*******

This is mine. Most of mine is tied up in a RAMDisk.

msinfo32

Installed Physical Memory (RAM) 64.0 GB
Total Physical Memory 63.9 GB
Available Physical Memory 5.94 GB
Total Virtual Memory 64.9 GB
Available Virtual Memory 6.87 GB
Page File Space 1.00 GB
Page File C:\pagefile.sys


Exactly, here are some fuller details from my PCs, notice that in
every case except the XP machine, discussed below, Total Virtual =
Total Physical + Page File, so I'd be expecting that also to hold true
for the OP, that is, his Total Virtual Memory should be around 24GB/

So what happened with the XP machine? I'm not sure, but given that
the OP is reporting similarly, I think that perhaps it's a 'feature'
of XP:

Win2k #1:
Total Physical Memory 3,398,896 KB
Available Physical Memory 2,989,808 KB
Total Virtual Memory 9,774,920 KB
Available Virtual Memory 9,116,864 KB
Page File Space 6,376,024 KB

Win2k #2:
Total Physical Memory 2,096,624 KB
Available Physical Memory 1,649,280 KB
Total Virtual Memory 7,178,012 KB
Available Virtual Memory 6,425,416 KB
Page File Space 5,081,388 KB

WinXP 32-Bit:
Total Physical Memory 2,048.00 MB
Available Physical Memory 1.19 GB
Total Virtual Memory 2.00 GB
Available Virtual Memory 1.95 GB
Page File Space 3.85 GB

Win7 64-Bit #1:
Total Physical Memory 4.00 GB
Available Physical Memory 2.95 GB
Total Virtual Memory 7.99 GB
Available Virtual Memory 6.94 GB
Page File Space 4.00 GB

Win7 64-Bit #2:
Total Physical Memory 7.88 GB
Available Physical Memory 6.28 GB
Total Virtual Memory 15.8 GB
Available Virtual Memory 13.8 GB
Page File Space 7.88 GB
--
================================================== ======
Please always reply to ng as the email in this post's
header does not exist. Or use a contact address at:
http://www.macfh.co.uk/JavaJive/JavaJive.html
http://www.macfh.co.uk/Macfarlane/Macfarlane.html
  #10  
Old October 28th 17, 03:58 PM posted to alt.windows7.general
Paul[_32_]
external usenet poster
 
Posts: 11,873
Default Win 7 thrashes

Java Jive wrote:


Yes, it seems that a 32-bit OS can only ever 'see' a maximum of 3.2GB
RAM. Here's the results from my PCs:

Win2K #1 4GB Installed 3,398,896 KB available to OS
Win2K #2 2GB Installed 2,096,624 KB available to OS
WinXP-32 2GB Installed 2,048.00 MB available to OS
Win7-64 #1 4GB Installed 4.00 GB available to OS
Win7-64 #2 8GB Installed 7.88 GB available to OS

Note particularly the first - 4GB installed but 32-bit OS only sees
it as 3.2GB - which is a bit odd ...

2^32 = 4294967296 = 4GB address space available

... so why can't it see the missing 0.8GB?


The memory license for 32-bit systems is actually an "address space license".

A 64-bit OS uses "hoisting" or redirection, to make a bumpy physical
address space map, into a smooth virtual address space map. On 64-bit,
the virtual address space is contiguous, with no bumps caused by
hardware decoding.

In the case of the 32-bit system, hoisting is not supported, because
the address space stops at 4GB. (The hardware still hoists, but
the OS is "blind" to the excess.) If there was some inaccessible memory
below 4GB, it cannot be lifted to the 4GB-5GB area for example.

The system needs bus decodes for hardware. The allocation granularity
is 256MB per bus. Say you have a PCI card with a 1 byte register on it.
The BIOS allocates 256MB. Or, say a different PCI card all by itself,
has 256MB+1byte of registers. Then the BIOS allocated 512MB of address
space. For most people, they waste 256MB per bus type. Older machines
have PCI and AGP. Newer machines have PCI and PCI Express. And the BIOS
logic (when you select PNP OS=No), divvies up addresses in the address
space, as best it can. Some BIOS have small bugs, such as the ones
that double-allocated the video card (creating a cached and uncached
address space segment for video cards, a 1GB video card then
uses 2GB).

So lets draw a picture of a "plenty of RAM" machine and a 32-bit
Microsoft OS with "address space license limit".

Machine Win x32 (4GB A.S. limit)

5.25GB hoisted --- lost

1.0GB PCI Express (for 1GB PCI Express vid) \
0.25GB PCI bus (small cards) \___ 2.75GB available
/ plus can see all
2.75GB low memory / cards on bus

However, there is a small refinement on that.

The "available memory" thing is Ring 3. The Ring 0, where
the kernel and drivers live, they have access to the 5.25GB
and possibly PAE plays a role. WinXP SP3 has PAE enabled,
in order to get a page table format with NX bit support.
Since for security, the OS wants to prevent ordinary data
from being executed, segments can be marked as Not Executable
when the OS maps them. The page table has tiny descriptors,
and the hardware supports a couple of "formats" for descriptors,
as well as having two or three stage lookups for page mappings.

The PAE addressing scheme has some 64-bit structure, with
room for an NX. A side effect of enabling PAE on the
machines, is the OS has access to all the memory. The memory
license keeps applications from using more than 2.75GB in
the example. But a driver can reach up there.

But DataRAM RAMDisk (only the older versions), have a
provision to use the upper memory. And I actually use
that on this machine. Which is WinXP with 8GB of DIMMs installed,
3GB for applications at the bottom, 4GB for the RAMDisk.

The RAMDisk software doesn't get to keep all the memory,
and it isn't a "greedy" driver. It cannot seem to grab
memory from AWE space and PAE space at the same time,
and the user gets to select one or the other. In
modern versions of the RAMDisk, only the AWE (application)
memory space seems to be usable (that means I cannot run
a modern version of their software on this WinXP setup).

The developer either "received instructions" from Microsoft
(lawyers), or there was a technical hitch. I like to think
lawyers played a part, because whoever that developer is,
that person is pretty clever. (If you consider the history
of RAMDisks, there have been *many* pathetic ones - the
DATARAM one is the first one I could actually use for
something. The developer was likely independent of the
company, and this is a contractual arrangement of some sort,
as DATARAM is normally a seller of DIMMs.)

Paul
  #11  
Old October 28th 17, 05:20 PM posted to alt.windows7.general
Java Jive
external usenet poster
 
Posts: 391
Default Win 7 thrashes

On Sat, 28 Oct 2017 10:58:46 -0400, Paul
wrote:

Java Jive wrote:


Yes, it seems that a 32-bit OS can only ever 'see' a maximum of 3.2GB
RAM. Here's the results from my PCs:

Win2K #1 4GB Installed 3,398,896 KB available to OS
Win2K #2 2GB Installed 2,096,624 KB available to OS
WinXP-32 2GB Installed 2,048.00 MB available to OS
Win7-64 #1 4GB Installed 4.00 GB available to OS
Win7-64 #2 8GB Installed 7.88 GB available to OS

Note particularly the first - 4GB installed but 32-bit OS only sees
it as 3.2GB - which is a bit odd ...

2^32 = 4294967296 = 4GB address space available

... so why can't it see the missing 0.8GB?


The memory license for 32-bit systems is actually an "address space license".

A 64-bit OS uses "hoisting" or redirection


Seems an unnecessarily obscure term coming into vogue there, what's
wrong with the term we've all grown up with: 'mapping'?

to make a bumpy physical
address space map, into a smooth virtual address space map. On 64-bit,
the virtual address space is contiguous, with no bumps caused by
hardware decoding.

In the case of the 32-bit system, hoisting is not supported, because
the address space stops at 4GB. (The hardware still hoists, but
the OS is "blind" to the excess.)


Presumably the hardware only 'hoists' if it is capable of it? I
suspect my old Win2k P4s c2003 would not have this capability. However
it's possible the Pentium Mobile in the XP machine (which is this one
I'm using to reply now) has got this feature; as you suggest below,
the System Properties show it as having Physical Address Extension
(PAE).

If there was some inaccessible memory
below 4GB, it cannot be lifted to the 4GB-5GB area for example.

The system needs bus decodes for hardware.


Ah! The hard learnt but long forgotten knowledge from 8-bit micro and
early 16-bit PC days is prodding at my memory here. As I remember it,
for reading and writing to IO, you can either use the CPU's
conventional address space, 'memory-mapped IO' in which to perform IO
you more or less just read and write to and from IO port addresses in
memory in the same way as you would true memory - IIRC the 6502
8-bit CPU did that - or else you have a seperate IO space and the
system will then have some special IO opcodes, and this is called
'port-mapped IO' - IIRC this was how the Z80 8-bit CPU did it.

I also recall some complication with the A10 address bus line in the
early 16-bit DOS PCs being used to switch something or other.

But what you seem to be saying here is that modern PCs use
memory-mapped IO (which surprises me as ISTR that the early 16-bit PCs
used port-mapped IO)? If so, and the System Information program is
only reporting true RAM, that would certainly explain the apparent
'loss' of some address space.

The allocation granularity
is 256MB per bus. Say you have a PCI card with a 1 byte register on it.
The BIOS allocates 256MB. Or, say a different PCI card all by itself,
has 256MB+1byte of registers. Then the BIOS allocated 512MB of address
space. For most people, they waste 256MB per bus type. Older machines
have PCI and AGP. Newer machines have PCI and PCI Express. And the BIOS
logic (when you select PNP OS=No), divvies up addresses in the address
space, as best it can. Some BIOS have small bugs, such as the ones
that double-allocated the video card (creating a cached and uncached
address space segment for video cards, a 1GB video card then
uses 2GB).

So lets draw a picture of a "plenty of RAM" machine and a 32-bit
Microsoft OS with "address space license limit".

Machine Win x32 (4GB A.S. limit)

5.25GB hoisted --- lost

1.0GB PCI Express (for 1GB PCI Express vid) \
0.25GB PCI bus (small cards) \___ 2.75GB available
/ plus can see all
2.75GB low memory / cards on bus

However, there is a small refinement on that.

The "available memory" thing is Ring 3. The Ring 0, where
the kernel and drivers live, they have access to the 5.25GB
and possibly PAE plays a role. WinXP SP3 has PAE enabled,
in order to get a page table format with NX bit support.
Since for security, the OS wants to prevent ordinary data
from being executed, segments can be marked as Not Executable
when the OS maps them. The page table has tiny descriptors,
and the hardware supports a couple of "formats" for descriptors,
as well as having two or three stage lookups for page mappings.

The PAE addressing scheme has some 64-bit structure, with
room for an NX. A side effect of enabling PAE on the
machines, is the OS has access to all the memory. The memory
license keeps applications from using more than 2.75GB in
the example. But a driver can reach up there.

But DataRAM RAMDisk (only the older versions), have a
provision to use the upper memory. And I actually use
that on this machine. Which is WinXP with 8GB of DIMMs installed,
3GB for applications at the bottom, 4GB for the RAMDisk.

The RAMDisk software doesn't get to keep all the memory,
and it isn't a "greedy" driver. It cannot seem to grab
memory from AWE space


AWE?

and PAE space at the same time,
and the user gets to select one or the other. In
modern versions of the RAMDisk, only the AWE (application)
memory space seems to be usable (that means I cannot run
a modern version of their software on this WinXP setup).

The developer either "received instructions" from Microsoft
(lawyers), or there was a technical hitch. I like to think
lawyers played a part, because whoever that developer is,
that person is pretty clever. (If you consider the history
of RAMDisks, there have been *many* pathetic ones - the
DATARAM one is the first one I could actually use for
something. The developer was likely independent of the
company, and this is a contractual arrangement of some sort,
as DATARAM is normally a seller of DIMMs.)


My main use of RAM Disks is for boot floppies to launch a W98 console
environment to run Ghost to back up system partitions, and for that
the one that I use works very well. I load the ram disk from
Config.sys, and then copy COMMAND.COM and unzip all the network driver
files to it, and then launch the network. This gets over the space
limitations of a floppy very well. However, the only PC that still
has to be backed up this way is Win2k #2, because if you boot it from
a USB stick while using a USB keyboard, sooner or later it hangs,
whereas all the others can be backed up booting from a USB stick.
--
================================================== ======
Please always reply to ng as the email in this post's
header does not exist. Or use a contact address at:
http://www.macfh.co.uk/JavaJive/JavaJive.html
http://www.macfh.co.uk/Macfarlane/Macfarlane.html
  #12  
Old October 28th 17, 08:16 PM posted to alt.windows7.general
Paul[_32_]
external usenet poster
 
Posts: 11,873
Default Win 7 thrashes

Java Jive wrote:
On Sat, 28 Oct 2017 10:58:46 -0400, Paul
wrote:

"hoisting"


Seems an unnecessarily obscure term coming into vogue there, what's
wrong with the term we've all grown up with: 'mapping'?


Actually, some motherboard manuals refer to "remapping".

I thought it was Intel that coined the term, but I actually found
my first hit in an AMD document. I didn't make the term up.

http://support.amd.com/TechDocs/41256.pdf

"2.8.8 Memory Hoisting

Memory hoisting is defined as reclaiming (relocating) the
unusable DRAM space that would naturally reside in the MMIO hole
just below the 4G address level. This memory is repositioned
above the 4G level when the registers that control memory hoisting,
[The DRAM Hole Address Register] F1xF0, [The DRAM Controller
Select Low Register] F2x110, [The DRAM Controller Select High Register]
F2x114, are set up properly.
"

It isn't mapping in the virtual to physical sense. It's a
re-positioning of a block of address decodes. Physical addresses
being moved from a lower to a higher place.

Presumably the hardware only 'hoists' if it is capable of it?


Correct. And there have been some egregiously bad implementations
too. One Northbridge was given a 32-bit bus (i.e. not PAE), and
was given four DIMM slots capable of 2GB each, for 8GB. However,
if you install 4x2GB, you could only use 3GB of it (FSB address
bits limitation). And Intel has done similar things in the
past, like making a chipset with a 512MB max total limitation,
and then allowing each slot to support a 512MB DIMM. Which means
you can have one of three slots full, and not be allowed to use
the other two slots. VIA ate Intels lunch at the time, by having
a (cheap) chipset with a 1.5GB limit.

Another Intel chipset had a 36-bit FSB (to pass PAE physical addresses),
and it had a problem with granularity. When Dell used that Northbridge,
a 32 bit OS could only use 2GB or RAM, when 4GB was installed. Even
if you used a video card with a tiny RAM on it, the motherboard
stubbornly stayed at 2GB. If you used a 64-bit OS, all memory
was accessible, and the hoisting in that case seemed to involved
1GB granularity. Yet, for some reason, it could only offer 2GB available,
even when 3GB seemed a more reasonable response from the thing.

Modern chipsets, they finally figured out how to do it without
irritating customers.


AWE?


I don't really know if this is absolutely necessary to make it
work, but somewhere along the way I saw a reference to it.

"Address Windowing Extensions"

https://msdn.microsoft.com/en-us/lib...(v=vs.85).aspx

My main use of RAM Disks is for boot floppies to launch a W98 console
environment to run Ghost to back up system partitions, and for that
the one that I use works very well. I load the ram disk from
Config.sys, and then copy COMMAND.COM and unzip all the network driver
files to it, and then launch the network. This gets over the space
limitations of a floppy very well. However, the only PC that still
has to be backed up this way is Win2k #2, because if you boot it from
a USB stick while using a USB keyboard, sooner or later it hangs,
whereas all the others can be backed up booting from a USB stick.


The original RAMDisk was some Microsoft sample code. The pathetic
RAMDisks, they were derived from that code. But somewhere along
the way, someone started re-writing that code from first
principles, rather than just trying to "glue a wart onto
the sample code". The sample code had never been intended
to support limitless RAM Disks. A lot of OS boot applications
only needed something on the small side, to unpack things perhaps.
There are several decent RAMDisks now, and I think each developer
started from scratch (because the speeds they got while doing
so, differ a bit).

I've not seen any reference to RAMDisks bigger than 64GB, but
they may exist.

Paul
  #13  
Old October 28th 17, 08:28 PM posted to alt.windows7.general
J. P. Gilliver (John)[_4_]
external usenet poster
 
Posts: 2,679
Default Win 7 thrashes

In message , Java Jive
writes:
[]
limitations of a floppy very well. However, the only PC that still
has to be backed up this way is Win2k #2, because if you boot it from
a USB stick while using a USB keyboard, sooner or later it hangs,
whereas all the others can be backed up booting from a USB stick.


So why not use a PS/2 keyboard with it? A machine of Win2k vintage must
surely have a PS/2 keyboard port. (Or possibly even a DIN one!)
--
J. P. Gilliver. UMRA: 1960/1985 MB++G()AL-IS-Ch++(p)Ar@T+H+Sh0!:`)DNAf

Where [other presenters] tackle the world with a box of watercolours, he
takes a spanner. - David Butcher (on Guy Martin), RT 2015/1/31-2/6
  #14  
Old October 29th 17, 03:57 AM posted to alt.windows7.general
Paul[_32_]
external usenet poster
 
Posts: 11,873
Default Win 7 thrashes

J. P. Gilliver (John) wrote:
In message , Java Jive
writes:
[]
limitations of a floppy very well. However, the only PC that still
has to be backed up this way is Win2k #2, because if you boot it from
a USB stick while using a USB keyboard, sooner or later it hangs,
whereas all the others can be backed up booting from a USB stick.


So why not use a PS/2 keyboard with it? A machine of Win2k vintage must
surely have a PS/2 keyboard port. (Or possibly even a DIN one!)


PS/2 for the win.

It never lets me down.

USB always has some little surprise waiting for you.
Some corner condition, like detection not working or
something. Whatever magic smoke is in PS/2, it's
damn good.

Paul
  #15  
Old October 29th 17, 10:50 AM posted to alt.windows7.general
Java Jive
external usenet poster
 
Posts: 391
Default Win 7 thrashes

On Sat, 28 Oct 2017 20:28:31 +0100, "J. P. Gilliver (John)"
wrote:

So why not use a PS/2 keyboard with it? A machine of Win2k vintage must
surely have a PS/2 keyboard port. (Or possibly even a DIN one!)


I use a KVM, or rather two 4-way KVMs chained in series, to work the 5
PCs, and the KVMs only have USB connectors.
--
================================================== ======
Please always reply to ng as the email in this post's
header does not exist. Or use a contact address at:
http://www.macfh.co.uk/JavaJive/JavaJive.html
http://www.macfh.co.uk/Macfarlane/Macfarlane.html
 




Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off






All times are GMT +1. The time now is 10:30 PM.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 PCbanter.
The comments are property of their posters.