What You Need to Know

Everything… except slides:

  • 13
  • 15
  • 21 (just know that moderns OSs usually support threads)
  • 32 (just know a few should b good)

Disclaimer: Anything in the slides can be tested, But I THINK these u can kinda ignore, just know they exist…

Structure of a Program

A program file, although stored as one large binary file, has multiple internal segments with different responsibilities.

They are : Headers, Text, RO-Data, Data and BSS*

Block Starting Symbol

Read the slides if you wish to know what the rest are, here i’ll just cover BSS.

The BSS segment in a program file, exists as part of the Header. If I have a program with many variables initialised to 0, it would be a waste of space to store all those 0s inside the Data segment. So instead, you just store the number of 0s needed in the BSS segment! Think of it has storing how many 0s are needed for all the 0 initialised variables.

If you would like to know more.

Structure of a Process

When a program is executed and a process is created. The operating system copies the Headers, Text, RO-Data and Data into RAM. Additionally, it assigns some amount of RAM (as defined in the Header) as the program’s Stack segment, and also assigns some amount of RAM (also defined in the Header) as the BSS segment. Slides 7-8 explains this better LOL

Program vs Process

Process is an instance of a Program.

Threads

js refer to slide 18 LOL

Process Scheduling

Round Robin vs Virtual Round Robin

Round Robin:

Round Robin only has 1 Queue

Virtual Round Robin:

Virtual Round Robin has 2 Queues, Ready and Auxiliary.