memory and types of software and os.pptx

nikhilnangla45 3 views 41 slides Sep 16, 2025
Slide 1
Slide 1 of 41
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34
Slide 35
35
Slide 36
36
Slide 37
37
Slide 38
38
Slide 39
39
Slide 40
40
Slide 41
41

About This Presentation

Memory and types of software


Slide Content

Difference between Primary and Secondary Memory Primary memory is used to store actively used data and is very fast, but loses information when power is lost.  Secondary memory provides long-term storage for files and programs, retaining data safely, but it is slower than primary memory. Computer Memories store data and instructions. The memory system can be divided into 4 categories: CPU Register Cache Memory Primary / Main memory Secondary Memory / Mass Storage

 1. Primary / Main memory Primary memory is the computer memory that is directly accessible by CPU. It is comprised of  DRAM  and provides the actual working space to the processor. It holds the data and instructions that the processor is currently working on

Types of Primary Memory RAM (Random Access Memory):  Temporary storage for actively used data and instructions. It is volatile and lost when power is turned off. ROM (Read-Only Memory):  Non-volatile memory that stores firmware and essential instructions for booting the computer. The data is permanent and not lost when power is off.

Advantages of Primary Memory Speed  : Provides fast access to data and instructions. Direct Access  : Allows the CPU to quickly read from and write to memory. Disadvantages of Primary Memory Volatility  : Loses data when power is lost. Limited Size  : Generally smaller in capacity compared to secondary memory.

2. Secondary Memory / Mass Storage The contents of the secondary memory first get transferred to the primary memory and then are accessed by the processor, this is because the processor does not directly interact with the secondary memory. Now, Let's see the difference between Primary memory and Secondary memory.

Types of Secondary Memory Hard Disk Drive (HDD):  Magnetic storage device used for long-term data storage. It is slower than SSD but offers large capacity. Solid-State Drive (SSD):  Faster than HDD, uses flash memory for storage. More durable and energy-efficient but typically more expensive. Optical Discs (CD/DVD):  Store data using laser technology, commonly used for media storage and software distribution. USB Flash Drive:  Portable storage device using flash memory, widely used for transferring and storing data. External Hard Drive:  Similar to HDD, used for additional storage outside the computer, portable and used for backups. Tape Drive:  Magnetic storage device used mainly for backups; offers high capacity but slower access speed.

Advantages of Secondary Memory Persistence  : Retains data even without power. Large Capacity  : Typically offers much more storage space than primary memory. Disadvantages of Secondary Memory Speed  : Slower access compared to primary memory. Cost  : Generally more expensive than primary memory on a per-byte basis.

Difference Between Primary and Secondary Memory Primary memory Secondary memory The primary memory of a computer is the main memory that is utilized to store data temporarily. Secondary memory defines to additional storage devices that are utilized to store data permanently. Primary memory is temporary. Secondary memory is permanent. Primary memory is faster than secondary memory because it is directly accessible to the  CPU . Secondary memory is non-volatile, which means it retains data even when the power is off. Primary memory is directly accessible by Processor/CPU. Secondary memory is not directly accessible by the CPU. Nature of Parts of Primary memory varies, RAM- volatile in nature. ROM- Non-volatile. It's always Non-volatile in nature. Primary memory is volatile, which means it is wiped out when the computer is turned off. Since it is non-volatile, data can be retained in case of a power failure.

Primary memory devices are more expensive than secondary storage devices. Secondary memory devices are less expensive when compared to primary memory devices. The memory devices used for primary memory are semiconductor memories. The secondary memory devices are magnetic and optical memories. It can hold data/information currently being used by the processing unit. It can hold data/information that are not currently being used by the processing unit. The capacity of primary memory is usually within the range of 16 to 32 GB. It stores a considerable amount of data and information. The capacity of secondary memory ranges from 200 GB to some terabytes. Primary memory is also known as Main memory or Internal memory. Secondary memory is also known as External memory or Auxiliary memory. It can be accessed by a data bus. It can be accessed using I/O channels. Examples:  RAM ,  ROM , PROM,  EPROM  etc. Examples:  Hard Disk ,  Floppy Disk ,  Magnetic Tapes , etc.

What is an Operating System? An  Operating System  is a System software that manages all the resources of the computing device. Acts as an interface between the software and different parts of the computer or the computer hardware. Manages the overall resources and operations of the computer.  Controls and monitors the execution of all other programs that reside in the computer, which also includes application programs and other system software of the computer. Examples of Operating Systems are Windows, Linux, macOS, Android, iOS, etc

