Operating System Structures, Services, and Processes

OS Structures

Monolithic

The first OS structure, built as a single program with subroutines linked together, allowing each routine to call any other.

Features:

  • Construction based on separately compiled modules joined by a linker.
  • No protections or privileges.
  • Fast and efficient execution and management.

Hierarchical

Divides the OS into autonomous parts with well-defined interfaces.

Features:

  • Processor planning.
  • Memory management (monolithic, caching, etc.).
  • Console/operator control.
  • Input/output management.
  • File/
Read More

Berkeley Software Distribution (BSD): A History

Berkeley Software Distribution (BSD)

What is BSD?

BSD stands for Berkeley Software Distribution and is used to identify an operating system derived from Unix. It originated from contributions made to Unix by the University of California at Berkeley.

History of BSD

Early Years and PDP-11

In the early years of Unix, its creators, Bell Labs of AT&T, authorized the University of California at Berkeley and other universities to use the source code and adapt it to their needs. During the 1970s and 1980s,

Read More

Understanding Database Types: Hierarchical, Network, and Relational

Database Types
There are three major models of databases: hierarchical, network, and relational.

Hierarchical Database

A hierarchical database uses a tree structure for the logical representation of data. Files are organized into hierarchies, with each corresponding to one of the entities of the database. Hierarchical trees are represented upside down, with the root at the top and the leaves at the bottom.

Characteristics of Hierarchical Databases:

  • File segments are arranged in a hierarchical tree.
  • Segments
Read More

Introduction to Operating Systems and Programming Languages

Software and Its Types

Software Features

  • Intangible
  • No deterioration or destruction
  • Developed through a process
  • Multiple copies with potential for bugs across all copies

System Software

System software consists of programs and applications that manage hardware components and lack a specific user-facing purpose. This layer abstracts away the complexities of direct hardware interaction.

Application Software

Application software comprises programs designed for specific user tasks, such as word processors.

Operating

Read More

Memory Management in Operating Systems: Techniques and Strategies

Memory Management in Operating Systems

Introduction

Memory management is crucial for efficient OS operation. It involves tracking memory usage and allocating space to processes. This document explores various memory management techniques and strategies.

Memory Types and Fragmentation

Two types of fragmentation can occur:

  • Internal Fragmentation: Due to the size difference between a memory partition and the resident object (static partitions).
  • External Fragmentation: Unused memory between partitions (dynamic
Read More

Cryptography Basics: Understanding Encryption, Attacks, and Security

Cryptography Basics

Introduction to Cryptography

Cryptography (from the Greek “krypto”, meaning “hidden”, and “graph”, meaning “writing”) is the practice of securing communication by converting plaintext into ciphertext. This process allows for the exchange of messages that can only be read by intended recipients who possess the means to decipher them.

Key Terminology

  • Plaintext: The original, unencrypted information.
  • Ciphertext: The encrypted information, unintelligible without decryption.
  • Encryption:
Read More