LIS508 lecture 6: looking at linux Thomas Krichel 2003-11-11.

Slides:



Advertisements
Similar presentations
LIS508 lecture 8: looking at linux Thomas Krichel
Advertisements

LIS651 lecture 5 direct use of wotan Thomas Krichel
ITR3 lecture 7: more introduction to UNIX Thomas Krichel
LIS651 lecture 5 origins of wotan direct use of wotan Thomas Krichel
LIS651 lecture 5 origins of wotan direct use of wotan Thomas Krichel
Learning Unix/Linux Bioinformatics Orientation 2008 Eric Bishop.
History of UNIX Fergus Toolan Intelligent Information Retrieval Group University College Dublin.
GNU, Linux and Open Source GNUKernel GNU/ Linux OpenSource.
Operating Systems - Introduction S H Srinivasan
CIS 240 Introduction to UNIX Instructor: Sue Sampson.
Brief History of C and Unix Systems Programming Concepts.
Linux Introduction. Overview What is Unix/Linux? History of Linux Features Supported Under Linux The future of Linux.
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.
UNIX/Linux System Programming Jordan University of Science and Technology History.
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.
Lecture 2 History of Operating Systems. Early History: The 1940s and 1950s Operating systems evolved through several phases. 1940s: Early computers did.
Unix Background / History CSE 4251, Sp 2014, Bolz 422 Dr. Bob Mathis,
CST334 Unix & X Window System
Introduction A computer system consists of hardware system programs application programs.
Chapter 10 – UNIX. History In late 1960s, two employees of Bell Labs (Ken Thompson & Dennis Ritchie) designed a new operating system to overcome the constraints.
Overview of Linux CS3530 Spring 2014 Dr. José M. Garrido Department of Computer Science.
Unix Primer. Unix Shell The shell is a command programming language that provides an interface to the UNIX operating system. The shell is a “regular”
LIS508 lecture 9: GNU & introduction to networks Thomas Krichel
Overview of Linux Dr. Michael L. Collard 1.
Operating System - Linux Ph. D. Course Work : PHYS 601 Statistics and Computer Applications Presented By: Sanjay Godara Dept. of Physics & Astrophysics.
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.
LIS508 background of GNU/Linux
Natawut NupairojAssembly Language1 Unix Survival Guide.
Operating System Part II: Introduction to the Unix Operating System (The Evolution of Unix)
ITR3 lecture 6: intoduction to UNIX Thomas Krichel
CE Operating Systems Lecture 5 Overview of Unix/Linux operating systems.
History of UNIX a short version CSCI 333 August 31, 2011.
Just Enough Unix, Chapter 1
1 Operating Systems: Principles and Practice Cpr E 308.
MODERN OPERATING SYSTEMS Third Edition ANDREW S. TANENBAUM Chapter 10 Case Study 1: LINUX Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall,
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.
1 Lecture 1 Introduction & Getting Started COP 3353 Introduction to UNIX.
CSNB334 Advanced Operating Systems 1. Introduction to Linux Lecturer: Abdul Rahim Ahmad.
The UNIX Time-sharing system
Background & History of UNIX & Linux Fort Collins, CO Copyright © XTR Systems, LLC The Background and Short History of UNIX & Linux Instructor: Joseph.
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.
PTA Linux Series Copyright Professional Training Academy, CSIS, University of Limerick, 2006 © Workshop I Introduction to Linux Professional Training Academy.
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
Lab #1: UNIX crash course Introduction: History of Operating Systems Lesson #1: Navigating directories Lesson #2: Creating and editing files with emacs.
OPS224 Operating Systems - Unix Instructor: MURRAY SAUL.
Learning Unix/Linux Based on slides from: Eric Bishop.
Fall 2011 Nassau Community College ITE153 – Operating Systems 1 Session 10 Let’s Bring Everything Together.
INTRODUCTION TO SHELL SCRIPTING By Byamukama Frank
Introduction to unix. The UNIX Operating System An operating system "OS” is a set of programs that controls a computer. It controls both the hardware.
Overview of Linux Fall 2016 Dr. Donghyun Kim
A LECTURE NOTE.
Unix Scripting Session 1 March 6, 2008.
Selected topic in computer science (1)
Welcome to Linux Chap#1 Hanin Abdulrahman.
Welcome to CIS 52 WELCOME WELCOME WELCOME W E L C O M E.
Case Study : Linux In the previous chapters, we examined many operating system principles, abstractions, algorithms, and techniques in general. Now it.
The Linux Operating System
A UNIX OPERATING SYSTEM
Unix : Introduction and Commands
Linux Professor Sabol.
Case Study : Linux In the previous chapters, we examined many operating system principles, abstractions, algorithms, and techniques in general. Now it.
Enjoy Linux
Welcome to Linux Chap#1 Hanin Abdulrahman.
Case Study : Linux In the previous chapters, we examined many operating system principles, abstractions, algorithms, and techniques in general. Now it.
Welcome to Linux Chap#1.
Presentation transcript:

LIS508 lecture 6: looking at linux Thomas Krichel

Structure History of unix and linux Free software Using linux

Early Computing History In the 1940s and 1950s, all computers were personal computers in the sense that a user would sign up to use the machine and then take over the whole machine for that period. The early 1960s were dominated by batch systems in which a user would submit a job on punched cards and wait, usually hours, before any printed output appeared.

Early Computing History To get around this unproductive environment, the concept of timesharing was invented by Dartmouth College and M.I.T. The M.I.T system CTSS (Compatible Time Sharing System) was an enormous success. M.I.T., Bell Labs, and General Electric created a second generation timesharing system named MULTICS (Multiplexed Information and Computing Service).

Early UNIX History At Bell Labs, Ken Thompson decided to write a stripped down version of MULTICS for the very small PDP-7 minicomputer which he called UNICS. Dennis Ritchie, also at Bell Labs, joined Thompson in further developments of what was now called UNIX. Together they ported the system the the larger and very popular PDP-11/20 and PDP-11/45 minicomputers.

Early UNIX History Thompson also rewrote the operating system in high level language of his own design which he called B. The B language lacked many features and Ritchie decided to design a successor to B which he called C. They then rewrote UNIX in the C programming language to aid in portability.

Early UNIX History In 1974, Ritchie and Thompson published a paper about UNIX and received the prestigious ACM Turing Award. This publication stimulated many universities to request a copies of UNIX. Since Bell Labs, part of AT&T, was not allowed to be in the computer business, it licensed UNIX to universities. Also, at that time, the PDP-11 series was the workhorse of most computer science departments. Result: UNIX was a hit on campus.

Early UNIX History In Version 6, the source code of UNIX was 8200 lines of C and 900 lines of assembler. The first portable version arrived with Version 7 which had 18,800 lines of C and 2100 lines of assembler. By the 1980s the use of UNIX was widespread with many vendors selling their own versions based on Version 7.

BSD UNIX One of the many universities that had received license for UNIX was the University of California at Berkeley. Aided by many government grants, Berkeley released an improved version named 1BSD (First Berkeley Software Distribution) In subsequent, versions Berkley added many new features including a new visual editor (vi) and a new shell (csh).

Two UNIX Versions Because of these and other enhancements, many companies based their UNIX on Berkeley’s version as opposed to AT&T’s so- called System V. By the late 1980s, two different and somewhat incompatible versions of UNIX were in widespread use: 4.3 BSD and System V release 3.

UNIX Standards In addition, every vendor added its own nonstandard enhancements. In an attempt to unify the troops, the IEEE Standards Board undertook the POSIX Project (POS for Portable Operating System) and IX to make it UNIX like. POSIX emerged as a common ground standard is the intersection of System V and BSD. (a feature had to be on both to be included in the standard)

UNIX Standards The POSIX standard defined a set of library procedures and systems calls that all compliant UNIX systems. It appeared that the split between System V and BSD had been somewhat dealt with. Unfortunately, a funny thing happened on the way back form the standards meeting.