Functions of Operating System An Operating System acts as a communication interface between the user and the computer hardware. Its purpose is to provide a platform on which a user can execute programs conveniently and efficiently. The main goal of an operating system is to make the computer environment more convenient to use and to utilize resources most efficiently.

Functions of an Operating System

1. Process Management Process management in operating system is about managing processes. A  Process  is a running program. The life cycle of process is from the moment program start until it finishes. Operating system makes sure each process: gets its turn to use the CPU synchronized when needed has access to the resources it needs, like memory, files, and input/output devices. It also handles issues like process coordination and communication, while preventing conflicts such as  deadlocks . This way, the OS ensures smooth multitasking and efficient resource use.

Core Functions in Process Management: Process Scheduling Allocates CPU time to processes based on scheduling algorithms like  Round Robin  or  Priority Scheduling . Ensures fair distribution of CPU time, avoiding starvation of lower-priority processes. Maximizes CPU utilization by determining which process runs at any given time. Process Synchronization Coordinate multiple processes to ensure orderly execution and prevent conflicts. Prevents  race conditions  by ensuring that only one process can access a shared resource at a time. Uses synchronization mechanisms like  locks ,  semaphores , and  monitors  to coordinate process access.

Deadlock Handling Prevents deadlocks by using strategies like  resource allocation graphs  or avoiding circular wait conditions. Detects deadlocks when they occur, allowing the system to identify and resolve the issue. Recovers from deadlocks by aborting or rolling back processes to free up resources. Inter-Process Communication ( IPC ): Facilitates communication between processes through shared memory, allowing processes to exchange data directly. Uses message passing to send data between processes in different address spaces. Enables efficient data exchange and coordination in a multitasking environment, improving system performance.

2. Memory Management Memory management is an essential task of the operating system that handles the storage and organization of data in both  main (primary) memory  and  secondary storage . The OS ensures that memory is allocated and deallocated properly to keep programs running smoothly. It also manages the interaction between volatile main memory and non-volatile secondary storage

Key Activities in Memory Management: Main Memory Management Memory Allocation:  Assigns memory to processes using techniques like  paging  and  segmentation . Memory Deallocation:  Frees memory when no longer needed. Memory Protection:  Prevents processes from accessing each other’s memory. Virtual Memory:  Uses disk space as extra memory to run larger processes. Fragmentation:  Manages wasted memory space (internal/external) through  compaction . Secondary Memory Management Disk Space Allocation:  Organizes how files are stored on the disk ( contiguous, linked, indexed ). File System Management:  Manages files and directories for efficient data access. Free Space Management:  Tracks available space on the disk. Disk Scheduling:  Organizes the order of disk read/write requests. Backup and Recovery:  Ensures data is backed up and can be restored after failure.

3. File System Management File management in the operating system ensures the organized storage, access and control of files. The OS abstracts the physical storage details to present a logical view of files, making it easier for users to work with data. It manages how files are stored on different types of storage devices (like hard drives or SSDs) and ensures smooth access through directories and permissions.

File System Management includes managing of: File Attributes File Name:  Identifies the file with a name and extension (e.g., .txt, .jpg). File Type:  Defines the format of the file (e.g., text, image, executable). Size:  The amount of storage the file occupies. Permissions:  Determines who can read, write, or execute the file. File Types Text Files:  Contain human-readable content (e.g., .txt, .md). Binary Files:  Store data in binary format (e.g., .jpg, .mp3). Executable Files:  Contain program code (e.g., .exe, .out).

Operations on Files Create:  Allows users to create new files. Read:  Opens files to read their contents. Write:  Modifies the contents of a file. Delete:  Removes a file from the system. Access Methods Sequential Access:  Reads data in order, from start to finish. Direct Access:  Jumps to a specific part of the file. Indexed Access:  Uses an index for quick data retrieval.

4. Device Management (I/O System) Device management of an operating system handles the communication between the system and its hardware devices, like printers, disks or network interfaces. The OS provides device drivers to control these devices, using techniques like Direct Memory Access ( DMA ) for efficient data transfer and strategies like buffering and  spooling  to ensure smooth operation.

