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

IT6004 01 LectureNotes

Uploaded by

Ghadeer
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views

IT6004 01 LectureNotes

Uploaded by

Ghadeer
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 16

IT6004 – Unix Systems

Topic 1: Introduction to Unix

1
Learning Objectives
• Explain what an Operating System is
• Explain what Unix is and give an overview of
the evolution of the operating system
• Describe some differences between Windows
and Linux

2
Activity – Revision
In groups, answer the following questions:

• What is an Operating System?

• What does it do?

• Give examples of an Operating System other


than Windows and Unix/Linux
3
Unix
• What is Unix?
• An operating system
• Dates from the late 1960’s
• Multi-user operating system – more than one user
at a time

4
Unix Architecture / Software Layers

Diagram from: Operating Systems, 7th Edition, William Stallings


5
Activity - Unix Architecture
Explain each of the terms in the previous
diagram:
• Kernel
• Hardware
• System Call interface
• Unix Commands and Libaries
• User-written Applications
• Software Layer
6
Software Layers
A software layer makes REQUESTS to the layer below and
REPLIES to layers above.

Application Layer
-- The user interacts with this layer

Middle-Ware Layer
-- Connects application to hardware
REQUEST

REPLY Hardware Layer


-- Disk drives, video, memory ….

7
UNIX vs. WINDOWS vs. MAC
OS’es are examples of the “Middle-Ware Layer”
They connect the hardware to the applications

Application Layer

Middle-Ware Layer

Hardware Layer

8
The UNIX programming interfaces
• API : Application Program Interface
• Set of C header files (*.h files)
• math.h : defines
• data types : float, double …
• mathematical functions : cos(x), sqrt(x) …
• Set of various functions ( system calls ).
• int mkdir(const char *path, mode_t mode);

• UI/CLI : User Interface/Command line interface


• Set of utilities and a description of shell ( sh )
• mkdir [-p][-m mode] dir...
9
The Windows Programming Interfaces

• API : (WinAPI) Application Program Interface


• Large set of libraries, e.g.:
• kernel.exe :Error handling, process management
• advapi32.dll : Registry and user management:
• gdi.exe : Graphical support
• user.exe :Window, keyboard, mouse
controls:
• UI/CLI : User Interface/Command line interface
• Cmd.exe : Used for interactive commands
• md directory_name ( makedirectory // mkdir in Unix ) 10
Unix vs. Linux
• Linux is a free and open source version of Unix
written by Linus Torvalds and thousands of
volunteers
• We will be using the Amazon Linux 2
distribution of Linux in this course. The servers
we will use are hosted on AWS.

11
Unix/Linux GUI’s
( Graphical User Interfaces)
• Unix (and Linux) distributions often have a
windowing system like Microsoft Windows.
This is called a Graphical User Interface or
“Desktop Environment”.
• The Desktop Environment you will see is
nothing more than another piece of software
running on the OS
• Makes using the OS more user friendly
• Developers spend most time interacting with the
API/UI/CLI
12
Linux vs. Microsoft Windows
• Linux is very different from Microsoft Windows
• It can do anything that Windows can do
• Unix/Linux developers have created a large
collection of free software that is often better
than the Microsoft OS equivalent.

13
Activity – Application Software

In groups, find out what each of the following


pieces of software do and what OS’s they run
on:
Google_Earth Skype
Apache Emacs
Postgresql Libre Office
PHP Gimp
Gnome KDE

14
Linux vs. Microsoft Windows
Due to the way Linux (and Unix) is configured, it
is quite rare to get a virus for the OS
• Not many virus writers for Linux either
Linux is used in many situations:
• Desktop OS
• Server OS
• Mobile phone OS (Android is one example)
• Satellite receiver
15
Summary
• Unix/Linux are OS’s like Windows
• Unix/Linux are OpenSource/FreeWare
• Applications that run on Unix/linux are
generally OpenSource/FreeWare

16

You might also like