Windows Boot Process Step by Step

Are you wondering how exactly the windows booting process occurs and all that goes behind in the background? If yes, then you are at the right place. In this tutorial, you will learn how the windows boot process works step by step.

Let’s dive in.

Join 46 other followers

Table of Content

  1. What is firmware ?
  2. What is CMOS ?
  3. What is Flash Memory ?
  4. Step by Step Windows boot Processing
  5. What bios stands for and what is Bios ?
  6. What is Power On Self Test (POST)
  7. Master Boot Record (MBR)
  8. Windows Boot Manager
  9. Windows Boot Loader
  10. Loading the Windows kernel
  11. High Level Summary of Windows Boot Process
  12. High Level Summary of Windows Boot Process(Other way)
  13. Conclusion

What is firmware ?

Firmware is a software program stored on a hardware device to control, operate, or maintain the hardware in the background. Firmware is found on computer motherboards to hold hardware settings and settings related to BIOS and is stored in non-volatile memory devices such as ROM, EPROM, or flash memory.

Firmware
Firmware

What is CMOS ?

A complementary metal-oxide-semiconductor (CMOS) is a type of integrated circuit technology that
holds basic information, including the date and time and system configuration settings,
needed the basic input/output system (BIOS) to start the computer.

The CMOS (Complementary Metal-Oxide Semiconductor) chip stores the settings that you make
with the BIOS configuration program.

What is Flash Memory ?

Flash Memory is lifelong and unchanged storage used to store information even when the system is powered off. Flash memory is widely used with car radios, cell phones, digital cameras, PDAs, solid-state drives, tablets, and printers.

Flash memory
Flash memory

Step by Step Windows boot Processing

Now that you have a basic idea about a few components used in booting the windows machine. Let’s discuss in detail each step of how to perform window booting.

Step by Step Windows boot Processing
Step by Step Windows boot Processing

What bios stands for and what is Bios ?

Bios stands for Basic Input Output System and is the first software to run when a computer is started and is stored on a small memory chip on the motherboard. BIOS provides steps to the computer to perform basic functions such as booting.

(BIOS) is a program that’s stored in nonvolatile memory such as read-only memory (ROM) or flash memory, making it firmware

  • BIOS is also used to identify and configure the hardware in a computer such as the hard drive, floppy drive, optical drive, CPU, memory, and related equipment.
  • BIOS performs a POST (Power On Self Test) that checks all the hardware devices connected to a computer like RAM, hard disk, etc, and makes sure that the system can run smoothly with those hardware devices. If the POST is a failure the system halts with a beep sound.
  • The other task of the BIOS is to read the MBR. MBR stands for Master Boot Record and it’s the first sector on a hard disk. MBR contains the partition table and boot loader.
BIOS
BIOS
BIOS Configuration
BIOS Configuration

What is Power On Self Test (POST)

Power On Self Test (POST) checks all the hardware devices connected to a computer like RAM, hard disk, etc., and makes sure that the system can run smoothly with those hardware devices. If the POST fails, the system halts with a beep sound.

The first set of startup instructions in BIOS is the POST, which is responsible for the following system and diagnostic functions:

  • Performs initial hardware checks, such as determining the amount of memory present
  • Verifies that the devices needed to start an operating system, such as a hard disk, are present
  • Retrieves system configuration settings from nonvolatile memory, which is located on the motherboard
  • If a single beep is sounded from the PC, then there are no hardware issues present in the system. However, an alternative beep sequence indicates that the PC has detected a hardware issue that needs to be resolved before moving on to the next stages of the process

Master Boot Record (MBR)

After POST performs the testing, the BIOS reads the Master Boot Record (MBR). MBR is stored on the hard disk’s first sector and contains the boot loader.

Windows Boot Manager

Windows Boot Manager enables you to choose from multiple operating systems or select the kernels or helps to start Windows Memory Diagnostics. Windows Boot Manager starts the Windows Boot Loader. Located at %SystemDrive%\bootmgr.

Windows Boot Loader

