0% found this document useful (0 votes)
6 views8 pages

MODULE 3 Software

The document provides an overview of computer software, detailing types such as system software and application software, along with their functions and examples. It also covers virtualization and cloud computing, explaining key concepts, benefits, and service models. Additionally, it outlines data backup and recovery strategies, emphasizing the importance of regular backups, redundancy, and disaster recovery plans.

Uploaded by

b6184175
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views8 pages

MODULE 3 Software

The document provides an overview of computer software, detailing types such as system software and application software, along with their functions and examples. It also covers virtualization and cloud computing, explaining key concepts, benefits, and service models. Additionally, it outlines data backup and recovery strategies, emphasizing the importance of regular backups, redundancy, and disaster recovery plans.

Uploaded by

b6184175
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

MODULE 3: COMPUTER SOFTWARE

Software refers to a group/set of instructions that enables the hardware to function:-

Types of Software
 Systems software
 Applications software

Application Software
Software that directs the computer to perform a specific task.
Types
a) Spreadsheets - manipulate rows and columns of number e.g. Lotus 123, Ms Excel.
b) Word processing - creates documents e.g. Word star, Ms Word.
c) Database - stores, organizes and retrieves data e.g. MS Access
d) Electronic mail - transmit electronic messages e.g. Ms Outlook
e) Desktop publishing - layout and create documents containing text and graphics e.g. PageMaker.
f) Graphics - pictorial representation of data e.g. Harvard graphics, Ms Power point.

System Software
These are the programs that monitor and control the operations of a computer.
 They run the computer system by performing a variety of fundamental operating such as:-
 Booting the computer and making sure all the aspects are operational,
 Performing a variety of system utility functions.
 Process Management: - The operating system must keep track of all processes. It must schedule
programs when needed, and monitor them incase of any error.
 Resource management: - The operating system allocates system resources such as CPU, main
memory and the input and output devices such as disk and tape drives and printers.
 Data management: - Also called Input and output management. The operating system handles all
movements of data between the main components of the computer. Any time an input or output of
data occurs, a data management routine in the OS controls the transfer. For example, any time a
number input devices try to send data to a computer, it is the operating system to manage all these I/0
processes. Because I/0 devices are very slow, the process of spooling prevents the data from being
stored in the main storage. With spooling, a report is first written (saved) to the disk before being
printed. The disk or tape acts as a buffer area between main storage which is extremely fast and I/0
devices which are relatively slow.
 Monitoring system activities such as system performance and system security.
 Error Correction

The term operating system is used to mean a suit/collection of related computer programs that help
manage the computer resources. It is an interface between the computer hardware and application
programs.

Types of Operating Systems

Operating Systems can be classified by two criteria:-


 Whether or not they allow more than one user to use the computer at the same time.
 Whether or not they allow more than one program to run at the same time.
Single program/single user program
This allow only a single user to run a single program at one time e.g. MsDos.
Multiprogramming/Multitasking OS
Allow more than one program to be run at the same time. The CPU switches back and forth between
programs. E.g. the computer could be performing a complex spreadsheet calculation at the same time
downloading a file from another computer while the user is writing a memo.
Multiprogramming OS on PC’s can usually support a single user running multiple programs. On some
PCs and most mini and mainframe computers, the Multiprogramming/OS's can support more than one
user running more than one program.

Multiprocessing
Computers that have more than one CPU are called multiprocessors. A multiprocessing operating
system co-ordinates the operating of multiprocessor computer. They have an advantage that if one CPU
fails, work can be shifted to the remaining CPUs. The ability to continue processing when a major
component fails is called fault tolerance.

Popular Operating Systems


Many computer users move away from proprietary operating systems (privately owned) and toward
portable operating system that will run on many manufacturer computers.
1) Personal computer operating systems.
E.g. Dos, Operating System 2, MultiFinder (Macintosh) - uses icon and graphics instead of command
lime os2 and Dos. Win 95/98/ME/NT/2000/XP/Vista/7/8.
2) Minicomputer OS’s
e.g. - UNIX – Linux such as Fedora, ubuntu, CENTos, Redhat
- VMS for XAX (virtual address extension) computers
3) Mainframe Operating Systems
E.g. MVS - Specializes in batch processing.

Utilities and Service Programs


