0% found this document useful (0 votes)
11 views

Chapter 04. Part 2

Uploaded by

leen --
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)
11 views

Chapter 04. Part 2

Uploaded by

leen --
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/ 32

Chapter 4 Software

Part 2 System Software


Outline
• Computer Language
• Programming Tools
• System Software
• How the Operating System work
• User Interfaces
• Future trends

2
Types of Software
Desktop Apps

Applications Web Apps

Mobile Apps
Software

Operating Systems
System Software
Utility Software

3
Machine Language
• Every computer processes instructions
in machine language.

 Numeric codes are used to represent basic operations:

➢Adding and subtracting numbers


➢Comparing numbers
➢Moving numbers
➢Repeating instructions

• Is this a practical language that we can use to


create software?

4
Creating Software
• Why can’t we use human languages for programming?
o Ambiguity→ Can mean different things in different contexts
o Lack of details → Context dependent

For instance, if we give the below command to the computer:


“Get the input from the user and store it”
What do you think would happen?

 “Input” is ambiguous to the computer


 It can mean text, number, audio, etc..
 The command lacks details
 From where to get the input? Keyboard, microphone, touch
screen, etc..
 Where to store it? Main memory, hard disk, etc..

5
Algorithms
• Algorithms are a unified common language that can be
understood by all programmers.
• Programmers convert algorithms to software using different
programming languages.

• Example of Algorithms:

6
Programming Languages
• Low Level Languages
 Machine Languages
 Lang. of 0s and 1s
 Assembly Languages
 Very Basic Instructions

• High Level Languages


 C++, java, VB, Python, etc..

7
Programming

• Programmers/Developers
 People who write software using a programming language

• Programmers use high-level languages such as:


 C++, Java, and Python

• Use Compilers to build and compile code


 Detecting and correcting errors → Debugging
 Convert from High-level to low level code
 E.g. Visual Studio, Eclipse, etc…

8
Why Programming?
Why Programming Is Important (YouTube Link)

 Expands your thinking skills


 Makes you more productive and efficient
 It is useful, e.g. write a small script to automate tasks
on your computer
 It is fun

9
What is System Software?
• System software is a type of computer program that is
designed to run a computer's hardware and application
programs.
• It is the interface between the hardware and user
applications.
• It includes the operating system and utility programs.

Link between
Application
Software and
hardware

10
11
Operating System

• Is the program that, after being initially


loaded into the computer by a boot
program, manages all the other programs
in a computer.
• It has multiple functions:
 Memory Management
 File Management
 CPU Management
 Security
 And more.

12
13
How does the Computer Start
• Some Computing devices have full OS in ROM
• Others have only a part in ROM and the core in
the Hard Drive
• Booting Process
 Loads OS from the Hard Drive into memory (RAM)

ROM Booting
Switch on Loads OS from
Program
Computer HD to RAM
Starts

14
After OS is loaded what next?

OS loads Word
Windows (OS) User selects (Application
controls screen MS Word Program)

OS controls Word Process Word controls


screen ends screen

15
16
Operating Systems
• Microsoft OS Family
 Microsoft Windows 10: Introduced in 2015. Popular for
desktop/laptop computers
 Microsoft Windows Server: Runs on small servers to the mightiest
hardware
 Windows Embedded: Designed for devices such as robots, voting
machines, music players, etc.
 Windows 10 Mobile: OS for mobile phones

17
Operating Systems
• Mac OS X:
 Standard for the Mac

• Unix OS
 Used by Internet servers
 Enables timesharing: computers
can communicate with several other
computers at one time
 Menus like windows also exist

• Linux OS
 Open source
 Have multiple spinoff OS

18
Operating Systems
• Apple iOS: Used for iPhone, iPad, and iPod
 Was introduced with the introduction of iPhone in 2007, it
revolutionized the smartphone market

• Google Android: Designed for smart phones


 Android OS, developed by Google followed suit to lead in the
smartphone OS market

• Chrome OS (web-based OS): Designed by Google to work


with Google Web Apps. Based on Linux.

19
Utility Programs
• Is system software designed to help analyze,
configure, optimize or maintain a computer.
• Some are included with the OS while others
are stand-alone applications.
• Examples:
 Copy files
 Compress files (eg: zip)
 Virus protection
 Disk Cleanup
 Backup

20
Utility Programs

21
Device Drivers
• Small Programs that enable communication with
devices

 Keyboard
 Printers
 Flash memory
 etc..

• Most OS’s try to recognize and install the correct


driver, this is called Plug and Play
• If OS can’t find driver, it is downloaded from the
internet

22
User Interface
• Operating System behind the scenes most of the time.

23
User Interface
• For the user to interact with the computer
system
 It should be simple, effective and user friendly

• Types of user interfaces:


 Old interfaces:
 Command Line
 Menu Driven

 Current interfaces:
 WIMP (Windows, Icons, Menus, Pointing devices)
 SILK (Speech, Image, Language, Knowledge)

24
Old Interfaces
• Command Line Interface
 Limited only to text commands

• Menu Driven Interface


 Use keyboard to open menus
 Supports shortcuts

25
WIMP Interfaces
(Windows, Icons, Menus, Pointing devices)

• Graphical User Interfaces (GUI)

 Sample Mac Interface


http://www.macintouch.com/specialreports/lion/img/aqua/aqua107b_large.jpg

26
GUI features
• Menu Based

• Submenus

• Pop up Menus

• Context sensitive menus (Right Click)


 Task Bar
 Any Icon
 Start Menu

27
GUI features

• Tiles on the Start Screen

• Windows Icon Shortcuts

• Mac Icon Dock

28
SILK Interfaces
(Speech, Image, Language, Knowledge)

• Gesture Based Interfaces:


 A gesture is a form of non-verbal communication in which
visible bodily actions communicate particular messages.
 A simple gesture recognition algorithm can detect hand
location and movement

• Examples:
 Smartphone, tablets touch screens
 XBOX – Kinect uses multiple cameras to detect motion
 Nintendo – Wii uses controllers to detect gestures

29
SILK Interfaces
• Virtual Reality
 An interactive computer-generated experience within a
simulated environment. It is mainly auditory and visual
feedback, but may allow sensory feedback like haptic.

• Augmented Reality
 A live view of a physical, real-world environment whose
elements are augmented/supplemented by computer-
generated sensory input such as sound, video, graphics and
more recently even smell!
 E.g. Ikea Catalog App, Pokémon Go

30
SILK Interfaces

• Mixed Reality
(3D Interactive Holograms)
 A live presentation of physical real-world
elements is incorporated with that of virtual
elements such that they are perceived to
exist together in a shared environment.

• Voice Commands:
 It uses speech recognition algorithms
 Can recognize multiple languages and tones
 E.g. Siri, S Voice, Cortana virtual assistant

31
The Digital Future: Metaverse

32

You might also like