The boot loader is a small program that loads the kernel to the computer’s memory that is in the RAM. There are three boot files in a Windows operating system: NTLDR, NTDETECT.COM, and Boot.ini.

  • The path of NTLDR (NT Loader) is C:\Windows\i386\NTLDR.
  • C:\boot.ini contains the configuration files of NTLDR
  • This file detect hardware’s and passes information to NTLDR

Loading the Windows kernel

The Windows Boot Loader is responsible for loading the Windows kernel (Ntoskrnl.exe), Hardware Abstraction Layer (HAL), Hal.dll file that helps the kernel to interact with hardware. Next, Windows executes the configuration information stored in the registry in HKLM\SYSTEM\CurrentControlSet and starts services and drivers. Winlogon.exe starts the login procedures of the windows machine.

High Level Summary of Windows Boot Process

  1. The computer loads the basic input/output system (BIOS) from ROM. The BIOS provides the most basic information about storage devices, boot sequence, security, Plug and Play (auto device recognition) capability and a few other items.
  2. The BIOS triggers a test called a power-on self-test (POST) to make sure all the major components are functioning properly. You may hear your drives spin and see some LEDs flash, but the screen, at first, remains black.
  3. The BIOS has the CPU send signals over the system bus to be sure all of the basic components are functioning. The bus includes the electrical circuits printed on and into the motherboard, connecting all the components with each other.
  4. The POST tests the memory contained on the display adapter and the video signals that control the display. This is the first point you’ll see something appear on your PC’s monitor.
  5. During a cold boot the memory controller checks all of the memory addresses with a quick read/write operation to ensure that there are no errors in the memory chips. Read/write means that data is written to a bit and then read back from that bit. You should see some output to your screen – on some PCs you may see a running account of the amount of memory being checked.
  6. The computer loads the operating system (OS) from the hard drive into the system’s RAM. That ends the POST and the BIOS transfers control to the operating system. Generally, the critical parts of the operating system – the kernel – are maintained in RAM as long as the computer is on. This allows the CPU to have immediate access to the operating system, which enhances the performance and functionality of the overall system

High Level Summary of Windows Boot Process(Other way)

  1. BIOS is the first software to run when a computer is started and stored on a small memory chip on the motherboard. BIOS is also used to identify hardware issues using POST and configure the hardware in a computer such as the hard drive, floppy drive, optical drive, CPU, memory, and related equipment.
  2. The other task of the BIOS is to read the MBR using windows boot manager.
  3. Further, Windows Boot Manager enables you to choose from multiple operating systems or select the kernels or helps to start Windows Memory Diagnostics. Windows Boot Manager starts the Windows Boot Loader (GRUB or LILO) located at %SystemDrive%\bootmgr.
  4. The boot loader ( GRUB or LILO) is a small program that loads the kernel to the memory of the computer that is RAM. There are three boot files in a Windows operating system, and they are NTLDR, NTDETECT.COM, and Boot.ini.
    • The path of NTLDR (NT Loader) is C:\Windows\i386\NTLDR.
    • C:\boot.ini contains the configuration files of NTLDR
    • This file detect hardware’s and passes information to NTLDR
  5. Next, The Windows Boot Loader is responsible for loading the Windows kernel (Ntoskrnl.exe) and the Hardware Abstraction Layer (HAL), Hal.dll( Hal.dll file) that helps the kernel to interact with hardware.
  6. Now, the Windows executive processes the configuration information stored in the registry in HKLM\SYSTEM\CurrentControlSet and starts services and drivers.
  7. Finally, winlogon.exe starts the login procedures of the windows machine

Conclusion

In this tutorial, you learned various needed components, or you should know how to understand how booting works in a windows machine.

Finally, you learned step by step boot process in windows Machine. So, with this knowledge, you should have a strong understanding of the windows reboot issues?

How to Install Visual Studio Code on Windows machine

Are you looking for a code editor that supports multiple languages and plugins? If yes, you have come to the right place to learn about one of the world’s most widely used code editors Visual Studio Code.