Major components in Device Management: Device Drivers:  The operating system uses  device drivers   to interact with hardware devices. There are two types of device drivers: Kernel-space drivers  run in the OS kernel, offering direct access to hardware. User-space drivers  run outside the kernel and are more isolated, providing safety but less performance. Buffering & Caching: Buffering  temporarily stores data in memory to manage differences in device speeds. Block devices (e.g., hard drives) use larger blocks of data for buffering, while character device s  (e.g., keyboards, mice) use smaller, byte-by-byte buffering. Caching  improves access speed by storing frequently accessed data in a faster storage medium (like  RAM ). Spooling:  Spooling  manages data waiting to be processed, particularly in devices like printers. The OS places print jobs in a spool (a temporary storage area), allowing the CPU to continue other tasks while the printer works through the queue. Other examples include mail spooling (for managing outgoing email) and batch-job spooling (for managing scheduled tasks).

5. Protection and Security Protection and security  mechanisms in an operating system are designed to safeguard system resources from unauthorized access or misuse. These mechanisms control which processes or users can access specific resources (such as memory, files, and CPU time) and ensure that only authorized users can perform specific actions. While protection ensures proper access control, security focuses on defending the system against external and internal attacks.

Access Control:  The operating system ensures that processes and users can only access resources they are authorized to. This is achieved through mechanisms like memory-addressing hardware (which keeps processes within their own address space) and timer interrupts (which prevent processes from monopolizing the CPU). User Authentication:  A system identifies users through user IDs (UIDs) or Security IDs (SIDs). During login, the operating system verifies the user’s credentials, ensuring that only authorized users can access their data or system resources. Resource Protection:  Mechanisms like file protection (ensuring only authorized users can access or modify files) and device protection (restricting direct access to device-control registers) ensure the integrity of system resources, preventing unauthorized or harmful use. Security Against Attacks:  Security mechanisms defend against external threats like viruses, worms, denial-of-service attacks, and identity theft. These attacks can misuse system resources, steal sensitive data, or disrupt system operation. The OS works to prevent these threats and minimize damage.

Types of Software The chart below describes the types of software:

System Software Operating System (like Windows and Linux) Language Processor Device Driver Application Software General Purpose Software Customize Software Utility Softwa

System Software System software  is software that directly operates the  computer hardware  and provides the basic functionality to the users as well as to the other software to operate smoothly. System software basically controls a computer’s internal functioning and also controls hardware devices such as monitors, printers, and storage devices, etc. It is like an interface between hardware and user applications, it helps them to communicate with each other because hardware understands machine language(i.e. 1 or 0) whereas user applications are work in human-readable languages like English, Hindi, German, etc.

Types of System Software It has two subtypes, which are: Operating System:  It is the main program of a computer system. When the computer system ON it is the first software that loads into the computer's memory. Basically, it manages all the resources such as  computer memory ,  CPU ,  printer , hard disk, etc., and provides an interface to the user, which helps the user to interact with the computer system. Language Processor:  As we know that system software converts the human-readable language into a machine language and vice versa. So, the conversion is done by the language processor. It converts programs written in high-level  programming languages  like  Java ,  C ,  C++ ,  Python , etc (known as source code), into sets of instructions that are easily readable by machines(known as object code or machine code). Device Driver:  A  device driver  is a program or software that controls a device and helps that device to perform its functions. Every device like a printer, mouse,  modem , etc. needs a driver to connect with the computer system eternally. So, when you connect a new device with your computer system, first you need to install the driver of that device so that your operating system knows how to control or manage that d

Features of System Software closer to the computer system. Written in a low-level language in general. Difficult to design and understand. Fast in speed(working speed). Less interactive for the users in comparison to application software.

Types of Application Software There are different types of application software and those are: General Purpose Software:  This type of application software is used for a variety of tasks and it is not limited to performing a specific task only. For example, MS-Word, MS-Excel, PowerPoint, etc. Customized Software:  This type of application software is used or designed to perform specific tasks or functions or designed for specific organizations. For example,  railway reservation system , airline reservation system, invoice management system, etc. Utility Software:  This type of application software is used to support the computer infrastructure. It is designed to analyze, configure, optimize and maintains the system, and take care of its requirements as well. For example,  antivirus , disk fragmenter , memory tester, disk repair, disk cleaners, registry cleaners, disk space analyzer, etc.

Features of Application Software Let us discuss some of the features of Application Software: Perform more specialized tasks like word processing, spreadsheets,  email , etc. Mostly, the size of the software is big, so it requires more storage space. More interactive for the users, so it is easy to use and design. Easy to design and understand. Written in a high-level language in general.