UNIX Standards A group of vendors led by IBM, DEC, Hewlett- Packard, and others formed the OSF (Open Software Foundation) to standardize an enhanced version of UNIX in an attempt to derail AT&T’s efforts to regain control of UNIX. AT&T, Sun, UNISYS, Data General, and other companies countered and formed UI (UNIX International) based on System V.

UNIX Like Systems In a new trend, UNIX like operating systems began to appear. MINIX, by Andrew Tanenbaum, used a microkernel design with only 1600 lines of C and 800 lines of assembler in its first version. In 1991, a Finnish student named Linus Torvalds released another UNIX clone named Linux version 0.01.

Linux Linux is a monolithic design. (9,300 lines of C and 950 of assembler) Linux quickly grew in size and functionality. Version 1, shipped in 1994, contained about 165,000 lines of code. Version 2 in 1996 contained about 470,00 lines of C and 8000 lines of assembler. Linux is released under the GNU public license, which, very basically means that anyone can copy and change it.

Linux Distributions Linux itself is free. It is aggregated with installation and management tools, and many other software packages, and made available for a small fee by various vendors on CD. These aggregates are known as distributions. Some common distributions are –Red Hat -- SuSE --Mandrake –Debian-- Slackware Differences –Locations of files (configuration, binaries, etc.) –GUI –Security, efficiency, etc.

GNU GNU is a project started by Richard M. Stallman (RMS) to write a completely free implementation of Unix available. GNU stands for “GNU is not Unix” Most of Unix has been rewritten by him and his friends. Many other software packages have been released for free. My favorite linux distribution has over 13,000 packages.

This is Richard Stallman.

free software according to RMS Free software comes with four freedoms –The freedom to run the software, for any purpose –The freedom to study how the program works, and adapt it to your needs –The freedom to redistribute copies so you can help your neighbor –The freedom to improve the program, and release your improvements to the public, so that the whole community benefits

UNIX Structure The kernel is the core of the UNIX system, controlling the system hardware and performing various low-level functions. The other parts of the UNIX system, as well as user programs, call on the kernel to perform services for them. The shell is the command interpreter for the UNIX system. The shell accepts user commands and is responsible for seeing that they are carried out.

Famous shells The Bourne shell /bin/sh (default) The Korn shell /bin/ksh The C shell /bin/csh The Bourne Again Shell /bin/bash The Z shell /bin/zsh In linux, /bin/sh is usually /bin/bash

UNIX Structure Hundreds of applications are supplied with the UNIX system. They support a variety of tasks –copying files –editing text –performing calculations –developing software –Serving web pages etc

Using Linux/UNIX Depends on how it is set up. The following are true on wotan, on other machines it may be different. Wotan runs Debian GNU/Linux.

directories / is the root directory /home/user (aka ~user) is the home directory of the user user. ls –l lists files in long format The command to change directory is cd. The directory above the current one is.. just like it was in old DOS.

Permission model Permission of files are give to the owner, the group, and the rest of the world. A group is a grouping of users. Unix allows to define any number of groups and make users a member of it. The rest of the world are all other users who have access to the system, including public access on a web server, for example.

First element in ls -l Type indicator –d means directory –l means link –- means ordinary file 3 letters for permission of owner 3 letters for permission of group 3 letters for permission of rest of the world r means read, w means write, x means execute

Change permission: chmod A permission is a number –4 is read –2 is write –1 is execute Permissions are three numbers, for owner, group and rest of the world. Example: chmod 764 file Directories need to be executable to get in them…

Bash features Bash is the default shell on wotan cd is a command to change directory File names and command names can be completed with TAB The command history can be activated with the arrow keys of the keyboard

Copying and removing cp file copyfile scp –User is a user –Machine is a machine –File is the path to a file –Of course you will need permissions here! rm filethere is no recycling bin!! -r flag copies and deletes recursively

Directories and files mkdir file makes a directory rmdir file removes it touch file –makes a new empty file –sets the time on an existing file more file –Pages contents of file, no way back less file –Pages contents of file, “u” to go back, “q” to quit

Editing files There are many file editors available. I use emacs, because I am a geek. My students use nano. Invoque it with nano filename If nano in not there, try pico.

Thank you for your attention!