In this tutorial, you will learn what visual studio code is and how to install Visual studio code step by step from scratch. Still interested?

Let’s get into it.

Join 46 other followers

Table of Content

  1. What is Visual studio code?
  2. Benefits of Visual Studio Code
  3. Prerequisites
  4. Install and setup Visual studio code
  5. Setup Visual studio code with extension’s and plugins
  6. How to run python program in visual studio code
  7. Conclusion

What is Visual Studio Code?

Visual Studio Code is a light weighted code editor which can be installed on multiple operating systems such as windows operating system, Linux, and macOS. The beauty of this code editor is it can work with various languages together and supports multiple languages. Also, it has strong plugin installation capabilities.

Benefits of Visual Studio Code

Let’s look at some of the benefits of Visual Studio code in this section.

  • Visual Studio code automatically complete the code variables, methods and module because of its intelligent nature.
  • Visual Studio code comes with variety of in built themes which can be used while running the code.
  • Visual Studio code works with top extensions in industry which provides ease to use code inside the editor.
Visual Studio Plugins and extensions
Visual Studio Plugins and extensions

Prerequisites

  • Windows 7 plus machine is reqyuired.
  • .NET Framework 4.5.2 or higher is required. If you dont have .NET Framework 4.5.2 or higher , please install from here

Install Visual studio code

Now that you have a basic idea about Visual studio and why you need this. Let’s get into the installation part.

  • First open your favorite browser may be google chrome and click on the link here to install the Visual studio code zip file.
Downloading Visual studio code
Downloading Visual studio code
  • Once the zip file is downloaded move to any folder such as C:\Desktop\Softwares.
Viewing the Visual studio installer downloaded.
Viewing the Visual studio installer downloaded.
  • After you click on the windows zip installer, it will extract all the files in a folder as shown below. Finally click on Code to open Visual Studio Code.
Extracting the Visual studio installer
Extracting the Visual Studio installer
  • Now the Visual studio code main screen should come up and confirms successful installation of Visual studio code.
Opening the visual Studio code
Opening the Visual Studio code

Setup Visual studio code with extension and plugins.

Now that you have Visual studio code installed, which is great, you require plugins and extensions to work with various languages and tools. With more extensions, you make the editor better and more useful. Let’s install the Python extension in Visual studio code to kick off this section.

  • Now, execute the python command on command prompt to verify if python is successfully installed on your machine.
Executing the Python command on windows machine
Executing the Python command on the windows machine
  • Next, hop over to the Visual studio code , click on extension’s and search for Python. You should see a Python extension.
Checking Python Plugin
Checking Python Plugin
  • Further click on Install, to install the Python extension.
Installing Python Plugin
Installing Python Plugin
  • It takes few seconds to install the Python extension and once installed , it will reflect in installed section.
Installed Python Plugin
Installed Python Plugin
  • Also once python extension is installed you will notice at the bottom status bar will show you Python interpreter details.
Viewing the Python Interpreter.
Viewing the Python Interpreter.

How to run python program in visual studio code

Earlier, you installed the Python plugin in the Visual studio code, which allows you to write Python code easily and effectively. Let’s create a Python code and run a simple Python program in visual studio code.

  • Create a folder on desktop named python and create a file inside it named main.py and copy/paste the below code.
print("I just installed visual studio and its working fine")
print("Thanks automateinfra.com for taking through this tutorial")
Python folder creation containing main.py file
Python folder creation containing main.py file
  • Now switch to Visual studio code again and click on the File ➔ Add folder to workspace and select python folder that you created previously.
Adding the Python code in main.py file
Adding the Python code in the main.py file
  • Finally execute the Python code and as you can see the code has successfully executed.
The Python code in the main.py file

Conclusion

In this tutorial, you learned what visual studio code is and how to install visual studio code. You also learned how to install python extension and finally executed a successful python code.

This tutorial should give you a quick start to code editor visual studio code, so which applications do you plan to create in the visual studio next?