Windows OS

This post is about the Windows operating system.

Hardware Abstraction Layer (HAL) is part of the kernel, and it uses different code depending on the hardware technology below.

MinWin is an internal minimalistic Windows version used just to test the kernel.

Windows Nanoserver is a runnable Windows version.

Process Management

There is a total of 139 priority values for process management.

The user processes range between 40 values.

Other sources says that Windows work with 32 values (from 0 to 31).

The level can be a “level impulse” in certain situation

  • I/O: +1 level
  • Semaphore: +2 levels
  • GUI: +1 level

User Mode Scheduling (UMS) implies that there are two threads for each process where one runs in kernel mode and other in user mode.

The Windows microkernel only work with threads, not processes.

Each Windows process has at least one thread.

Process Environment Block (PEB)

Threat Environment Block (TEB)

PEB and TEB have specific fields.

There are 9 process states, the same number as Unix but more than Linux (that has 5).

Memory Management

It used FAT32 at the beginning

Then it developed NTFS.

A soft page failure means that the page was previously allocated and has not been deleted.

Memory management works only with processes, not threads.

SuperFetch means that it loads in advance.

Logging Management

You can read this post about tools to get Windows logs.

Device Handling

Windows 95 is the first version to feature plug ‘n play.

Windows Security

You can read this post about Windows security.

Windows BitLocker was introduced in Windows Vista. It uses encryption algorithm AES-XTS.

A security descriptor is assigned to a file.

Window Versions

MS-DOS-based Windows versions:

  • 1
  • 2
  • 3
  • 3.11
  • 95
  • 98
  • Me

NT-based Windows versions:

  • NT
  • 2000
  • XP
  • Vista
  • 7
  • 8
  • 10
  • 11

Windows server versions:

  • Server 2003
  • Server 2008
  • Server 2012
  • Server 2016
  • Server 2019
  • Server 2022

Windows 11 requires a minimum processor of Intel Gen8 or AMD Zen+.

Windows Server 2022 has at least the following versions:

  • Standard
  • Datacenter
  • Azure Datacenter

WS 2022 Datacenter has no limits in the number of virtualized OSs.

Executable files in Windows Systems

Executable files in Windows systems:

  • COM
  • EXE MZ
  • EXE PE
  • EXE NE
  • EXE LE

You can read this post about DOS COM files.

You can read this post about EXE MZ files.

Software Development

OS API

  • Win32 API

Low Level Graphics

  • GDI+
  • DirectX 9-12

GDI+ is for 2D graphics.

DirectX is for 3D graphics.

Application UI Frameworks

  • WPF
  • WinForms
  • UWP
  • WinUI

Windows Presentation Foundation (WPF)

MFC, WinForms, and WPF are sometimes referred as Win32 apps.

Component Models and Interoperability

  • COM
  • ActiveX
  • ATL

Component Objetct Model (COM)

ActiveX

Active Template Library (ATL)

Application Runtime

Windows subsystems:

  • MFC
  • .NET Framework

Compatibility of other OS software on Windows

Linux software compatibility on Windows

Main solutions to ensure Linux compatibility on Windows:

  • Cygwin
  • MinGW
  • WSL
  • Virtual machine

Cygwin adds a layer of compatibility to convert calls to the Linux API to the Windows system. It also includes common Linux tools.

MinGW is a lighter version of Cygwin. MSYS2 is related to MinGW.

Windows Subsystem for Linux (WSL) is a lightweight virtual machine offered by Microsoft. Latest version is WSL 2.

A full virtual machine with Linux running on Windows is another solution.

You might also be interested in…

Leave a Reply

Your email address will not be published. Required fields are marked *