Vagner Pilar Profile picture
Cloud Infrastructure Consultant @OracleCloud with passion for #WindowsInternals #Performance and #Debugging {Opinions my own, not my employer sponsored}
Nov 1, 2020 7 tweets 2 min read
Packages sets and #SMT sets. Windows uses 5 fields in the KPRCB to determine correct scheduling decisions when dealing with logical processor topologies. The first field, #CoresPerPhysicalProcessor, determines wheter this logical processor is part of a multicore package. /1 It's computed from the CPUID returned by the processor and rounded to a power of 2. The 2nd field, #LogicalProcessorPerCore, determines wheter the logical processor is part of an SMT set, such as on an AMD with SMT, it is also queried through CPUID and rounded. /2
Oct 13, 2020 17 tweets 3 min read
#ETW is an efficient kernel-level tracing facility that lets you log kernel or app-defined events to a log file (#ETL). You can consume the events in real time or from a log file and use them to debug an app or to determine where perf issues are occurring in the app. (1/17) ETW lets you enable or disable event tracing dynamically, allowing you to perform detailed tracing in a production environment without requiring computer or application restarts. (2/17)
Oct 11, 2020 7 tweets 2 min read
#WindowsInternals #Drivers (1/7) Drivers are call back mechanisms to send or retrieve I/O between the operating system and devices such as NIC’s, Storage Controllers, and USB keyboards and mice.
They are typically loaded during the system boot sequence (after NTLDR but before Ctrl+Alt+Del presentation). (2/7)
Oct 11, 2020 6 tweets 4 min read
Articles #WindowsInternals (1/6) Introduction to DPCs
msdn.microsoft.com/en-us/library/… (2/6)
Oct 11, 2020 8 tweets 2 min read
#ContexSwitching #WindowsInternals (1/8) Until threads that are suspended or blocked become ready to run, the scheduler does not allocate any processor time to them, regardless of their priority (2/8)
Oct 11, 2020 9 tweets 2 min read
CPU Scheduler #WindowsInternals (1/9) The system scheduler controls multitasking by determining which of the competing threads receives the next processor time slice. (2/9)
Oct 11, 2020 7 tweets 2 min read
CPU Idle States #Cstates #WindowsInternals (1/6) C-states, also known as CPU Idle states, are states when the CPU has reduced or turned off selected functions. Different processors support different numbers of C-states in which various parts of the CPU are turned off. (2/6)
Oct 11, 2020 7 tweets 2 min read
ISR vs DPCs #WindowsInternals #ProcessorDebug (1/5) ISR: A software routine that hardware invokes in response to an interrupt. ISRs examine an HARDWARE interrupt and determine how to handle it. (2/5)
Oct 11, 2020 4 tweets 1 min read
Performance Counter Series #4 #WindowsInternals #Perfmon
Logman.exe create counter Perf-Counter-Log (1/4) -f bincirc –v mmddhhmm –max 512 - This part of the command specifies that we are creating a Binary Circular file, sets the versioning to the mmddhhmm format, and the maximum log size to 512MB (2/4)
Oct 11, 2020 5 tweets 2 min read
Performance Counter Series #1 #WindowsInternals #Perfmon
Counter Structure: Image Performance Counter Series #2 #WindowsInternals #Perfmon
Counter Types:
Instantaneous - Displays the most recent measurement, Single observation, or Sample of the value right now - example: Memory\Available Bytes (1/4)