Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

TrainSec

Windows Master Developer

via TrainSec Path

Overview

Building low level applications, services, and components requires a good understanding of the inner workings of Windows and its fundamental objects and capabilities, such as processes, threads, virtual memory, DLLs, synchronization, and much more. Using these foundations, the next requirement is an intimate knowledge of the many parts of the Windows API, which is the primary way to accomplish things on Windows. Going deeper into the kernel requires an even deeper understanding of some kernel mechanisms that are utllized when writing kernel mode drivers, in addition to the kernel API itself. By the end of this path, you’ll have mastered the user mode and kernel mode APIs and have the knowledge and confidence to tackle any low level Windows development project.

Syllabus

  • Windows Internals: Day 1
    • This course provides the fundamental knowledge of Windows concepts and architecture, including processes, threads, virtual memory, system calls, DLLs, handles and objects. This will serve as a good foundation for the following courses which focus on programming.
  • Windows System Programming 1
    • This course begins the journey of user mode development, covering the basics of the Windows API. It digs deeper into handles and objects and their APIs, and working with processes.
  • Windows System Programming 2
    • Continuing from where “Windows System Programming 1” left off, the course deals with job objects, using threads effectively, file I/O APIs, and working with virtual memory.
  • Windows System Programming 3
    • Continuing from where “Windows System Programming 2” left off, the course looks into building and consuming Dynamic Link Libraries (DLLs), and Windows security APIs. Finally, an introduction to the Component Object Model (COM) is provided. COM is dealt with in greater details in the next two courses.
  • COM Programming 1
    • COM has been around since 1993 and is still used everywhere in Windows. This course explores the foundations and motivation for of COM, writing COM servers and clients, and includes working with the Active Template Library (ATL) as a helper library for working with COM.
  • COM Programming 2
    • This course continues the COM journey by describing how to use COM automation accessible from scripting environments, how to build COM EXE servers, and finally the somewhat tricky topic of COM threading and apartments.
  • Windows Kernel Programming 1
    • The course provides the foundation for writing kernel mode drivers on Windows. The drivers covered are the so called “software drivers” – these don’t interact with hardware – instead interacting with Windows by performing operations not possible to do from user mode, or registering for kernel notifications related to processes, threads, Registry and more.
  • Windows Kernel Programming 2
    • Continuing from “Windows Kernel Programming 1”, the course teaches the basics of file system min-filters, and covers some other interesting kernel driver techniques.

Taught by

Pavel Yosifovich

Reviews

Start your review of Windows Master Developer

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.