Utilities also called service programs are system programs that provide useful service to the computer
user by providing facilities for performing common tasks of a routine nature.
The common utility programs are:
- Sort - file maintenance
- Editors - tracing and debugging
- File copying - formatting disks and diskettes
- Dump - deletion, renaming etc.
Editing allow uses to make direct changes to programs and data.

Translators
These are the software that converts the source code/programs to their object code/program equivalence.
Types of translators
1) Assembler - A program that translates assembly language programs into machine code.
2) Compiler - A program that translates a high-level language program into machine oriented language
program, often machine code.
3) Interpreter - A program which translates and executes each source statement in logical sequence as
the program is executed. It looks at the program on a line to line basis.

Databases
Is a single organized collection of structured data stored within a minimum duplication of data items.
They are designed to efficiently store, manage, and retrieve data, providing structured and organized ways
to handle information.
A database is a structured collection of data that is organized and stored in a way that facilitates efficient
retrieval, management, and manipulation of that data.
Databases can store a wide range of information, from simple lists to complex, interconnected data. They
serve as repositories for data that can be accessed, modified, and queried by authorized users or
applications.

Key Components of a Database:


 Data: Databases contain data, which can be anything from customer information in an e-commerce
system to patient records in a healthcare database. Data in a database is organized into tables, each
containing rows and columns.
 Tables: Tables are fundamental to databases and represent the structure of the data. They consist of
rows (also known as records or tuples) and columns (also known as fields or attributes). Each row
represents a single data entry, while each column defines a specific attribute or piece of information.
 Schema: The schema defines the structure and organization of the database, including the tables,
columns, data types, relationships between tables, and constraints on the data.
 Queries: Databases allow users and applications to retrieve specific data or perform operations on the
data using queries. Queries are written using database query languages like SQL (Structured Query
Language).
 Indexes: Indexes are data structures used to optimize data retrieval by allowing the database
management system (DBMS) to quickly locate specific rows based on specific columns' values.

Types of Databases:
There are several types of databases, each designed for different purposes and use cases:
 Relational Databases: These databases use tables to store data, with each table representing a
specific entity (e.g., customers, orders) and relationships between entities. Examples include MySQL,
PostgreSQL, and Oracle Database.
 NoSQL Databases: NoSQL databases are designed for handling unstructured or semi-structured data
and are suitable for large-scale, distributed applications. They include document-oriented databases
(e.g., MongoDB), key-value stores (e.g., Redis), and graph databases (e.g., Neo4j).
 In-Memory Databases: These databases store data primarily in RAM (random-access memory) for
extremely fast data access and processing. Examples include Redis and Apache Ignite.
 Columnar Databases: Columnar databases store data in columns rather than rows, which is
optimized for analytics and reporting. Vertica and Google BigQuery are examples.
 Time-Series Databases: These databases are specialized for handling time-stamped data, making
them ideal for IoT (Internet of Things) applications and monitoring systems. InfluxDB and
Prometheus are examples.

Benefits of Databases:
 Data Integrity: Databases enforce data consistency and integrity through constraints, ensuring that
data is accurate and reliable.
 Data Security: Databases provide access control mechanisms to restrict unauthorized access to
sensitive data.
 Data Scalability: Databases can handle large volumes of data and can scale horizontally (adding
more servers) or vertically (upgrading hardware) to accommodate growth.
 Data Redundancy: By centralizing data, databases reduce data redundancy, making data
management more efficient and reducing the risk of inconsistencies.
 Data Retrieval: Databases provide efficient methods for retrieving and querying data, making it easy
to extract valuable insights.
INTRODUCTION TO VIRTUALIZATION AND CLOUD COMPUTING

Virtualization is a technology that enables the creation of multiple virtual instances or


environments on a single physical server or host. These virtual instances, often referred to as
virtual machines (VMs), are isolated from one another and function as independent systems,
each with its own operating system and applications.

Key concepts of virtualization include:


Hypervisor: A hypervisor is a software or hardware layer that manages and orchestrates
multiple Virtual Machines (VMs) on a physical host. There are two main types of hypervisors:
Type 1 (bare-metal) and Type 2 (hosted).
Virtual Machine: A virtual machine is a software emulation of a physical computer that runs an
operating system and applications. VMs share the host's physical resources, such as CPU,
memory, and storage.
Resource Allocation: Virtualization allows for efficient resource allocation, enabling dynamic
scaling of resources to meet the needs of applications and workloads.
Isolation: VMs are isolated from one another, providing security and fault tolerance. If one VM
fails, it does not affect the others.

