I want to know some computer standards.

I want to know some computer standards,such as mainboard standards,bios standards,interrupt standards,and so on.
I can access ftp,so please don't let me download files form ftp site.
thank you.
goodboy_sylAsked:
Who is Participating?
 
jhanceCommented:
I'll concur with the previous comments.  Of the things you've mentioned, none are standardized in the strict sense of the word.  For instance, there are no IEEE, ANSI, EIA, or USDA standards for mainboards, interrupts, BIOS, etc..  Probably the only things in a PC that adhere to a written standard would be the VGA display, the IDE disk controller, the PCI bus, the EIA/RS-232 serial ports, and the CCITT V.xxxx modem.  All the rest are what we call de-facto standards.  The motherboard, for instance, is like it is because that's the way IBM designed the original IBM PC back in about 1980.  The form factor, the power supply connector, the interrupt and DMA structure, the BIOS calls, the ISA bus cards, the boot process are all essentially unchanged since that time.  Is it any wonder that PC configuration is such a mess.  Both Microsoft and Intel have tried to set a new "standard" several times over the past few years without success.  Currently, MS has the proposed PC-99 standard that, among other things, eliminates the ISA bus.  While from an engineering point of view this might be helpful, I as a consumer don't like it.  
0
 
mark2150Commented:
Best "standard" document was old PC Technical Reference manual put out by IBM. It completely defined the PC from the ground up. It included full schematics and BIOS listings as well as character tables, keycodes, I/O registers, everything. It's out of print (only available from IBM anyway) and has been superceeded as the PC's have grown, but it was (and still is) the original authoratative reference to the PC internals - from the people that *created* it.

Actually there are very few "standards" in the design of PC's. They're more "conventions" than "standards". A "standard" implies that some regulatory body (ANSI, IEEE, UL, etc.) is responsible for defining the standard and determining compliance. PC vendors are free to do most any thing they damn well please (and most do!). Compaq, for instance, is notorious for changing things just to be proprietary. For example, some Compaq's use a modified "modesty bracket" (the little metal thingie that covers unused card slot openings on the rear of your computer). Now there is no real reason why they couldn't use the same bracket that everyone else uses, but Compaq, in their infinite wisdom, decided to re-invent the wheel.

There is plenty of reference stuff out there on most anything you can want. If you get a little more specific we can steer you in the right direction.

M

0
 
ronaldvrCommented:
A nice saying in the computerworld is:
"The nice thing about standards is there are so many to choose from"
In other words findinge a more or les complete answer to this question might take a lifetime.
0
On-Demand: Securing Your Wi-Fi for Summer Travel

Traveling this summer?Check out our on-demand webinar to learn about the importance of Wi-Fi security and 3 easy measures you can start taking immediately to protect your private data while using public Wi-Fi. Follow us today to learn more!

 
mark2150Commented:
Computers are 100% compatible - except where they ain't!

M

0
 
OttaCommented:
http://WWW.TomsHardWare.COM has many tutorials.
0
 
goodboy_sylAuthor Commented:
My friends,I tell you my plan.I want to wirite a operation system,it is compatible to DOS files system,but multitasking,and have GUI feature.So I want to know the condition when BIOS have configured the computer before it run DOS,such as the interrupt setting.

0
 
mark2150Commented:
BIOS had just enough brains to fire up all I/O devices and get disk running. As part of the BIOS startup it scans memory looking for ROM's. If it finds them it jumps into the ROM code to allow it to run. This is how I/O cards add features to the BIOS.

The BIOS will get CONFIG.SYS underway for you and you can take over the system by replacing the SHELL=C:\COMMAND.COM statement with a pointer to your code. You have to use a .COM file for your code as loader at this point doesn't have enough brains to cope with an .EXE file. (difference between .COM and .EXE is .COM is effectively a RAM snapshot limited to 64kb {one segment} while .EXE has a relocation header that is used to patch long jump addresses in the file with the segment that the module was loaded in.

This is easy way. More challenging way is to take over at the partition level.

