OSDev.org

The Place to Start for Operating System Developers
It is currently Mon Jul 24, 2017 6:48 pm

All times are UTC - 6 hours




Post new topic Reply to topic  [ 136 posts ]  Go to page Previous  1 ... 6, 7, 8, 9, 10
Author Message
 Post subject: Re: How to make an operating system to x86 within a month fr
PostPosted: Mon Jul 17, 2017 12:28 pm 
Offline
Member
Member
User avatar

Joined: Tue Mar 06, 2007 11:17 am
Posts: 980
simeonz wrote:
~ wrote:
Hard disks have a register file, a set of contiguous registers.

PCI has registers.

VGA has registers.
I wouldn't make parallels with those, as they are similar only in name.
But they are like the CPU registers. The ATA disks have a sector count like WIDECX, 28 or 48-bit address registers like WIDESI or WIDEDI, they have a device bit for master/slave ATA like a segment register. They have error registers like the exception mechanism of the CPU, but since the hard disk has no access to the stack in RAM, it has to pass the errors via register bits.

So it makes me think that the intention of the CPU registers, or the registers of any other device for that matter, are intended not only so that you set them, but so that external devices can access the CPU registers. Maybe the first PC developers thought that they could have the CPU access the registers of other devices (achieved) and also have other external devices access and even modify the CPU registers (I don't know if they achieved it or if the best we have so far is altering the state by ourselves on IRQs or polling).

It looks like registers make the actual implementation of the CPU or any device's architecture, much more architecture-independent and interoperable.

I think you need to find out what the very first developers of the CPU were thinking when they decided to invent registers and not other structure to hold state.

Then no matter how many registers we have, they wish they are public, but also things like the cache they wish they are private. It could be good to make that configurable.

But in the case of having 1 Megabyte of registers, it would probably be better to sell RAM chips that are as fast as the best caches, or faster, or start selling CPUs with at least 4 Gigabytes of user RAM into them of the quality of cache or general-purpose-register memory. That should compensate the lack of registers and speed. Such CPUs, currently considered custom-made for private customers, probably exist for crucial and special-interest applications, like any scientific application, the most common probably being NASA and robotics, factories, banks...

Maybe the faster the CPU, the better the quality of its internal memory, registers and core, so that's why there must be a consumer speed limit due to those things and price.

As you can see, the more you use than just registers, the more the manufacturers have to open their full architecture informat to the developers in the public, so probably it's also because they don't want to do it at least at this time.

_________________
Image http://www.archefire.org/_PROJECTS_/ (udocproject@yahoo.com)

YouTube Development Videos:
http://www.youtube.com/user/AltComp126/videos

Current IP address for hosts file (all subdomains):
190.150.9.244 archefire.org


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 136 posts ]  Go to page Previous  1 ... 6, 7, 8, 9, 10

All times are UTC - 6 hours


Who is online

Users browsing this forum: No registered users and 4 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group