Memory Organization and Management in Computer Architecture

Characteristics of Memory

1. Location: Based on its physical location, memory is classified into three types:

  • On-Chip: This memory is present inside the CPU. E.g.: Internal Registers and L1 Cache.
  • Internal: This memory is present on the motherboard. E.g.: RAM.
  • External: This memory is connected to the motherboard. E.g.: Hard disk.

2. Storage Capacity: This indicates the amount of data stored in the memory. Ideally, it should be as large as possible. It is represented as N x M.

  • N = Number of memory locations
Read More

Understanding MLFQ Scheduling: A Deep Dive into Multilevel Feedback Queue Algorithm

What is MLFQ Scheduling?

MLFQ (Multilevel Feedback Queue) is a scheduling algorithm designed to address the challenge of optimizing both turnaround time and response time for jobs without prior knowledge of their execution lengths. It aims to provide a responsive system for interactive users while efficiently managing CPU-bound tasks.

How MLFQ Works

Multiple Priority Queues

MLFQ employs multiple queues, each assigned a different priority level. Higher priority queues contain jobs considered more important

Read More

Software Engineering: Attributes, Processes, and Requirements

Attributes of Good Software

  • Efficiency: Software should not waste system resources like memory and processor cycles.
  • Acceptability: Software should be understandable, usable, and compatible with other systems used by the target users.

Software Engineering Costs

  • Development costs: 60%
  • Testing costs: 40%
  • Evolution costs (for custom software) often exceed development costs.

Software Processes

Plan-Driven and Agile Processes

  • Plan-driven processes: All activities are planned in advance and progress is measured
Read More

Block Cipher Principles: Stream Ciphers, Feistel Cipher, DES, AES

Module 3 – Block Cipher Principles – Stream Ciphers and Block Ciphers, Feistel Cipher, Feistel Decryption algorithm, The Data Encryption Standard, DES Decryption – Avalanche effect, The AES Cipher, substitute bytes transformation, Shift row transformation, Mix Column Transformation

Stream Ciphers and Block Ciphers: A stream cipher encrypts a digital data stream one bit or one byte at a time. ★ Examples of classical stream ciphers are the auto keyed Vigenère cipher and the Vernam cipher. A block

Read More

Understanding the Intel 8086 Microprocessor: Architecture, Addressing Modes, and Interfacing

Intel 8086 System Bus Structure

The Intel 8086 microprocessor utilizes a system bus structure consisting of three primary buses:

  1. Address Bus: This unidirectional bus transmits addresses from the microprocessor to memory or I/O devices.
  2. Data Bus: This bidirectional bus carries data between the microprocessor and memory or I/O devices. The 8086 employs a 16-bit data bus, enabling 16-bit data transfers.
  3. Control Bus: This bus carries control signals that synchronize the microprocessor’s operation with other
Read More

Python Functions for 2048 Game Development

2048

def build_cells(dim: int) -> list[list[int]]:
cells = []
for i in range(dim):
cells.append([EMPTY] * dim)
return cells

def init(dim: int) -> dict:
assert dim is None or dim > 2, f’The minimum size is 3′
with open(FILE_CONFIG) as fconf:
conf = json.loads(fconf.read())

if dim is not None:
conf[‘dim’] = dim
else:
conf[‘dim’] = int(conf[‘dim’])
conf[‘max_score’] = int(conf[‘max_score’])

game = {
‘board’: build_cells(conf[‘dim’

Read More