You'll need a copy of Que's "Programmer's Guide to DOS". Has good deep descriptions of all BIOS (INT 10) and DOS (INT 21) calls as well as detailing both the bootup start of the system from /RESET to C:> prompt and the internals of FAT's and such.

Memory segmentation is one of the worst design decisions ever implemented at Intel and i responsible for more problems and limitations than any other single design param. Your module will have to cope with relocation issues. This is primary cause of difficulty in writing a strong OS, the CPU architecture is limiting the robustness of the code. The lack of an "indivisible" test and set instruction in the intel chips made writing solid interrupt driven code rough.

Do you have a firm grasp on just how *large* a task this is? Writing an OS also includes writing all your device drivers - from scratch. This over and above the core OS functions. In order to really make this happen you're project is going to need 100,000 hours or more of coding time. Old estimating techniques are that programmer productivity is around one fully debugged and documented line of code per *hour*.

I'm afraid that your question shows a certain lack of appreciation for the magnitude of this job - starting from scratch and reinventing DOS. Whew!

Ever heard of DrDOS,  ForDos? or Pick? All are "replacements" for DOS with more or less compatibilities.

Are you going to maintain diskette compatibility? If so, then you need to be able to write/read fat12 and fat16 disks.

Are you going to develop all of the applications to run on this "new" OS? If so, now you need to not only bring out the OS but also an editor, compiler, linker, disk utilites, etc., etc., etc., to make this happen. If you're going to allow existing DOS code to run, then what's the point? I mean, if the existing code is to run, then you essentially need to duplicate the internals of DOS in your application - effectively negating any improvements that your OS can offer.

M

0
 
goodboy_sylAuthor Commented:
mark2150
I know what you worry about.I have good solution to that.But I have spend time on collecting material more than on writting code.So I need some one help me to collect material.If youcan give me any material when I need,I can bring out my program in one or two weeks.
Now what I need is how interrupt set when BIOS have configure system and where it need to save data in low RAM memory address.

thank you.
0
 
mark2150Commented:
"one or two weeks"? you've *GOT* to be kidding! Jeeze "Dr. schedule this man for a drug test!"

Thanks for the chuckle. I needed a good laugh today. Tell you what, send me a copy of what you write - I wanna be a beta tester on this!

In the mean time, fire away, what do you need to know about the design of the original PC. I happen to *have* a copy of the IBM PC Technical Reference manual at my fingertips.

("One or two weeks", snort, chortle, choke!)

Have you *ever* written reentrant interrupt driven code? (in assembler)

M

0
 
goodboy_sylAuthor Commented:
mark2150
You have a copy of "the IBM PC Technical Reference manual",that is great.
Please send it to me use the email: "goodboy_syl@hotmail.com"  .
You would be the beta tester.Before next Sunday you can get it.
But,you know,I come from China,my English is poor.
I would try my best to let you know how to write program for my operation system.

Thank you.The Internet is great,let me meet so much friends.
0
 
goodboy_sylAuthor Commented:
mark2150
You have a copy of "the IBM PC Technical Reference manual",that is great.
Please send it to me use the email: "goodboy_syl@hotmail.com"  .
You would be the beta tester.Before next Sunday you can get it.
But,you know,I come from China,my English is poor.
I would try my best to let you know how to write program for my operation system.

Thank you.The Internet is great,let me meet so much friends.
0
 
mark2150Commented:
The IBM pc technical reference manual is an honest to god PAPER BOOK. It's not something I can scan & shove thru the email. It's several *HUNDRED* pages. I will be happy to look up any SPECIFIC question that you might have, but It's not going to pass thru the internet! (Damn, that teleport DLL never did work right!)

M
0
 
jhanceCommented:
I can't remember how many times I've used my copies of both the PC XT Technical Reference and PC AT Technical Reference.  These computer are long ago given up to the junkyard the these great manuals live on.  It's too bad nobody ever had them reprinted.  It's amazing what kind of details used to come with a computer system.  Both include full souce code to the BIOS!!!  Alas, now you don't get anything but "plug the blue cable into the blue socket....".
0
 
goodboy_sylAuthor Commented:
mark2150
jhance
When I have complete my system,I will tell you.
ok.

0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.