list reference from by Geoff Evans
  • File descriptors, HANDLEs
  • Blocking vs. non-blocking I/O requests
  • The fundamental sync primitives and wait functions
  • Manual and automatic condition/event primitives
  • Syscall overhead
  • Memory protection and superuser instructions
  • Exceptions and interrupt service routines
  • Memory contention and the basic dangers of threads
  • OS-implemented mutex objects and the thread/process scheduler
  • Thread local storage
  • TCP vs. UDP
  • Network order
  • Latency with select-polling vs. blocking waits vs. async
Virtual Memory
  • How virtual memory is related to physical memory, swap
  • How CPU hardware makes virtual memory performant
  • Shared objects vs. static libraries
  • Styles of "dynamic linking" on windows
  • Practicality of code unloading
  • Jump tables
  • Process loading and the dynamic loader
  • Pages inherently shared vs. non-shared across processes
  • Page protections, JIT

Component Object Model (COM)

  • COM interface
  • components, servers and clients
  • COM object
  • OLE
  • in-process, local, remote servers

Windows Communication Foundation (WCF)

  • WCF architecture
  • contracts
  • binding
  • address
  • endpoint
  • hosting

Remote Procedure Call (RPC)

  • RPC model
  • Microsoft Interface Definition Language (idl and acf files)
  • client/server stubs
  • binding
  • pipes

MFC absolute basics (Optional)

  • what does it provide
  • CObject
  • CWinApp
  • document/view architecture
  • events and event handling
  • AFX = MFC ?