Tech Off Thread

14 posts

Forum Read Only

This forum has been made read only by the site admins. No new threads or comments can be added.

Kernel Programming

Back to Forum: Tech Off
  • User profile image
    darthsabbath

    Hi, all!  To put it simply, one day I want to work on OS design, be it as a hobby on Linux or BSD or professionally with Microsoft or Apple.  I understand it's a long, hard road, but I love getting down and dirty with C and assembly, and just want to learn as much about computer architecture and OS design as possible.

    I will be attending University next year, but in the meantime I'd like to get a head start.  I've been working through Tanenbaum's book, but would like some other resources to suppliment my learning in the meantime, either in web or dead tree form. 

    I've done a bit of searching, but the info I've found seems to be sparse, but that may be because I don't know exactly what I'm searching for.  Any pointers to solid information would be greatly appreciated!

  • User profile image
    Shiv

    just found an article/blog of a guy i know. here is his comparison of windows NT and Windows CE kernel , both of whose source can be obtained thorugh appropriate means which is also mentioned in the blog .

  • User profile image
    darthsabbath

    Awesome, this is just the kind of stuff I'm looking for. Smiley Most of the info I've found online leans heavily to the UNIX side of things (not that this is a bad thing... fell in love with *nix from day one).  One day soon I hope to pickup "Windows Internals" by Mark Russanovich (sp?). 


  • User profile image
    ilya

    Shiv wrote:
    just found an article/blog of a guy i know. here is his comparison of windows NT and Windows CE kernel , both of whose source can be obtained thorugh appropriate means which is also mentioned in the blog .


    Is there a way to get access to the Windows Research Kernel without having to be affiliated with an accademic institution?

    I would be definatly interested in looking at some of that stuff, but I am not taking courses in this field.

    Thanks,

    Ilya

  • User profile image
    AndyC

    ilya wrote:
    
    Is there a way to get access to the Windows Research Kernel without having to be affiliated with an accademic institution?
     


    I don't think so, but I can have a look in the documentation to see if it mentions anything if you like.

  • User profile image
    darthsabbath

    I'd definitely be interested in the Research Program as well... although the university I'll be attending is a part of Microsoft's Academic program, so they may have the source for their OS courses.

  • User profile image
    AndyC

    AndyC wrote:
    

    I don't think so, but I can have a look in the documentation to see if it mentions anything if you like.


    Nope, judging by the included documentation it appears to be available only to MSDN AA members or members of Faculty Connection (whatever that may be)

  • User profile image
    figuerres

    darthsabbath wrote:
    

    Hi, all!  To put it simply, one day I want to work on OS design, be it as a hobby on Linux or BSD or professionally with Microsoft or Apple.  I understand it's a long, hard road, but I love getting down and dirty with C and assembly, and just want to learn as much about computer architecture and OS design as possible.

    I will be attending University next year, but in the meantime I'd like to get a head start.  I've been working through Tanenbaum's book, but would like some other resources to suppliment my learning in the meantime, either in web or dead tree form. 

    I've done a bit of searching, but the info I've found seems to be sparse, but that may be because I don't know exactly what I'm searching for.  Any pointers to solid information would be greatly appreciated!



    http://msdn.microsoft.com/embedded/getstart/evaluate/default.aspx

    I think Platform Builder has the source code in it.

    you use that to make a new embeded OS for a custom device.

    you need a spare old pc to mess with and the eval is limkited to 120 days but....

    also you can get full kits from sveral hardware companies if you can spend some cash to buy a bare system.
    some cost a lot others are not so bad....

  • User profile image
    AndyC

    figuerres wrote:
    

    http://msdn.microsoft.com/embedded/getstart/evaluate/default.aspx

    I think Platform Builder has the source code in it.


    From what I recall, Platform Builder just comes with a bunch of precompiled modules, it doesn't give you access to the Windows source itself.

    If you really want to play with Kernel code and don't have access via MSDNAA, it's probably a lot easier to tinker with the Linux kernel instead. You'll learn just as much that way as you will using NT.

  • User profile image
    blackstar

    If you want to play with a kernel you may try some ancient version of Unix. Also check out John Lions' "Commentary on the Sixth Edition Unix Operating System".

    I managed to port Unix V7 to a custom 68000 system (currently only emulated on a PC). It's able to run Bourne shell, nroff, Portable C compiler (ported by some folks at MIT long time ago; port available at Unix Archives) and even the original vi!

    Some day I'm planning yo run it on a real hardware. Just have to finish designing the MMU..

    I know the stuff I'm talking about is pretty outdated, but it has the advantage that you can get an in depth understanding of the whole hardware and software which is not possible with todays systems.

    Anyways it's great fun to work on such a project Smiley

  • User profile image
    darthsabbath

    I think the Lyons book will most likely be my next purchase, or one of the O'Reilly Linux kernel books.  Definitately want to brush up on my C first though. Smiley

  • User profile image
    n4cer

    AndyC wrote:
    
    figuerres wrote: 

    http://msdn.microsoft.com/embedded/getstart/evaluate/default.aspx

    I think Platform Builder has the source code in it.


    From what I recall, Platform Builder just comes with a bunch of precompiled modules, it doesn't give you access to the Windows source itself.

    If you really want to play with Kernel code and don't have access via MSDNAA, it's probably a lot easier to tinker with the Linux kernel instead. You'll learn just as much that way as you will using NT.


    figuerres is right about the Platform Builder including the source code. Here's some more links and info:

    CE Eval Edition (choose to install shared source and accept licence during setup)
    http://www.microsoft.com/downloads/details.aspx?FamilyID=486e8250-d311-4f67-9fb3-23e8b8944f3e&DisplayLang=en

    CE Shared Source Info
    http://msdn.microsoft.com/embedded/usewinemb/ce/sharedsrccode/cesslp/default.aspx

    Details on source code location (%WINCEROOT% is drive:\WINCE500)
    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wcepbguide5/html/wce50conSharedSourceCodeDirectories.asp

  • User profile image
    ben2004uk

    darthsabbath wrote:
    I think the Lyons book will most likely be my next purchase, or one of the O'Reilly Linux kernel books.  Definitately want to brush up on my C first though. Smiley



    What book you reading at the moment?

    is it
    Operating Systems Design and Implementation by Albert S. Woodhull and Andrew S. Tanenbaum (Hardcover - 4 Jan 2006)
    Looks to be a hardcore book, good read?? Could be a nice one to add to the list...

  • User profile image
    darthsabbath

    ben2004uk wrote:
    
    What book you reading at the moment?

    is it
    Operating Systems Design and Implementation by Albert S. Woodhull and Andrew S. Tanenbaum (Hardcover - 4 Jan 2006)
    Looks to be a hardcore book, good read?? Could be a nice one to add to the list...


    That's the one... it's pretty interesting. I've only got the 2nd edition (picked it up for around $10 compared to the pricy 3rd edition).  It's actually not as tough as I thought it would be... reading through the book, you start to realize that a kernel is just another program.  Yes, it's only the most important program in a computer, and requires painstakingly precise design, but there's no "magic" involved. 

    That's not to say I'm going to be banging out my own anytime soon. Smiley

Conversation locked

This conversation has been locked by the site admins. No new comments can be made.