Aditya Chatterjee's Blog, page 110

February 28, 2022

Types of memory devices

In this article, we have covered the different types of memory devices like CD-ROM, SD card and much more.

Table of contents:

IntroductionPrimary memorySecondary memoryIntroduction

A memory device is a piece of hardware used to store data. Most electronic devices such as computers, mobile phones, tablets, etc all have a storage device that stores data and/or programs.

There are two basic types of memory:

Primary/main memoryExternal/secondary memory

The different types of memory devices ...

 •  0 comments  •  flag
Share on Twitter
Published on February 28, 2022 01:28

February 27, 2022

Firmware

In this article we discuss firmware - software that is directly programmed into hardware devices such as routers, cameras, network cards etc.

Table of contents.Introduction.Types of firmware.Firmware updates.Flashing.Summary.References.Introduction.

Firmware is software directly placed inside a piece of hardware. Since it directly controls hardware it does not have to go through APIs, OS, or drivers to perform its functions.

In machines, firmware is stored in non-volatile memory such as...

 •  0 comments  •  flag
Share on Twitter
Published on February 27, 2022 13:56

BIOS (Basic Input Output System)

We discuss BIOS - firmware stored in non-volatile memory e.g EPROM, responsible for performing startup procedures such as POST before passing control to the bootloader which loads the OS.

Table of contents.Introduction.The booting sequence.Accessing BIOS.Updating BIOS.Summary.References.Prerequisites.firmware.Introduction.

Power On Self Test(POST), is the self-diagnostic test that a computer will perform during startup to make sure that the hardware does not have any issues.
This te...

 •  0 comments  •  flag
Share on Twitter
Published on February 27, 2022 13:38

Types of Boot loaders

During startup, the BIOS performs initial tests after which it transfers control to the MBR where the boot-loader is stored. A bootloader is a program that loads the operating system into memory during startup.

Table of contents.Introduction.Bootloaders.Summary.References.Introduction.

When a computer is powered on, hardware information is displayed on the screen, this is the boot loader firmware working.

A boot loader is the program responsible for loading an operating system into memory...

 •  0 comments  •  flag
Share on Twitter
Published on February 27, 2022 11:52

GRUB bootloader

GRUB is one of the many Linux boot loaders responsible for loading an operating system into memory during startup. In this article, we discuss the booting process involving GRUB and how to configure and customize GRUB.

Table of contents.Introduction.The boot process.Configuring GRUB.Customizing GRUB.Summary.References.Introduction.

The GNU GRand Unified Boot Loader/GRUB is firmware that is used to load an operating system such as Linux into memory during startup.

It provides both a grap...

 •  0 comments  •  flag
Share on Twitter
Published on February 27, 2022 11:34

February 25, 2022

Run levels in Linux

Run levels are modes of operation for computer operating systems. We discuss the different run levels in the Linux OS and demonstrate how to change the default run level.

Table of contents.Introduction.Type of run levels.Init scripts.Changing run levels.Summary.References.Introduction.

A run level is an operational level describing the state of a system with respect to the services it is currently running. For example, when we boot a Linux OS, we have two options, boot into the graphica...

 •  0 comments  •  flag
Share on Twitter
Published on February 25, 2022 10:41

Systemd Components

Systemd is a suite of utilities that provide an array of system components for the Linux OS. We look at various components within systemd.

Table of contents.Introduction.Systemd componentsSummary.References.Introduction.

Systemd is responsible for initializing and managing services in Linux. With systemd, we are also able to start different processes simultaneously which results in faster booting.

Systemd components.

In this section, we discuss various systemd components, they include;

sy...
 •  0 comments  •  flag
Share on Twitter
Published on February 25, 2022 10:32

Unit files in Linux

A unit file is responsible for specifying how systemd starts and runs. In this article, we discuss unit files, the contents of these files, service and target unit and unit files, and how to create and edit unit files.

Table of contents.Introduction.The unit file.Service units.Target units.Creating a unit file.Summary.References.Introduction.

systemd is an array of components that make up the Linux OS. Usually, the PID for this component is 1 and therefore is responsible for starting o...

 •  0 comments  •  flag
Share on Twitter
Published on February 25, 2022 00:40

Systemctl and Systemd in Linux

The systemctl command is a systemd utility used to manage services, get information about service unit files and service states, and therefore a useful utility to know for managing services on the server while systemd is an array of components for Linux OS.

Table of contents.Introduction.Managing services.Managing units.Systemctl shortcuts.Summary.References.Introduction.

The systemctl command in a Linux utility is used to manage the systemd service and service manager.
systemd is an in...

 •  0 comments  •  flag
Share on Twitter
Published on February 25, 2022 00:06

February 24, 2022

Data-flow analysis in Compiler Design

All optimizations in a compiler depend on data-flow analysis.
We have three instances of data-flow problems, reaching definitions, live variables and available expressions.

Table of contents.Introduction.Abstraction.Schemas.
3.1. Statement semantics.
3.2. Flow of control.Schemas on basic blocks.Reaching definitions.Live-variable analysis.Available expressions.Summary.References.Introduction.

Data-flow analysis is the body of techniques involved in deriving information about the flow ...

 •  0 comments  •  flag
Share on Twitter
Published on February 24, 2022 04:38