Benefits of Virtualization:
 Server Consolidation: Multiple VMs can run on a single physical server, reducing hardware
costs and energy consumption.
 Resource Optimization: Resources can be allocated dynamically, optimizing CPU and
memory usage.
 Improved Disaster Recovery: VM snapshots and backups simplify disaster recovery
procedures.
 Testing and Development: Virtual environments are ideal for testing and development,
allowing for rapid provisioning of new instances.
 Legacy Application Support: Legacy applications can run in VMs, extending their lifespan.

Cloud Computing
Cloud computing is a paradigm that delivers on-demand computing resources and services over
the internet. It encompasses various service models, including Infrastructure as a Service (IaaS),
Platform as a Service (PaaS), and Software as a Service (SaaS).

Key concepts of cloud computing include:


Service Models:
 IaaS: Provides virtualized computing resources (e.g., virtual machines, storage, networking).
 PaaS: Offers a platform and development environment for building, deploying, and
managing applications.
 SaaS: Delivers software applications over the internet on a subscription basis.

Deployment Models:
Public Cloud: Services are provided by third-party cloud providers and accessible to the public.
Private Cloud: Cloud infrastructure is dedicated to a single organization, providing greater
control and security.
Hybrid Cloud: Combines public and private cloud resources, allowing data and applications to
be shared between them.
Scalability: Cloud services can scale up or down to accommodate changing workloads, ensuring
cost-effectiveness.

Benefits of Cloud Computing:


 Cost-Efficiency: Pay-as-you-go pricing models reduce upfront infrastructure costs.
 Scalability: Easily scale resources up or down based on demand.
 Flexibility: Access services and data from anywhere with an internet connection.
 Disaster Recovery: Cloud providers often offer robust disaster recovery options.
 Automatic Updates: Cloud providers handle software updates and maintenance.

Virtualization and Cloud Computing in Synergy:


Virtualization is a fundamental component of cloud computing. Cloud providers use
virtualization to create and manage the infrastructure that supports cloud services. Virtualization
enables resource pooling, multi-tenancy, and rapid provisioning, which are essential
characteristics of cloud computing.

DATA BACKUP AND RECOVERY STRATEGIES.


Data backup and recovery strategies are essential for safeguarding your data and ensuring business
continuity in the face of data loss, whether due to hardware failure, human error, or disasters.
Here are some key strategies and best practices for data backup and recovery:

1. Regular Backups:
Implement a regular backup schedule that suits your data's criticality and rate of change. Common
frequencies include daily, weekly, and monthly backups.
Ensure that all critical data, including databases, documents, configurations, and settings, are included in
your backup plan.

2. Redundancy:
Use redundant storage systems to create backup copies. Redundancy can be on-site or off-site.
On-site redundancy might include RAID configurations for local servers, while off-site redundancy can
involve storing backups in remote data centers or the cloud.

3. Data Encryption:
Encrypt your backups to protect sensitive data during storage and transit. Use strong encryption
algorithms and manage encryption keys securely.

4. Incremental and Differential Backups:


Consider using incremental and differential backup strategies to reduce backup times and storage
requirements.
Incremental backups only store changes made since the last backup, while differential backups store
changes since the last full backup.

5. Versioning:
Implement versioning to maintain multiple versions of files or data. This helps recover from accidental
data corruption or deletion.
Many backup solutions offer versioning as a feature, allowing you to restore to a specific point in time.
6. Automated Backup Solutions:
Use automated backup solutions to ensure consistency and reliability in your backup process.
Popular backup software includes Veeam, Acronis, and Backup Exec.

7. Off-Site Backups:
Store backups off-site to protect against physical disasters like fires, floods, or theft.
Cloud storage solutions like Amazon S3, Google Cloud Storage, and Microsoft Azure are excellent
choices for off-site backups.

8. Regular Testing:
Regularly test your backup and recovery process to ensure it works as expected. Verify that you can
restore data from backups successfully.
Document recovery procedures and provide training to IT staff.

9. Disaster Recovery Plan (DRP):


Develop a comprehensive disaster recovery plan that outlines steps to recover from various disaster
scenarios, including natural disasters, cyberattacks, and hardware failures.
Test your DRP periodically to ensure it aligns with your business's evolving needs.

