Pretty good points, I will take them into consideration.
Posted on 2005-12-02 18:45:21 by SpooK
Definitely a gr8 guide, Can't wait to see more...  :D
Posted on 2005-12-03 13:12:32 by lone_samurai5

My 5 cents about the tut so far: sometimes it's a bit 'long'. You see - starting OS developers are not ASM beginners (at least they're supposed not to be :mrgreen: ) so you don't have to explain things like what is the real-mode segment:offset thing. You can assume that the reader HAS programmed in 16-bit DOS at least a bit (and since he or she is oing to develop an OS it's ought to be true).


Yeah, that seemed a little funny for me too, especially since there are so good links on the NET that explain it (like AoA, and most assembly language guides).

But anyway, the A20 line explanation is clean (I prefer to use the term awesome, but I know it's not appropiate :mrgreen:).


BTW - Does anybody know where I can download TASM? I simply can't find it...  I'd like to try all those assemblers mentioned in the guide before I make my decision. Too bad MASM has such a license  :sad:
Posted on 2005-12-03 15:35:05 by The Grey Beast
Sorry about the over-explanation, I was thinking in terms of people new to OS Development. Assembly language programmers these days don't necessarily need to be proficient in segment:offset nor hexadecimal (i.e. HLA/MASM32). I am working on including pictures that give a visual of things I am discussing (association is one of the greatest learning methods).


BTW - Does anybody know where I can download TASM? I simply can't find it...  I'd like to try all those assemblers mentioned in the guide before I make my decision. Too bad MASM has such a license  :sad:


PM/Email Bogdan about TASM, his OS (SolOS) is based on it, he will probably have some great tips as well.
Posted on 2005-12-04 00:02:49 by SpooK
hi Grey Beast,
u can find tasm 5 here http://www.woodmann.com/crackz/Tools.htm
Posted on 2005-12-04 02:19:41 by lone_samurai5
Thanks :D  (there are a lot of other good tools too)


Sorry about the over-explanation, I was thinking in terms of people new to OS Development. Assembly language programmers these days don't necessarily need to be proficient in segment:offset nor hexadecimal (i.e. HLA/MASM32). I am working on including pictures that give a visual of things I am discussing (association is one of the greatest learning methods).


You were just trying to help out those guys who don't know segmentation (and segmentation is and will be important, if not for asm, maybe for some clever inspiration for other things ;))...  some links to other asm tutorials&sources might be better?
Posted on 2005-12-04 07:06:31 by The Grey Beast
I modified that paragraph to tell those who already know about segment:offset/hexidecimal to ignore that paragraph.

I also modified the page so it has "Updated Last" at the beginning of the page (under the guide title and author name). That way people know when something has actually been updated instead of reading through the same stuff. I am also considering starting a seperate "log" page stating which parts have been added/modified/updated/deleted, and why, in order to add another level of searching ease :)
Posted on 2005-12-04 20:09:55 by SpooK
Now everyone gets warned before reading the 16-bit addressing stuff :P and I vote "yes" for the log ;)

Keep up the good work :)

----------------------------------------------------------------------

Maybe these images will help you in your guide (or anyone planning to write an OS).

Figure_02_05 control registers
Figure_03_08 segment descriptor
Figure_03_09 segment descriptor 2
Figure_03_12 Linear Address Translation (4KB Pages)
Figure_03_13 Linear Address Translation (4MB Pages)
Figure_03_14 Format of Page Directory and Page Table Entries for 4KB Pages and 32bit Physical Addresses
Figure_03_15 Format of Page-Directory Entries for 4MB Pages and 32bit Addresses
Figure_03_18 Linear Address Translation With PAE Enabled (4KB Pages)
Figure_03_19 Linear Address Translation With PAE Enabled (2MB Pages)
Figure_03_20 Format of Page-Directory-Pointer-Table, Page-Directory, and Page-Table
Figure_03_22 Linear Address Translation (4MB Pages)
Figure_03_23 Format of Page-Directory Entries for 4MB Pages and 36bit Physical Addresses
Figure_04_04 Examples of Accessing Data Segments From Various Privilege Levels
Figure_04_06 Examples of Accessing Conforming and Nonconforming Code Segments From Various Privilege Levels
Figure_04_08 Call-Gate Mechanism
Figure_04_10 Example of Accessing Call Gates At Various Privilege Levels
Figure_04_11 Stack Switching During an Interprivilege-Level Call
Figure_05_01 Relationship of the IDTR and IDT
Figure_05_02 IDT Gate Descriptors
Figure_05_03 Interrupt Procedure Call
Figure_05_04 Stack Usage on Transfers to Interrupt and Exception-Handling Routines
Figure_05_05 Interrupt Task Switch
Figure_05_06 Exception Error Code
Figure_05_07 Page-Fault Error Code

Table_02_01 NM exception
Table_03_01 code and data segment types
Table_03_02 System Segment and Gate Descriptor Types
Table_03_03 Page Sizes and Physical Address Sizes
Table_05_01 Protected-Mode Exceptions and Interrupts
Table_05_02 Priority Among Simultaneous Exceptions and Interrupts
Table_05_04 Interrupt and Exception Classes
Table_05_05 Conditions for Generating a Double Fault
Table_05_06 Invalid TSS Conditions
Posted on 2005-12-07 11:26:59 by ti_mo_n
I implemented the log and switched everything over to a Table of Contents/Chapter type system (will be better in the future when images are present with the text).

I also added bullets before each chapter to indicate what difficulty/level the read is. (White = Informative, Green = Beginner, Yellow = Intermediate, Red = Advanced). This should help with later additions of more advanced techniques.
Posted on 2005-12-09 20:38:48 by SpooK
Updated the website layout, the guides can be found under the "Documentation" section of the website.
Posted on 2006-01-16 01:29:25 by SpooK
I'm not able to view the guide, there seems to be some kind of error..
Posted on 2006-01-16 02:37:41 by lone_samurai5

I'm not able to view the guide, there seems to be some kind of error..


I've been tinkering with the internals of the display scripts, everything should be functional again. I just have to implement the color-coded tabs again.
Posted on 2006-01-16 02:50:31 by SpooK
There will be some more delay on the OS Dev Guide due to the recent attacks on the server. I am hoping to have a basic guide done by the end of March, middle of April at the latest. Sorry for the delay.
Posted on 2006-02-07 16:05:27 by SpooK
Got the guides back up and working (again). I will have to push my ETA for the OS Dev Guide to sometime in May 2006. Sorry for the delay. -SpooK
Posted on 2006-03-02 23:11:21 by SpooK
Due to the recent nature and direction of the osdev.org wiki, I have decided to restart my OS Development guide.

For more information, please visit this thread.
Posted on 2007-01-24 16:23:19 by SpooK