CSE 451 – Operating Systems Section, Autumn 2003 TAs: Mike Swift Adrienne Noble

Slides:



Advertisements
Similar presentations
Operating Systems Components of OS
Advertisements

Chapter 8: System Software Part of any computer system is the system software –This is software that supports our use of the computer –We will examine.
CSE 451: Operating Systems Section 3 Project 0 recap, Project 1.
CSE 451: Operating Systems Section 2 Shells and System Calls.
1 CSE 451 Section Autumn 2004 Alex Moshchuk Office hours: Tue 1-2, Thu 4:30-5:30 Allen 218 (or lab)
CSE 451 Section Autumn 2005 Richard Dunn Office hours: WTh 3:30-4:20 Allen 216 (or lab)
Home: Phones OFF Please Unix Kernel Parminder Singh Kang Home:
A. Frank - P. Weisberg Operating Systems Introduction to Cooperating Processes.
COMP 14: Intro. to Intro. to Programming May 23, 2000 Nick Vallidis.
Starting Out with C++: Early Objects 5/e © 2006 Pearson Education. All Rights Reserved Starting Out with C++: Early Objects 5 th Edition Chapter 1 Introduction.
‘C’ LANGUAGE PRESENTATION.  C language was introduced by Dennis Ritchie..  It is a programming language, which can make a interaction between user and.
LSU 06/04/2007BASIC Stamp Editor1 The BASIC Stamp Editor Programming Unit, Lecture 3.
1 CS1130 Spring 2011: David Gries & Walker White Transition to Object-Oriented Programming Assumes programming knowledge in a language like Matlab, C,
CSE 131 Computer Science 1 Module 1: (basics of Java)
Introduction to IT and Communications Technology Justin Champion Network Connections & Number Systems.
COMP1070/2002/lec3/H.Melikian COMP1070 Lecture #3 v Operating Systems v Describe briefly operating systems service v To describe character and graphical.
Security Exploiting Overflows. Introduction r See the following link for more info: operating-systems-and-applications-in-
Four Components of a Computer System. Computer System Components Users (people, machines, other computers) Applications programs – define the ways in.
AS Computing Introduction to Programming. What is a Computer Program? A list of instructions that a computer must work through, in a logical sequence,
Computer basics Lesson 4 – Programs & S.O..
Files COP3275 – PROGRAMMING USING C DIEGO J. RIVERA-GUTIERREZ.
IT253: Computer Organization Lecture 4: Instruction Set Architecture Tonga Institute of Higher Education.
DEPARTMENT OF COMPUTER SCIENCE & TECHNOLOGY FACULTY OF SCIENCE & TECHNOLOGY UNIVERSITY OF UWA WELLASSA 1 CST 221 OBJECT ORIENTED PROGRAMMING(OOP) ( 2 CREDITS.
Introduction to Java CSIS 3701: Advanced Object Oriented Programming.
Operating Systems Lecture 2 Processes and Threads Adapted from Operating Systems Lecture Notes, Copyright 1997 Martin C. Rinard. Zhiqing Liu School of.
CS 114 – Class 02 Topics  Computer programs  Using the compiler Assignments  Read pages for Thursday.  We will go to the lab on Thursday.
IT253: Computer Organization Lecture 3: Memory and Bit Operations Tonga Institute of Higher Education.
Board Activity Find your seat on the seating chart Login – Remember your login is your first initial your last name and the last three numbers of your.
CS 390 Unix Programming Summer Unix Programming - CS 3902 Course Details Online Information Please check.
4061 Session 29 (5/1). Today Review, Looking Ahead DRM Teaching/TAing evaluations.
Netprog: Java Intro1 Crash Course in Java. Netprog: Java Intro2 Why Java? Network Programming in Java is very different than in C/C++ –much more language.
CSE 451 – Operating Systems Section, Winter 2003 Scapegoats: Evan Welbourne Albert J. Wong
1 CSE 451 Section 2: Interrupts, Syscalls, Virtual Machines, and Project 1.
These notes were originally developed for CpSc 210 (C version) by Dr. Mike Westall in the Department of Computer Science at Clemson.
Instructor: Alexander Stoytchev CprE 185: Intro to Problem Solving (using C)
BEGINNING PROGRAMMING.  Literally – giving instructions to a computer so that it does what you want  Practically – using a programming language (such.
FTP Short for File Transfer Protocol, the protocol for exchanging files over the Internet.protocolfilesInternet works in the same way as HTTP for transferring.
Fall 2002CS 150: Intro. to Computing1 Streams and File I/O (That is, Input/Output) OR How you read data from files and write data to files.
Java Basics Opening Discussion zWhat did we talk about last class? zWhat are the basic constructs in the programming languages you are familiar.
Operating Systems Process Creation
1 Computer Systems II Introduction to Processes. 2 First Two Major Computer System Evolution Steps Led to the idea of multiprogramming (multiple concurrent.
Written by: Dr. JJ Shepherd
Unit 1: Computing Fundamentals. Computer Tour-There are 7 major components inside a computer  Write down each major component as it is discussed.  Watch.
Brief Version of Starting Out with C++ Chapter 1 Introduction to Computers and Programming.
Week 4 - Monday.  What did we talk about last time?  Precedence  Selection statements  Loops  Lab 3.
Lecture9 Page 1 CS 236 Online Operating System Security, Con’t CS 236 On-Line MS Program Networks and Systems Security Peter Reiher.
1 CSE 451 Section 2: Processes, the shell, and system calls.
Review A program is… a set of instructions that tell a computer what to do. Programs can also be called… software. Hardware refers to… the physical components.
RealTimeSystems Lab Jong-Koo, Lim
UNIX U.Y: 1435/1436 H Operating System Concept. What is an Operating System?  The operating system (OS) is the program which starts up when you turn.
CSE 451 Section Autumn 2004 Alex Moshchuk Office hours: Tue 2-3, Thu 4:30-5:30 Allen 216 (or lab)
S ALVATORE DI G IROLAMO (TA) Networks and Operating Systems: Exercise Session 1.
CSE 451 Section #3 Project 0 Recap Project 1 Overview
Virtualization.
YongChul Kwon CSE451 Section 1: Spring 2006 YongChul Kwon
The Machine Model Memory
JAVA MULTIPLE CHOICE QUESTION.
CSE 451 Section 2: Processes, the shell, and system calls
C Basics.
Week 4 - Monday CS222.
Lesson 15: Processing Arrays
CSE 451 Section 2 – Winter 2006.
CSE 451 Section 2 - Spring 2005.
Outline Chapter 2 (cont) OS Design OS structure
Focus of the Course Object-Oriented Software Development
Comp Org & Assembly Lang
January 8, 2004 Adrienne Noble
CSE 153 Design of Operating Systems Winter 19
System calls….. C-program->POSIX call
Technology 5 Programs.
Presentation transcript:

CSE 451 – Operating Systems Section, Autumn 2003 TAs: Mike Swift Adrienne Noble

Projects 4 Projects Work individually for the first project, groups of 3 after that You need to have basic Unix and C skills –I’ll go over a little today and point you to more resources Don’t wait until the last minute! –Projects require a substantial amount work and you’ll be much happier if you start early Lots of helpful info on the course web page –

Project 1 Introduces you the Unix and C skills you’ll need for the rest of the class Teaches you how to build and run Linux in VMWare Two parts –Write a simple shell –Write a syscall First steps: 1.Read the project 2.Work through the lab info page at s/cse451/CurrentQtr/labinfo.htm 3.Start the project

Computing Resources Instructional Servers attu (used to be fiji, sumatra, ceylon, tahiti) DO NOT USE!!!! coredump and spinlock Our Dedicated Servers CSE 006 Lab Use these instead Develop your code on coredump or spinlock. Test your code in VMWare. WARNING: Do not run your code on the instructional servers (attu). You can easily fork bomb a server, which can bring down the server. Use only spinlock, coredump, and VMWare.

VMWare VMWare is a software simulation of an x86 computer. –The OS thinks it is running on a real machine It allows you to run an OS in a sandbox. –Easy to reset to known good state

VMWare Basics Power functions (on, off, reset) VMWare config Machine name All disks are non-persistent. This means that using the Power Off function will lose any changes you made to the file system inside VMWare. –A soft reboot will preserve data. Type “shutdown –r now” or “reboot” from the shell instead of hitting the reset button. Network Adapter is Host Only. This means that only the host computer can talk to the VMWare network card. You must transfer files (like your kernel) to the host machine first.

VMWare Tips There is only one user: “root” The password to root on the vmware machines is “rootpassword” Use ftp to get files into VMWare –Move files onto your local machine –Open Internet Explorer to access VMWare through the URL, –If you decide to use another ftp method, remember to check binary mode. Otherwise you’ll get garbage instead of your file.

Unix Help ACM Unix tutorial –Wed Oct 8, 5-7pm, CSE 022 Unix tutorials online at the ACM website – s/

Intro to C What is C? –C is a procedural language (not an object oriented language) Major Syntactic Differences in C –No classes Structs are not the same as classes in C++ or Java –Variables must be declared at the top of a block (after an opening brace) before any other kind of statement –No new/delete operators. Use malloc and free functions (see man pages – man malloc). –void* is used often in C data structures –No boolean type 0 is false, anything else is true

Basic C type mechanisms Structs Structs are meant for grouping structured data. They are not classes. Structs do not have inheritance and methods like classes do (though you can simulate inheritance and methods fairly well. Look at glib). You use structs for 2 reasons. –Ordering memory Because structs guarantee a memory layout, they are useful for communicating with hardware –Grouping related items This is the more common usage. You can use this to create really dumb “objects”.

Basic C type mechanisms Typedefs Typedefs are a way of creating aliases for a type. So if you type: typedef unsigned char byte; From this point on, a “byte” is the same as char. You use typedefs for 3 reasons. –Making a shorthand (often done with structs and function pointers). –Adding an extra level of abstractions to the type. (say you’re waffling between using a short int or a long int). –Designating a logical difference. A byte is the same as an unsigned char, but when you see “byte” you think of 8 bits where when you see “char” you think of ‘a’ or something similar.