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.
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 ratings0% 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.
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.