10. Monitoring and Alerting:


Implement monitoring and alerting systems to notify you of backup failures or issues.
Proactive monitoring helps detect and resolve problems before they compromise data recovery.

11. Cloud-Based Disaster Recovery:


Consider cloud-based disaster recovery solutions that allow for rapid data restoration and failover to cloud
resources in case of a disaster.

12. Data Classification and Prioritization:


Classify your data based on its importance and sensitivity. Prioritize backup and recovery efforts
accordingly.
Critical data should have more frequent backups and stricter security measures.

13. User Education:


Educate employees about the importance of data backups and their role in the process.
Encourage best practices, such as saving files to network drives or cloud storage instead of local devices.

14. Data Loss Prevention (DLP):


Implement data loss prevention measures to prevent accidental data loss in the first place, such as
restricting access to sensitive data.

15. Regularly Update and Maintain Hardware:


Ensure that the hardware used for backup and recovery, such as servers and storage devices, is regularly
maintained and updated to prevent failures.

A well-planned data backup and recovery strategy can minimize downtime, protect against data loss, and
ensure business continuity in the face of unforeseen events. Regularly reviewing and updating your
strategy as your business evolves is essential to maintaining its effectiveness.

DATA RECOVERY
Data recovery is the process of retrieving lost or deleted data from storage devices. Data loss
can occur due to various reasons, including accidental deletion, hardware failure, software
issues, or even physical damage to the storage media.
Here are some common data recovery options and techniques:

1. Restore from Backup:


If you have a recent backup of your data, restoring from it is often the fastest and most
effective way to recover lost information.
Cloud backup services, external hard drives, or network-attached storage (NAS) devices can
be used for regular backups.
2. Data Recovery Software:
Data recovery software tools are available for various platforms (Windows, macOS, Linux)
and can help recover deleted or lost files.
Popular data recovery software includes Recuva, EaseUS Data Recovery Wizard, Disk Drill,
and TestDisk.
These tools can scan the storage device and attempt to retrieve lost data. However, success
depends on the extent of data corruption and overwriting.

3. Professional Data Recovery Services:


In cases of severe data loss, such as physical damage to a hard drive, it's best to consult
professional data recovery services.
These services have specialized equipment and cleanroom facilities to recover data from
physically damaged drives.
Be prepared for higher costs when using professional services, as the process can be complex
and time-consuming.

4. Check Recycle Bin (Windows) or Trash (macOS):


Sometimes, deleted files are moved to the Recycle Bin (Windows) or Trash (macOS) and can
be easily restored from there.

5. Previous Versions (Windows) or Time Machine (macOS):


Windows users can check for previous versions of files using the "Previous Versions" feature,
which may have snapshots of files taken at different points in time.
macOS users can use Time Machine to recover files from previous backups.

6. Command Line Tools:


For advanced users, command-line tools like "dd" (Unix/Linux) can be used to create disk
images, which can then be analyzed and potentially recover specific files.

7. Check Other Devices and Cloud Services:


Data might be accessible on other devices or cloud services if you have synchronized your
data. Check for duplicates or cloud backups.
8. Restore from Shadow Copies (Windows):
Windows systems with System Restore enabled may have shadow copies of files that can be
used for recovery.
9. Repair Disk Errors:
If data loss is due to disk errors, use disk repair and diagnostic tools to fix issues and attempt
recovery afterward.

10. Avoid Writing to the Affected Drive:


- When data loss occurs, avoid writing new data to the affected storage device to prevent
overwriting the lost data. Continued use can make recovery more challenging.

11. Data Recovery Live CD/DVD:


- Bootable data recovery CDs/DVDs or USB drives with specialized recovery tools can be
used to recover data from a malfunctioning operating system.

12. Check for File History (Windows) or Local Snapshots (macOS):


- Windows users can check if File History is enabled to restore previous versions of files.
- macOS users can look for local snapshots created by Time Machine.

13. Try Different Software Tools:


- If one data recovery tool doesn't yield satisfactory results, you can try different software
options. Each tool may have different success rates based on the specific data loss scenario.

The success of data recovery depends on several factors:-


 cause of data loss,
 the state of the storage device, and
 the timeliness of the recovery efforts.
It is crucial to act quickly to maximize the chances of successful data retrieval.

You might also like