<<

BCA Semester: III Session-01 Introduction, System software and machine architecture

Introduction A is an electronic device that manipulates information, or . It has the ability to store, retrieve, and process data. Two things all have in common: hardware and software. • Hardware is any part of your computer that has a physical structure, such as the keyboard or mouse. It also includes all of the computer's internal parts. • Software is any set of instructions that tells the hardware what to do and how to do it. Examples of software include web browsers, games, and word processors. • Types of Software There are two main types of software :system software and .

Application software: is a software that performs specific tasks for an end-user. Ex: word processors, spreadsheets, management, inventory and payroll programs, and many other “applications.”

▪ System Software is a software designed to run a computer's hardware and application programs. Ex: , File Management Program, Device Drivers etc.,

System Software System Software is a software designed to run a computer's hardware and application programs. • The trait in which system software varies from application software is machine reliance. • An application program is used to solve some problem or to perform a particular task for an end-user, by means of the computer as a tool. • System programs alternatively are projected to assist the operation and utilization of the computer itself, instead of any specific application. Therefore, they are typically connected to the architecture of the machine on which they are executed.

Fig 1. Relation between hardware, software and user

DIGITAL LEARNING - DCE KUVEMPU UNIVERSITY 1

BCA Semester: III System Software

Features The features of System Software are:

▪ System Software is closer to the system ▪ Generally written in a low-level language ▪ The system software is difficult to design and understand ▪ Fast in speed ▪ Less interactive ▪ Smaller in size ▪ Hard to manipulate

Types

The important types of System Software are: ▪ Operating : - Operating system software helps you for the effective utilization of all hardware and software components of a computer system. The most important tasks performed by the operating system are: o Memory Management: The OS keeps track of the primary memory and allocates the memory when a process requests it. o Processor Management: Allocates the main memory (RAM) to a process and de-allocates it when it is no longer required.

o File Management: Allocates and de-allocates the resources and decides who gets the resources. o Security: Prevents unauthorized access to programs and data by means of passwords. o Error-detecting Aids: Production of dumps, traces, error messages, and other and error-detecting methods. o Scheduling: The OS schedules process through its scheduling algorithms.

▪ Device Drivers: It is a type of software that controls particular hardware which is attached to the system. Some examples of device drivers are:

o BIOS Driver o Display Drivers o Motherboard Drivers o Printer Drivers o ROM Drivers o Sound card Driver o USB Drivers

▪ Firmware: Firmware is the permanent software that is embedded into a read-only memory. It is a set of instructions permanently stored on a hardware device. It provides essential information regarding how the device interacts with other hardware. Firmware can be considered as

DIGITAL LEARNING - DCE KUVEMPU UNIVERSITY 2

BCA Semester: III System Software ‘semi-permanent’ as it remains permanent unless it is updated using a firmware updater. Some examples of firmware are:

o BIOS o Computer Peripherals o Consumer Applications o Embedded Systems o UEFI

▪ Programming language translators: - Transforms the instructions prepared by developers in a programming language into a form that can be interpreted or compiled and executed by a computer system. o Compiler: A compiler is a software that translates the code written in one language to some other language without changing the meaning of the program. A compiler performs almost all of the following operations during compilation: preprocessing, lexical analysis, parsing, semantic analysis (syntax-directed translation), conversion of input programs to an intermediate representation, code optimization and code generation. Examples of compiler may include gcc(C compiler), g++ (C++ Compiler ), javac (Java Compiler) etc. o Interpreter: An interpreter is a that directly executes, i.e. it performs instructions written in a programming or scripting language. Examples may include Ruby, Python, PHP etc. o Assembler: An assembler is a program that converts assembly language into machine code. Assemblers produce executable code that similar to compilers. However, assemblers are more simplistic since they only convert low- level code (assembly language) to machine code.

▪ Utility Software: - is a software designed to help to analyze, configure, optimize or maintain a computer.

Examples and features of utility software include: o Antivirus and security software for the security of files and applications, e.g., Malwarebytes, Microsoft Security Essentials, and AVG. o File Compression to optimize disk space such as WinRAR, Winzip, and 7-Zip. o Data recovery to help get back lost data. Examples include iCare Data Recovery, Recuva, and EaseUs Data Recovery Wizard. o Firewall for protection against external threats, e.g., Windows Firewall.

DIGITAL LEARNING - DCE KUVEMPU UNIVERSITY 3

BCA Semester: III System Software Machine architecture:

1. Memory: Memory consists of 8 bit-bytes and the memory size is 1 megabytes (220 bytes). Standard SIC memory size is very small. This change in the memory size leads to change in the instruction formats as well as addressing modes. 3 consecutive bytes form a word (24 bits) in SIC/XE architecture. All address are byte addresses and words are addressed by the location of their lowest numbered byte.

2. Registers:

It contain 9 registers (5 SIC registers + 4 additional registers). Four additional registers are:

3. Data Formats:

• Integers are represented by Binary numbers.

• Characters are represented using ASCII codes.

• Floating points are represented using 48-bits. 4. Instruction formats: • In SIC/XE architecture there are 4 types of formats available The Bit(e) is used to distinguish between Formats 3 and Formats 4

Reference:

System Programming by Johan Donovan

DIGITAL LEARNING - DCE KUVEMPU UNIVERSITY 4