0% found this document useful (0 votes)
30 views10 pages

Lecture 2 A

The document provides an overview of systems software, including operating systems and compilers, which are essential for running computer hardware and applications. It discusses high-level programming languages and their advantages, as well as various types of application software such as engineering software, embedded software, and artificial intelligence software. The content emphasizes the role of software in enhancing productivity and enabling specific functionalities across different platforms.

Uploaded by

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

Lecture 2 A

The document provides an overview of systems software, including operating systems and compilers, which are essential for running computer hardware and applications. It discusses high-level programming languages and their advantages, as well as various types of application software such as engineering software, embedded software, and artificial intelligence software. The content emphasizes the role of software in enhancing productivity and enabling specific functionalities across different platforms.

Uploaded by

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

Advanced

Computer Architecture
Lecture 2
HW and SW Overview

 Systems software: It is a type of program that is designed to run a computer


hardware and application program. Software that provides services that are
commonly useful, including operating systems, compilers, loaders, and
assemblers. There are many types of systems software, but two types of systems
software are central to every computer system today:
◦ Operating system: interfaces between a user’s program and the hardware and
provides a variety of services and supervisory functions. Among the most
important functions are
 Handling basic input and output operations
 Allocating storage and memory
 Providing services for protected sharing of the computer among multiple
applications using it simultaneously.
◦ Examples of operating systems in use today are Linux, MacOS, and Windows
From HLL to HW language

◦ Compiler: A program that translates high-level language


statements into assembly language Statements
◦ Assembler: A program that translates a symbolic version of
instructions into the binary version.
A simplified view of hardware and software
FIGURE :C program compiled into assembly language and then assembled into
binary machine language.
HLL
 High-level programming language: A portable language
such as C, C++, Java, or Visual Basic that is composed of
words and algebraic notation that can be translated by a
compiler into assembly language.
 Advantages:
◦ They allow the programmer to think in a more natural language,
using English words and algebraic notation e.g. Fortran was designed
for scientific computation, Cobol for business data processing
◦ The second advantage of programming languages is improved
programmer productivity
◦ The final advantage is that programming languages allow programs
to be independent of the computer on which they were developed
 Application Software: consists of programs designed to
perform specific tasks for users. It can be used as a
productivity or business tool. It also includes such as
Database program, web Browsers etc.
◦ Engineering/scientific software — Scientific and engineering
software satisfies the needs of a scientific or engineering user to
perform enterprise-specific tasks. Developers of scientific software
range from scientists who do not possess any software engineering
knowledge to experienced professional software developers with
considerable software engineering knowledge.
◦ Embedded software— Resides within a product or system and is
used to implement and control features and functions for the end user
and for the system itself. Embedded software can perform limited
and esoteric functions (e.g., key pad control for a microwave oven)
or provide significant function and control capability (e.g., digital
functions in an automobile such as fuel control, dashboard displays,
and braking systems).
◦ Product-line software —designed to provide a specific capability
for use by many different customers. Product-line software can focus
on a limited and esoteric market place (e.g., inventory control
products) or address mass consumer.
◦ Web/Mobile applications — applications for mobile devices that
require only a Web browser to be installed on the device. ... Mobile
Web applications differ from mobile native applications, in that they
use Web technologies and are not limited to the underlying platform
for deployment e.g. Snapchat, Instagram
◦ Artificial intelligence software— “Software that is capable of
intelligent behavior.”
◦ makes use of algorithms to solve complex problems that are not
amenable to computation or straight forward analysis. Applications
within this area include robotics, expert systems, pattern recognition
(image and voice), artificial neural networks, theorem proving, and
game playing.

You might also like