views:

207

answers:

5

Hello,

I started my windows development with .NET. But I'm a person who doesn't like getting away with work done. I would really like to know how exactly things work, I mean the INTERNALS. I'm doing my Engineering final year.

Now and then I encountered few books, If put them in order I think it makes SOLID foundation.

So, the list is:

  1. Operating Systems: Internals and Design Principles (6th Edition) - William Stallings (Theoretical)

  2. Windows® Internals: Including Windows Server 2008 and Windows Vista, Fifth Edition - Mark Russinovich (Practical , must be combined with above book)

  3. Windows via C/C++ by Jeffrey M. Richter (Shows how to use Windows OS's features in programming)

  4. Programming Windows, Fifth Edition by Charles Petzold (Focuses on "Windows API")

  5. Programming Windows with MFC, Second Edition by Jeff Prosise (optional but having a look is preferable)

  6. Essential COM by Don Box (Must read before moving to .NET to really understand WHY?)

  7. CLR via C#, Second Edition (Pro Developer) by Jeffrey Richter (Entering into the modern era of application development .NET 2.0 CLR)

What do you think? Do you agree? Any further additions/removals/re-orderings to this list?

+2  A: 

Your list is excellent.

Windows programmer
This should be a comment
Nathan Campos
The question was "What do you think?"... and "Windows programmer" answered it...
dicroce
Ok, but it's like a comment in my opinion.
Nathan Campos
I wonder why I marked my answer as "community wiki" when no one else did.
Windows programmer
A: 

Another very nice book that I have: .NET Windows Forms in a Nutshell

Nathan Campos
A: 

CLR via C# rocks! but you should read also about unmanaged side. Just read what this guy wrote. And another book is Windows Internals:

Understand how the core system and management mechanisms work—from the object manager to services to the registry

Explore internal system data structures using tools like the kernel debugger

Grasp the scheduler’s priority and CPU placement algorithms

Go inside the Windows security model to see how it authorizes access to data

Understand how Windows manages physical and virtual memory

Tour the Windows networking stack from top to bottom—including APIs, protocol drivers, and network adapter drivers

Troubleshoot file-system access problems and system boot problems

Learn how to analyze crashes

Trickster
"And another book is Windows Internals" -- that might be why it was #2 in the list in the original question.
Windows programmer
A: 

if you are a .net developer i would place CLR via C# first in the list it is a very good book also Windows via C/C++ looks like a good book (i m planing to read it soon) Programming Windows seems to be good so try to order your list :)

Yassir
A: 

Windows Internals is what they hand every Windows Serviceability (i.e. Hotfixes) developer the day they walk through the door. Petzold's good if you're doing old-school GDI or User stuff, I don't use it for much else.

If you really want to learn Windows internals, you should also be learning how to use the Debugging Tools for Windows (aka WinDbg). You should get The IDA Pro book, even if you're not interested in IDA Pro; has a lot of stuff on things like calling conventions and reading x86/amd64 assembly.

Paul Betts