You are on page 1of 21

LECTURE - 4

SOFTWARE:
OPERATING SYSTEM AND
LANGUAGE

James A. O'Brien, and George Marakas


Management Information Systems
Chapter 4 Computer Software 2

Operating Systems
Definition
•An operating system is a program that acts as an interface between
the user and the computer hardware and controls the execution of all
kinds of programs.
Chapter 4 Computer Software 3

Important Functions of an Operating System

• Memory Management
• Processor Management
• Device Management
• File Management
• Security
• Control over system performance
• Job accounting
• Error detecting aids
• Coordination between other software and users
Chapter 4 Computer Software 4

Memory Management
• Keeps tracks of primary memory, i.e., what part of it are in
use by whom, what part are not in use.
• In multiprogramming, the OS decides which process will
get memory when and how much.
• Allocates the memory when a process requests it to do
so.
• De-allocates the memory when a process no longer
needs it or has been terminated.
Chapter 4 Computer Software 5

Processor Management
• Keeps tracks of processor and status of process. The program
responsible for this task is known as traffic controller.

• Allocates the processor (CPU) to a process.

• De-allocates processor when a process is no longer required.


Chapter 4 Computer Software 6

Device Management
• Keeps tracks of all devices. Program responsible for this
task is known as the I/O controller.

• Decides which process gets the device when and for how
much time.

• Allocates the device in the efficient way.

• De-allocates devices.
Chapter 4 Computer Software 7

File Management
• Keeps track of information, location, uses, status etc. The
collective facilities are often known as file system.

• Decides who gets the resources.

• Allocates the resources.

• De-allocates the resources.


Chapter 4 Computer Software 8

Other Important Activities of OS


• Security − By means of password and similar other
techniques, it prevents unauthorized access to programs and
data.
• Control over system performance − Recording delays
between request for a service and response from the system.
• Job accounting − Keeping track of time and resources used
by various jobs and users.
• Error detecting aids − Production of dumps, traces, error
messages, and other debugging and error detecting aids.
• Coordination between other softwares and users −
Coordination and assignment of compilers, interpreters,
assemblers and other software to the various users of the
computer systems.
Chapter 4 Computer Software 9

Core Basic Functions of Operating


System
Chapter 4 Computer Software 10

Popular Operating Systems


• Windows
• GUI, multitasking, networking, multimedia
• Microsoft’s operating system
• NT, XP, 2003
• Different versions manage servers
• Unix
• Multitasking, multi-user, network-managing
• Portable - can run on mainframes, midrange,
and PCs
• Linux
• Low-cost, powerful reliable Unix-like
operating system
• Open-source
• MAC OS X
• Apple operating system for the iMac
• GUI
• Multitasking
• Multimedia
Chapter 4 Computer Software 11

Programming Languages
Chapter 4 Computer Software 12

Programming Languages
• Examples of programming in each language
Chapter 4 Computer Software 13

Programming Languages
Chapter 4 Computer Software 14

Machine Languages
• First generation languages

• The most basic of programming languages


• Strings of binary codes unique to each computer
• Requires specific knowledge of the internal operations of the CPU
being used
• Must specify the storage locations for every instruction and item of
data used
• Difficult to work with, and error prone
Chapter 4 Computer Software 15

Assembler Languages
• Second generation languages

• Developed to reduce difficulties in writing machine language


programs
• Uses assemblers to convert the programs into machine instructions
• Symbols are used to represent operation codes and storage
locations
• Alphabetic abbreviations call mnemonics and other symbols
represent operation codes, storage locations, and data elements
Chapter 4 Computer Software 16

High-Level Languages
• Third generation languages

• Uses brief statements or arithmetic expressions


• Statements translated into machine language by compilers or
interpreters
• Less efficient than assembler languages and requires greater
translation time
• Machine independent
• Example: BASIC, COBOL, and FORTRAN, C, C++
Chapter 4 Computer Software 17

Fourth-Generation Languages
• Variety of programming languages that are nonprocedural
and conversational
• Encourages programmers to specify the results wanted; the computer
determines the sequence
of instructions that accomplishes the results
• Simplified the programming process
• Natural languages
• Very close to English or other human language
• Sometimes called fifth-generation (5GLs)
• No longer a trade-off between ease of use and flexibility
Chapter 4 Computer Software 18

Object-Oriented Languages
• Most widely used software development languages

• Easier to use and more efficient for graphics-oriented user


interfaces
• Reusable: can use an object from one application in another
application
• Example: Visual Basic, C++, Java
• Most object-oriented languages provide a GUI that supports visual
programming
Chapter 4 Computer Software 19

Web Languages
• HTML
• A page description language that creates hypertext documents for
the Web
• XML
• Describes Web page content by applying identifying tags or
contextual labels to the data
• Java
• Object-oriented programming language that is simple, secure, and
platform independent
• Java applets can be executed on any computer
Chapter 4 Computer Software 20

Language Translator Programs


• Translate instructions written in programming languages
into machine language
• Assembler
• Translates assembler language statement
• Compiler
• Translates high-level language statements
• Interpreter
• A compiler that translates and executes each statement in a
program, one at a time
Chapter 4 Computer Software 21

Questions
• Draw a diagram which links among Hardware, Software
and Users.
• What are the Important Functions of an Operating
System?
• What are the Popular Operating Systems – write their
features.
• Write the name of some High-level languages.

You might also like