bios & uefi - · pdf fileorun level 6 –/etc/rc.d/rc6.d/ good by bios. hello efi
TRANSCRIPT
BIOS = Basic Input Output System
UEFI = Unified Extensible Firmware Interface
POST= Power On Self Test
BR = Boot Record (aka MBR)
BC =Boot Code (aka MBC)
GUID = Globally Unique Identifier
GPT = GUID Partition Table
Vocabulary
What is booting When we start our computer then there is an operation
which is performed automatically by the Computer which is also called as Booting.
In the Booting, System will check all the hardware’s and Software’s those are installed or Attached with the System and this will also load all the Files those are needed for running a system.
In the Booting Process all the Files those are Stored into the ROM Chip will also be Loaded for Running the System.
In the Booting Process the System will read all the information from the Files those are Stored into the ROM Chip and the ROM chip will read all the instructions those are Stored into these Files.
Types of booting
Warm booting
When the System Starts from the Starting or from
initial State Means when we Starts our System
this is called as warm Booting.
Cold booting
The Cold Booting is that in which System
Automatically Starts when we are Running the
System, For Example due to Light Fluctuation the
system will Automatically Restarts So that in this
Chances Damaging of system are More.
Instructions used to start the computer from a cold start. (power off to power on).
The BIOS instructions are written on non-volatileRAM.
EEP-ROM is the common media choice for the BIOS,installed on the motherboard.
The BIOS instructions are based on the chip-set installed on the motherboard
BIOS
The BIOS primary functions are Power-on self-test (POST)
Detect the video card’s (chip’s) BIOS and execute its code to initialize the video hardware
Detect any other device BIOSes and invoke their initialize functions
Display the BIOS start-up screen
Perform a brief memory test (identify how much memory is in the system)
Set memory and drive parameters
Configure Plug & Play devices
Assign resources
Identify the boot device
BIOS
Turn on the power switch All memory and cache is empty at startup.
A reset signal is generated by the chipset to the CPUuntil the power is ready.
The CPU powers up and reads address xFFFF0 from the ROM. This contains a jump instruction to the start of the BIOS instructions.
Hardware Boot Sequence
1. BIOS
BIOS stands for Basic Input/Output System
Performs some system integrity checks
Searches, loads, and executes the boot loader program.
It looks for boot loader in floppy, cd-rom, or hard drive. You
can press a key (typically F12 of F2, but it depends on yoursystem) during the BIOS startup to change the boot sequence.
Once the boot loader program is detected and loaded into thememory, BIOS gives the control to it.
So, in simple terms BIOS loads and executes the MBR bootloader.
2. MBR MBR stands for Master Boot Record.
It is located in the 1st sector of the bootable disk.Typically /dev/hda, or /dev/sda
MBR is less than 512 bytes in size. This has three
components 1) primary boot loader info in 1st 446 bytes
2) partition table info in next 64 bytes 3) mbr validationcheck in last 2 bytes.
It contains information about GRUB (or LILO in oldsystems).
So, in simple terms MBR loads and executes the GRUBboot loader.
3. GRUB
GRUB stands for Grand Unified Bootloader.
If you have multiple kernel images installed on your
system, you can choose which one to be executed.
GRUB displays a splash screen, waits for few seconds, if
you don‟t enter anything, it loads the default kernel image
as specified in the grub configuration file.
GRUB has the knowledge of the filesystem (the older
Linux loader LILO didn‟t understand filesystem).
Grub configuration file is /boot/grub/grub.conf
(/etc/grub.conf is a link to this).
4. Kernel
Mounts the root file system as specified in the “root=” ingrub.conf
Kernel executes the /sbin/init program
Since init was the 1st program to be executed by Linux
Kernel, it has the process id (PID) of 1. Do a „ps -ef | grep init‟and check the pid.
initrd stands for Initial RAM Disk.
initrd is used by kernel as temporary root file system until
kernel is booted and the real root file system is mounted. It
also contains necessary drivers compiled inside, which helps itto access the hard drive partitions, and other hardware.
5.Init Looks at the /etc/inittab file to decide the Linux run level.
Following are the available run levels
0 – halt
1 – Single user mode
2 – Multiuser, without NFS
3 – Full multiuser mode
4 – unused
5 – X11
6 – reboot
Init identifies the default initlevel from /etc/inittab and uses that to load all appropriateprogram.
Execute „grep initdefault /etc/inittab‟ on your system to identify the default run level.
If you want to get into trouble, you can set the default run level to 0 or 6. Since you knowwhat 0 and 6 means, probably you might not do that.
Typically you would set the default run level to either 3 or 5.
6. Run level programs
When the Linux system is booting up, you might see variousservices getting started. Those are the runlevel programs
Depending on your default init level setting, the system willexecute the programs from one of the following directories.
oRun level 0 – /etc/rc.d/rc0.d/
oRun level 1 – /etc/rc.d/rc1.d/
oRun level 2 – /etc/rc.d/rc2.d/
oRun level 3 – /etc/rc.d/rc3.d/
oRun level 4 – /etc/rc.d/rc4.d/
oRun level 5 – /etc/rc.d/rc5.d/
oRun level 6 – /etc/rc.d/rc6.d/
Good by BIOS. Hello EFI
As 32-bit architectures became the norm and 64-bit architectures emerged, the BIOS was starting to look quite dated.
Intel set out to create a specification of a BIOS successor that had no restrictions on running in 16-bit mode with 20-bit addressing.
This specification is called the Unified Extensible Firmware Interface, or UEFI (but typically called EFI). Although developed by Intel, it was managed since 2005 by the Unified EFI Forum.
It is used by many newer 64-bit systems, including Macs, which also have legacy BIOS support for running Windows.
BIOS components - preserved some components from the BIOS, including power
Support for larger disks- The BIOS only supported four partitions per disk, with a capacity of up to 2.2 TB per partition. EFI supports a maximum partition size of 9.4 ZB (9.4 × 1021 bytes).
No need to start up in 16-bit (real) mode- The pre-boot execution environment gives you direct access to all of system memory.
Device drivers - The EFI includes device drivers, including the ability to interpret architecture-independent EFI Byte Code (EBC) Operating systems use their own drivers.
Boot manager- EFI has its own command interpreter and complete boot manager.
Extensibility- The firmware is extensible. Extensions to EFI can be loaded into non-volatile memory.
EFI Features
EFI Booting With EFI, there is no longer a need for the Master
Boot Record to contain a stage 1 boot loader; EFI has the smarts to load a file on its own.
Instead, EFI reads the GUID (Globally Unique IDentifier) Partition Table (GPT), which is located in blocks immediately after block 0 (which is where the MBR still sits for legacy reasons).
The GPT describes the layout of the partition table on a disk. From this, the EFI boot loader identifies the EFI System Partition. This system partition contains boot loaders for all operating systems that are installed on other partitions on the device.
In the beginning there was the BIOS
Intel creates the Extensible Firmware Interface in
1998
UEFI now supersedes EFI – UEFI can run on-top-of the traditional BIOS or
in place
of the BIOS.
BIOS/UEFI
• The interface defined by the EFI specification includes data tables that contain platform information, and boot and runtime servicesthat are available to the OS loader and OS. UEFI firmware providesseveral technical advantages over a traditional BIOS system
• Ability to boot from large disks (over 2 TiB) with a GUID Partition Table, GPT
• CPU-independent architecture
• CPU-independent drivers
• Flexible pre-OS environment, including network capability
• Modular design
Unified Extensible Firmware Interface(UEFI)
• The UEFI specification defines a "boot manager", a firmware policy engine that is in charge of loading the operating system loader and all necessary drivers.
• The boot configuration is controlled by a set of global NVRAM variables, including boot variables that indicate the paths to the loaders.
• Operating system loaders are a class of the UEFI applications. As such, they are stored as files on a file system that can be accessed by the firmware, called EFI System partition (ESP).
• UEFI does not rely on a boot sector, although ESP provides space for it as part of the backwards compatibility.[28]
• UEFI booting from GPT disks is commonly called UEFI-GPT.• Boot loaders can also be automatically detected by the UEFI firmwares, to
enable booting from removable devices.]
• It is common for UEFI firmware to include a user interface to the boot manager, to allow the user to select and load the operating system among the possible options.
UEFI Booting
UEFI FeaturesBreaking out of size limitations
UEFI uses the GUID partition table (GPT).GPT uses
64-bit entries in its table which dramatically extends
the support for size possibilities of the hard drive.
Speed and performance
Since UEFI is platform independent, it may be able
to enhance the boot time and speed of the computer.
Security
Secure boot is a feature of UEFI. UEFI can allow
only authentic drivers and services to load at boot
time, making sure that no malware can be loaded at
computer startup.