“The Windows Research Kernel (WRK) packages core Windows XP x64 and Windows Server 2003 SP1 kernel source code with an environment for building and testing experimental versions of the Windows kernel for use in teaching and research.”
The WRK includes the source for:
- Processes
- Threads
- LPC
- Virtual memory
- Scheduler
- Object manager
- I/O manager
- Synchronization
- Worker threads
- Kernel heap manager
- Other core Windows (NTOS) kernel functionality
The WRK is useful in design projects that allow your students to explore operating system (OS) principles using the Windows kernel sources. It facilitates the building of experiments and projects based on modifying the Windows kernel, enabling advanced teaching and research that promote better understanding of the Windows architecture and implementation.
this is cool. how the heck have i never heard of this before? is this something that is totaly new? becuse this is right up my alley and i am shocked ot jsut be learning about it now…
when they did this to WinCE I was always hoping it would happen to there NT line.
When I took the OS class, we wrote a nix-like kernel called Yalnix for our project on a simulated hardware. I could see some school adopting this kernel for their teaching purposes which I believe will be more modern than what Yalnix had to offer.
Most are now adopting the Linux kernel for such teaching.
One more crippling bombshell hit the already beleaguered Minix community when IDC confirmed that Minix classroom share has dropped yet again, now down to less than a fraction of 1 percent of…
Glad to know I was in that 1%. My professor @ Cal Poly San Luis Obispo used Tanenbaum’s book and minix in 2005. There was something very instructional about having the source code of the kernel in your textbook and for everything to be built to be instructive (rather than the linux kernel where sometimes performance gets the best of readability).
Eligibility Requirements
Use of the Windows Research Kernel requires academic affiliation with an accredited institution of higher education and direct involvement in teaching and/or research, such as:
Academic faculty or staff members
System or lab administrators or instructors
Students enrolled in relevant undergraduate or graduate programs
Academic researchers working on faculty-sponsored projects …….
But any hobyiest, or any commercial intrest is shut out.
YAY microsoft! I know we wouldn’t want any pesky kids in the kitchen, now would we?
if you want it I guess you have to jump through a few hoops. heres my sugestion.
1. go to yahoo/google and search “Community college ______” (________ = where your zip code goes)
2. aply, but do not pay, for the class
3. you are now enrolled, proceed to MS’s site guilt free and get your copy.
For those who has no problem violating this (seemingly unneccesary) restriction.
1. most people have friends, by some connection most friends know someone in college. ask them to forward you the confirmation email MS will send you. (this is after you fillout the stuff and log in with your Live/hotmail/technot/connect/etc ID and fill out a bunch of stuff).
2. wait for said college student to do as they are told.
Edited 2008-11-18 20:30 UTC
3. Go to any linux or BSD distro and get the sources, they have all their source code free/libre. You can learn the same things there and if you are still interested, maybe you can learn and start to code and help…
Or if you prefer to try non-*nix, there’s AROS and Haiku.
Yeah, Haiku!
Btw, it’s what MINIX is too (at least v2), an academic demostration OS.
actualy in my college classes we used the NewOS kernel, which i believe was teh basis for the OpenBeOS kernel.
I dropped out of ComSci before we got to studying/designing OSes, so I don’t know what they would’ve used as examples.
you do understand that windows and linux/bsd are different?
if you think about implementation or high level features [external behavior and so on], yes, I UNDERSTAND THAT THEY ARE SOOOOOOOOOOO DIFFERENT….
But, if I want to learn about Operating Systems, though the implementation is quite different, the things to make the whole stuff work are quite similar [and they were the same several decades ago]:
Both implement:
* Scheduler
* Thread handling
* Memory management
* Virtual memory
* Hardware abstraction layers
* Userland support
* Process isolation
* Binary files loaders
* Disk management
* Interprocess communication
* Network stack
and such stuff…
do you think that if I have the Windows implementation, I will find things that will make me say “HHMMMMM” that I will not find in, let’s say… NetBSD? I do not think so.
If you really want to find a different implementation of an Operating System, I would suggest you read something about microkernels [Minix, Mach and L4 are microkernels with several different approaches], new “managed OSes” (like JNode or Microsoft Singularity) that build process isolation through software (on top of virtual machines) or modern approaches to OSes, like the DragonFlyBSD kernel. And, though they all implement the same concepts I exposed above, their approaches deserve to be learned….
Edited 2008-11-20 22:40 UTC
I found a similar academic offering from Microsoft called Project OZ. http://www.microsoft.com/resources/sharedsource/windowsacademic/pro…
The Overview on their website reads:
An alternative to Unix-based simulators for exploring operating system (OS) principles, ProjectOZ provides an OS project environment that uses the native kernel interfaces of the Windows OS.
Edited 2008-11-18 21:57 UTC
Nice to see this from MS. At this point they probably see there is nothing to hide in their kernel, nothing that major competitors already don’t have (either implemented or in progress). Released information might help projects like ReactOS, too.
Although MS must be on the lookout for good kernel experts coming out of academic institutions, positive is that Microsoft isn’t trying to push license terms that would prevent students from later working on another kernel.
Initial reaction:
[tinfoil hat]
Microsoft is doing this to expose as many up and coming students as possible to their kernel source so they can’t work on ReactOS.
[/tinfoil hat]
But then there’s this from the license:
You may use any information in intangible form that you remember after accessing the software. However, this right does not grant you a license to any of Microsoft’s copyrights or patents for anything you might create using such information.
That’s a pretty cool move, if I am reading that correctly.
What academic environment could possibly want to pick their way through that legalese?
Use any information in intangible form that you remember?
Does not grant you a license to any of Microsoft’s copyrights or patents for anything you might create using such information? So Microsoft are trying to mire academic institutions down in acquiring some form of license for Microsoft’s ideas for anything their students might create in the future that looks vaguely similar? That’s the only way I can read that.
One could be interested in learning things from MS code AND/OR bsd/linux code. One could be open minded, and any insight of how the most used piece of software in the world works is an asset. Reading and learning from Microsoft code doesn’t make you less prone to read and learn from BSD code, now does it?
I for one find it very promising that Microsoft goes down that road, and having access to the MSDNAA I’m surely gonna look into this.
Btw Windows sources have been available to select partners for quite a while, just nowhere near this king of “openness” afaik.
*idly grumbles about having left school*
Also… interesting, the WRK is noticably smaller than the Linux kernel (14mb vs. 48mb). What this says about either is for some other pundit to play with…