UNIX/Linux Fundamentals – Lecture 1 Md Modasshir.

Slides:



Advertisements
Similar presentations
UNIX Tools 2006 – Lecture 1 Jeffrey Korn Ernest Lee.
Advertisements

Chapter One The Essence of UNIX.
Chapter One Introduction to Unix1 System Programming Introduction to Unix.
Matrix Reloaded. CSE – Lecture 1 Pat O'Keefe.
Operating Systems: Software in the Background
CS 497C – Introduction to UNIX Lecture 2: Work with Files and Directories Chin-Chih Chang
Cartoon from 1993.
Operating Systems - Introduction S H Srinivasan
CS 497C – Introduction to UNIX Lecture 3: Inside UNIX Chin-Chih Chang
Guide To UNIX Using Linux Third Edition
Xuan Guo Chapter 1 What is UNIX? Graham Glass and King Ables, UNIX for Programmers and Users, Third Edition, Pearson Prentice Hall, 2003 Original Notes.
Operating Systems.
Basic Unix Dr Tim Cutts Team Leader Systems Support Group Infrastructure Management Team.
Linux Operating system
Unix Presentation. What is an Operating System An operating system (OS) is a program that allows you to interact with the computer -- all of the software.
The University of Akron Summit College Business Technology Department Computer Information Systems 2440: 145 Operating Systems Introduction to UNIX/Linux.
What is Unix Prepared by Dr. Bahjat Qazzaz. What is Unix UNIX is a computer operating system. An operating system is the program that – controls all the.
LINUX System Administration
CST334 Unix & X Window System
Introduction A computer system consists of hardware system programs application programs.
Overview of Linux CS3530 Spring 2014 Dr. José M. Garrido Department of Computer Science.
Operating Systems CS3502 Fall 2014 Dr. Jose M. Garrido
LINUX System : Lecture 2 OS and UNIX summary Bong-Soo Sohn Assistant Professor School of Computer Science and Engineering Chung-Ang University Acknowledgement.
Module 1 Introduction to UNIX/Linux
Chapter 1: Welcome to Linux An intro to UNIX-related operating systems.
Unix Background. Introducing Unix Brief Unix History u In 1969, Ken Thompson at AT&T Bell Labs began developing Unix. –First done in assembly language.
1 © 2001 John Urrutia. All rights reserved. Welcome to CIS 52 WELCOME WELCOME W E L C O M E.
Second edition Your UNIX: The Ultimate Guide Das © 2006 The McGraw-Hill Companies, Inc. All rights reserved. The Operating System Allocates memory for.
Natawut NupairojAssembly Language1 Unix Survival Guide.
CS 390 Unix Programming Summer Unix Programming - CS 3902 Course Details Online Information Please check.
CS 390 Unix Programming Environment Summer Suchindra Rengan - CS3902 Course Details Instructors Suchindra Rengan – ‘sachin’ ( Section 001)
© Janice Regan, CMPT 300, May CMPT 300 Introduction to Operating Systems Operating Systems Overview Part 2: History (continued)
Operating System What is an Operating System? A program that acts as an intermediary between a user of a computer and the computer hardware. An operating.
F PRESENTED BY YAN FENG F STUDENT ID: F Instructor: Professor Morteza Anvari F DATE: 03/17/2001.
Computers & Operating Systems
Just Enough Unix, Chapter 1
CS2204: Introduction to Unix January 19 th, 2004 Class Meeting 1 * Notes adapted by Christian Allgood from previous work by other members of the CS faculty.
UNICOS. When it comes to solving real-world problems, leading-edge hardware is only part of the solution. A complete solution also requires a powerful.
1 Lecture 1 Introduction & Getting Started COP 3353 Introduction to UNIX.
Berkeley Software Distribution
UNIX Unit 1- Architecture of Unix - By Pratima.
CSCI 330 UNIX and Network Programming Unit I Introduction.
The UNIX Time-sharing system
Introduction 1 Chapter 1. Introduction History and Proliferation Mandate for Change What’s Good and Wrong Scope of this course.
Basic UNIX Concepts. Why We Need an Operating System (OS) OS interacts with hardware and manages programs. A safe environment for programs to run is required.
Linux History C151 Multi-User Operating Systems. Open Source Programming Open source programming: 1983, Richard Stallman started the GNU Project (GNU.
Introduction to UNIX Karl Harrison September 2004.
Chapter 9: Networking with Unix and Linux. Objectives: Describe the origins and history of the UNIX operating system Identify similarities and differences.
Introduction to UNIX CS 2204 Class meeting 1 *Notes by Doug Bowman and other members of the CS faculty at Virginia Tech. Copyright
Introduction to UNIX CS465. What is UNIX? (1) UNIX is an Operating System (OS). An operating system is a control program that allocates the computer's.
Chapter 1 Basic Concepts of Operating Systems Introduction Software A program is a sequence of instructions that enables the computer to carry.
Silberschatz, Galvin and Gagne ©2011 Operating System Concepts Essentials – 8 th Edition Chapter 2: The Linux System Part 1.
Agenda UNX122_022_w1_p3 Overview of UNIX
CEG 2400 FALL 2012 Linux/UNIX Network Operating Systems.
WHY AN OPERATING SYSTEM (OS) OS interacts with hardware and manages programs. Programs not expected to know which hardware they will run on. Must be possible.
OPS224 Operating Systems - Unix Instructor: MURRAY SAUL.
Computer Center | Network Group IISER Bhopal Introduction to Basic Component of Computer System Vinay Bajpai iiserb.ac.in Computer Center Indian.
UNIX and SOFTWARE TOOLS Dr. Tran, Van Hoai Faculty of Computer Science and Engineering HCMC Uni. of Technology
UDel CISC361 Study Operating System principles - processes, threads - scheduling - mutual exclusion - synchronization - deadlocks - memory management -
Overview of Linux Fall 2016 Dr. Donghyun Kim
A LECTURE NOTE.
Karl Harrison September 2004
Operating System & Application Software
IT244 - Introduction to Linux / Unix Instructor: Bo Sheng
Welcome to CIS 52 WELCOME WELCOME WELCOME W E L C O M E.
CASE STUDY 1: Linux and Android
Chapter 2: The Linux System Part 1
Copyright ©2008 by Pearson Education, Inc
Consult America Technology Consulting Services
Presentation transcript:

UNIX/Linux Fundamentals – Lecture 1 Md Modasshir

What will we cover? Operating system overview UNIX commands, shell & process mgt. Scripting languages Programming tools Various text editors X11 & KDE windows env Basic C/C++ programming and other applications (emacs, gcc-g++, gzip, tar, …)

Schedule Lectures –Monday through Friday 08:30 – 10:50am Quizzes taken at the end of lecture/beginning of 2 nd class Final: Saturday May 14 th. Project due May 14 05:00 pm.

Books USC Bookstore

Other helpful resources

Who cares, how do I get an A? 4 Assignments: 40% 1 Project: 20% 4 Quizzes: 20% Final: 20%

Cheating Don’t

Cheating Don’t Seriously, don’t

Individual Effort Assignments and quizzes are open book, open notes, open computer/internet! This is a hands on course designed to familiarize YOU with the unix/linux environment. You will need these skills in future classes. Cheat and pay the price later. Why not learn this stuff now?

Our Heroes Ken ThompsonDennis Ritchie

Video Games Spark Innovation Space Pilot PDP-7

In the Beginning UNICS: 1969 – PDP-7 minicomputer PDP-7 goes away, rewritten on PDP-11 to “help patent lawyers” V1: 1971 V3: 1973 (pipes, C language) V6: 1976 (rewritten in C, base for BSD) V7: 1979 (Licensed, portable) PDP-11

Derivative Systems PWB, MERT BSD: Adds many important features (networking, job control). AT&T enters the computer business with System III, V

Commercial Success AIX SunOS, Solaris Ultrix, Digital Unix HP-UX Irix UnixWare -> Novell -> SCO -> Caldera ->SCO Xenix: -> SCO Standardization (Posix, X/Open)

Standards and Wars 1998: POSIX Standard Unix International vs. Open Software Foundation (to compete with desktop PCs) Battle of the Window Managers Openlook Motif

Commercial Backlash Not everyone was happy with proprietary UNIX 1983: GNU Project starts –No UNIX code (GNU's Not UNIX) –Initial focus on utilities –Later compiler, shell, kernel

Send in the Clones Linux –Written in 1991 by Linus Torvalds –Most popular UNIX variant –Free with GNU license BSD Lite –FreeBSD (1993, focus on PCs) –NetBSD (1993, focus on portability) –OpenBSD (1996, focus on security) –Free with BSD license –Development less centralized

Darwin Apple abandoned old Mac OS for UNIX –Purchased NeXT in December 1996 –Unveiled in 2000 –Based on 4.4BSD-Lite –Aqua UI written over Darwin –Open Source

Linux Success

Linux at Google

Some Desktop Success

Why did UNIX succeed? Technical strengths! Research, not commercial PDP-11 was popular with an unusable OS AT&T’s legal concerns –Not allowed to enter computer business but needed to write software to help with switches –Licensed cheaply or free

The Open Source Movement Has fueled much growth in UNIX –Keeps up with pace of change –More users, developers More platforms, better performance, better code Many vendors switching to Linux

UNIX vs. Linux

In the 90’s, Thompson/Ritchie developed Plan 9 which applied UNIX ideas to distributed systems Plan 9 evolved into Inferno, used for set top boxes Lucent had problems, many people left Thompson retired, now at startup Ritchie October 12, 2011

The UNIX Philosophy Small is beautiful –Easy to understand –Easy to maintain –More efficient –Better for reuse Make each program do one thing well –More complex functionality by combining programs –Make every program a filter

The UNIX Philosophy Portability over efficiency –Most efficient implementation is rarely portable –Portability better for rapidly changing hardware Use flat ASCII files –Common, simple file format (yesterday’s XML) –Example of portability over efficiency Reusable code –Good programmers write good code; great programmers borrow good code..continued

The UNIX Philosophy Scripting increases leverage and portability print $(who | awk '{print $1}' | sort | uniq) | sed 's/ /,/g' 2,093sed 302uniq 2,614sort 3,412awk 755who List the logins of a system’s users on a single line. 9,176 lines Build prototypes quickly (high level interpreted languages)..continued

The UNIX Philosophy Avoid captive interfaces –The user of a program isn’t always human –Look nice, but code is big and ugly –Problems with scale Silence is golden –Only report if something is wrong Think hierarchically..continued

UNIX Highlights / Contributions Portability (variety of hardware; C implementation) Hierarchical file system; the file abstraction Multitasking and multiuser capability for minicomputer Inter-process communication –Pipes: output of one programmed fed into input of another Software tools Development tools Scripting languages TCP/IP

Operating System Structure programs operating system hardware

The Operating System The government of your computer Kernel: Performs critical system functions and interacts with the hardware Systems utilities: Programs and libraries that provide various functions through systems calls to the kernel

Unix System Structure user shell and utilities kernel hardware c programs scripts ls ksh gcc find open() fork() exec()

Kernel Basics The kernel is … –a program loaded into memory during the boot process, and always stays in physical memory. –responsible for managing CPU and memory for processes, managing file systems, and interacting with devices.

The Kernel Manage resources –Storage –Memory –CPU –Display –Network Sharing –Users –Tasks Communication user shell and utilities kernel hardware

Kernel Subsystems File system –Directory hierarchy, regular files, peripherals –Multiple file systems –Input/Output How processes access files, terminal I/O Process management –How processes share CPU, memory and signals –Scheduling –Interprocess Communication –Memory management UNIX variants have different implementations of different subsystems.

Shell & Utilities The rest of the operating system Focus of this course Cause of debate in Linux community user shell and utilities kernel hardware

Logging In Need an account and password first –Enter at login: prompt –Password not echoed –After successful login, you will see a shell prompt Entering commands –At the shell prompt, type in commands Typical format: command options arguments Examples: who, date, ls, cat myfile, ls –l –Case sensitive exit to log out

Remote Login Use Secure Shell (SSH) Windows –SSH Secure Shell Client UNIX-like OS –ssh -p

UNIX on Windows Two recommended UNIX emulation environments: UWIN (AT&T) – Cygwin (GPL) - VMWare -

Assignment 1

Next Time Basic UNIX concepts Introduction to the shell Introduction to basic commands

LINUX Tutorials tutorial.info/modules.php?name=Tutorial&pa geid=224http:// tutorial.info/modules.php?name=Tutorial&pa geid=224 linux/html/index.htmlhttp:// linux/html/index.html

System Calls The kernel implements a set of special routines A user program invokes a routine in the kernel by issuing a hardware TRAP The trap switches the CPU into a privileged mode and the kernel executes the system call The CPU goes back to user mode A C language API exists for all system calls