MPATE-GE 2618: C Programming for Music Technology. Unit 1.1

Size: px
Start display at page:

Download "MPATE-GE 2618: C Programming for Music Technology. Unit 1.1"

Transcription

1 MPATE-GE 2618: C Programming for Music Technology Unit 1.1

2 What is an algorithm? An algorithm is a precise, unambiguous procedure for producing certain results (outputs) from given data (inputs). It is a method for accomplishing a task or solving a problem.

3 Goals Learn to develop algorithms Learn to decompose problems into smaller, solvable parts in an efficient way. Learn about data structures. Learn to express algorithms in C (programming). Learn how to program audio applications.

4 Organization & Introduction Today s outline Course organization Introduction to data representation, C, and Unix Course website: Problem sets Plan on problem sets averaging hours per week, possibly more Four types of problems in assignments: Programming (coding) Developing algorithms (design) Reading code Using tools Assessment: Lecture Best 6 out of 7 problem sets 65% Best 2 out of 3 quizzes 20% Final project 15 % Assessment: Lab Attendance 30% Problem set average (best 6 out of 7) = 70%

5 Office hours Instructor TA: Oriol (Uri) Nieto: Office hours: Tuesday, 10am-12pm, Education building, Rm. 630 ursday, 11am-1pm, Education building, Rm. 624 Office hours start next week Please both instructor and TA whenever you have any question.

6 Problem sets and platforms Assignments were developed with a Unix-based system in mind, in particular Mac OS X, because most music technology students prefer to use Macs. However, all assignments (and later on in the course, audio APIs utilized) are cross-platform. Quick Poll: how many students are using Mac OS? Windows? Linux?

7 Using the terminal What is bash? It s a shell, or a command line interface that lets you interact with the OS. at s what you re using when you type into your terminal window. How do you set up your environment? What is a prompt? To type a file name with a space on the command line, use the escape characer \ before it. Example: cd My\ Docs cd s to the directory My Docs.

8 Unix Mac OS X is built on a Unix (BSD) core It comes with the GNU C compiler (gcc) that we ll be using for the course (make sure you download XCode) Traversing the Unix file system directory commands cd changes current directory to home directory cd <dir> changes current directory to specified directory cd.. go up one directory level ls list the contents of present working directory pwd show path to current directory mkdir <dir> make a new directory rmdir <dir> delete a directory

9 File commands Unix continued cat <filename> prints contents of file less <filename> same as cat but shows one screenful at a time cp <src> <dest> copy file <src> to <dest> mv <src> <dest> move or rename <src> to <dest> touch <filename> creates an empty new file called <filename> emacs <filename> opens a new file in the editor emacs

10 Some Unix questions How does the shell know where to find the programs you type? See what your path is echo $PATH Why don t I see all my files when I type ls? What are command flags? ls -af What is standard input and output? How do I save output to a file? <command> > <outputfilename> How do I find out more about a command? man <command name>

11 Programming: Some history In the beginning, computers could only be programmed in terms of binary numbers that corresponded directly to specific machine instructions and locations in the computer s memory. Not very human friendly. e next software advance occurred with the development of assembly language. Enabled the programmer to work with the machine on a higher level, using symbolic names for instructions. en came high-level languages like FORTRAN, in which programmers no longer had to concern themselves with the architecture of a particular computer. is resulted in the need for a compiler to translate the program into a form the computer could understand.

12 Compiling a C program: Basic outline Source code Human-readable instructions (your program) Format is text Source code is then translated by a compiler into machine code (binary) You can then run this program on your machine. Source code Machine code int x = 0;" x = y + z;" while (...)" Compiler " " "

13 Compiling a C program: Detailed version Source code int x = 0;" x = y + z;" while (...)" Assembler Preprocessor Takes the assembly language produced by the compiler, and translates into object code Assembly instructions are turned into opcode (machine language codes that specifies a particular operation for the CPU) Assembly code Compiler movl %esp, %ebp" pushl %ebx" subl $36, %esp" Object code Machine code that is usually not directly executable (.o files) Linking e linker takes one of more object files and combines them into an executable (the linker is sometimes called the loader in Unix). External libraries used by your program are linked in at this stage. Object code Assembler " (Library ref)" " (Library ref)" Linker Libraries (object code) " " " " " ld is the Unix linker Executable code " " " " "

14 Structure of a C program /* This is a comment. Not a very useful one, though */" #include <stdio.h> int main (void) " {" "printf("hello World!\n"); " "return 0; " }"

15 Compiling a C program After creating a file, (in this case, we re calling it helloworld.c ) compile it and run it. hostname:user ~ % gcc helloworld.c hostname:user ~ % ls a.out* "helloworld.c hostname:user ~ %./a.out HelloWorld! hostname:user ~ %

16 Getting started Programming in C, Chapters 2-4, pp Absolute Beginner s Guide to C, Chapters 1-4, pp Install gcc and other Unix tools on your computer If you are using Windows, you must install Cygwin. If you are using MacOS, you might have to install XCode programming tools. If you are using Linux, you shouldn t need to install anything. Get acquainted with the Unix environment Learn how to navigate the Unix directory structure; experiment with basic Unix commands Get a feel for emacs (if you choose to use it as your text editor) see website for references online to help you get acquainted Go to website (under Lectures) and download the Getting Started document to help you set up your shell and emacs environments

Command Line - Part 1

Command Line - Part 1 Command Line - Part 1 STAT 133 Gaston Sanchez Department of Statistics, UC Berkeley gastonsanchez.com github.com/gastonstat Course web: gastonsanchez.com/teaching/stat133 GUIs 2 Graphical User Interfaces

More information

Command Line Crash Course For Unix

Command Line Crash Course For Unix Command Line Crash Course For Unix Controlling Your Computer From The Terminal Zed A. Shaw December 2011 Introduction How To Use This Course You cannot learn to do this from videos alone. You can learn

More information

CS 253: Intro to Systems Programming

CS 253: Intro to Systems Programming CS 253: Intro to Systems Programming Spring 2014 Amit Jain, Shane Panter, Marissa Schmidt Department of Computer Science College of Engineering Boise State University Logistics Instructor: Amit Jain http://cs.boisestate.edu/~amit

More information

Introduction to Linux and Cluster Basics for the CCR General Computing Cluster

Introduction to Linux and Cluster Basics for the CCR General Computing Cluster Introduction to Linux and Cluster Basics for the CCR General Computing Cluster Cynthia Cornelius Center for Computational Research University at Buffalo, SUNY 701 Ellicott St Buffalo, NY 14203 Phone: 716-881-8959

More information

CS 103 Lab Linux and Virtual Machines

CS 103 Lab Linux and Virtual Machines 1 Introduction In this lab you will login to your Linux VM and write your first C/C++ program, compile it, and then execute it. 2 What you will learn In this lab you will learn the basic commands and navigation

More information

Lab 1: Introduction to C, ASCII ART and the Linux Command Line Environment

Lab 1: Introduction to C, ASCII ART and the Linux Command Line Environment .i.-' `-. i..' `/ \' _`.,-../ o o \.' ` ( / \ ) \\\ (_.'.'"`.`._) /// \\`._(..: :..)_.'// \`. \.:-:. /.'/ `-i-->..

More information

Tutorial 0A Programming on the command line

Tutorial 0A Programming on the command line Tutorial 0A Programming on the command line Operating systems User Software Program 1 Program 2 Program n Operating System Hardware CPU Memory Disk Screen Keyboard Mouse 2 Operating systems Microsoft Apple

More information

1 Basic commands. 2 Terminology. CS61B, Fall 2009 Simple UNIX Commands P. N. Hilfinger

1 Basic commands. 2 Terminology. CS61B, Fall 2009 Simple UNIX Commands P. N. Hilfinger CS61B, Fall 2009 Simple UNIX Commands P. N. Hilfinger 1 Basic commands This section describes a list of commonly used commands that are available on the EECS UNIX systems. Most commands are executed by

More information

Lab 1 Beginning C Program

Lab 1 Beginning C Program Lab 1 Beginning C Program Overview This lab covers the basics of compiling a basic C application program from a command line. Basic functions including printf() and scanf() are used. Simple command line

More information

CS 3530 Operating Systems. L02 OS Intro Part 1 Dr. Ken Hoganson

CS 3530 Operating Systems. L02 OS Intro Part 1 Dr. Ken Hoganson CS 3530 Operating Systems L02 OS Intro Part 1 Dr. Ken Hoganson Chapter 1 Basic Concepts of Operating Systems Computer Systems A computer system consists of two basic types of components: Hardware components,

More information

Unix Sampler. PEOPLE whoami id who

Unix Sampler. PEOPLE whoami id who Unix Sampler PEOPLE whoami id who finger username hostname grep pattern /etc/passwd Learn about yourself. See who is logged on Find out about the person who has an account called username on this host

More information

Programming for GCSE Topic H: Operating Systems

Programming for GCSE Topic H: Operating Systems Programming for GCSE Topic H: Operating Systems William Marsh School of Electronic Engineering and Computer Science Queen Mary University of London Aims Introduce Operating Systems Core concepts Processes

More information

Running your first Linux Program

Running your first Linux Program Running your first Linux Program This document describes how edit, compile, link, and run your first linux program using: - Gnome a nice graphical user interface desktop that runs on top of X- Windows

More information

Lecture 27 C and Assembly

Lecture 27 C and Assembly Ananda Gunawardena Lecture 27 C and Assembly This is a quick introduction to working with x86 assembly. Some of the instructions and register names must be check for latest commands and register names.

More information

Linux command line. An introduction to the Linux command line for genomics. Susan Fairley

Linux command line. An introduction to the Linux command line for genomics. Susan Fairley Linux command line An introduction to the Linux command line for genomics Susan Fairley Aims Introduce the command line Provide an awareness of basic functionality Illustrate with some examples Provide

More information

TNM093 Practical Data Visualization and Virtual Reality Laboratory Platform

TNM093 Practical Data Visualization and Virtual Reality Laboratory Platform October 6, 2015 1 Introduction The laboratory exercises in this course are to be conducted in an environment that might not be familiar to many of you. It is based on open source software. We use an open

More information

LECTURE-7. Introduction to DOS. Introduction to UNIX/LINUX OS. Introduction to Windows. Topics:

LECTURE-7. Introduction to DOS. Introduction to UNIX/LINUX OS. Introduction to Windows. Topics: Topics: LECTURE-7 Introduction to DOS. Introduction to UNIX/LINUX OS. Introduction to Windows. BASIC INTRODUCTION TO DOS OPERATING SYSTEM DISK OPERATING SYSTEM (DOS) In the 1980s or early 1990s, the operating

More information

CSIL MiniCourses. Introduction To Unix (I) John Lekberg Sean Hogan Cannon Matthews Graham Smith. Updated on: 2015-10-14

CSIL MiniCourses. Introduction To Unix (I) John Lekberg Sean Hogan Cannon Matthews Graham Smith. Updated on: 2015-10-14 CSIL MiniCourses Introduction To Unix (I) John Lekberg Sean Hogan Cannon Matthews Graham Smith Updated on: 2015-10-14 What s a Unix? 2 Now what? 2 Your Home Directory and Other Things 2 Making a New Directory

More information

CP Lab 2: Writing programs for simple arithmetic problems

CP Lab 2: Writing programs for simple arithmetic problems Computer Programming (CP) Lab 2, 2015/16 1 CP Lab 2: Writing programs for simple arithmetic problems Instructions The purpose of this Lab is to guide you through a series of simple programming problems,

More information

An Introduction to the Linux Command Shell For Beginners

An Introduction to the Linux Command Shell For Beginners An Introduction to the Linux Command Shell For Beginners Presented by: Victor Gedris In Co-Operation With: The Ottawa Canada Linux Users Group and ExitCertified Copyright and Redistribution This manual

More information

File Manager User Guide

File Manager User Guide File Manager User Guide Please note: EasySiteOptimizer Version 1.6 is supplied with Web Hosting (IBP) and Advanced Web Hosting only. File Manager Introduction to File Manager To access File Manager, select

More information

Command-Line Operations : The Shell. Don't fear the command line...

Command-Line Operations : The Shell. Don't fear the command line... Command-Line Operations : The Shell Don't fear the command line... Shell Graphical User Interface (GUI) Graphical User Interface : displays to interact with the computer - Open and manipulate files and

More information

Thirty Useful Unix Commands

Thirty Useful Unix Commands Leaflet U5 Thirty Useful Unix Commands Last revised April 1997 This leaflet contains basic information on thirty of the most frequently used Unix Commands. It is intended for Unix beginners who need a

More information

Ubuntu, FEAP, and Virtualiza3on. Jonathan Wong Lab Mee3ng 11/08/10

Ubuntu, FEAP, and Virtualiza3on. Jonathan Wong Lab Mee3ng 11/08/10 Ubuntu, FEAP, and Virtualiza3on Jonathan Wong Lab Mee3ng 11/08/10 Mo3va3on Compiling and opera3ng FEAP requires knowledge of Unix/ Posix systems Being comfortable using command- line Naviga3ng the file

More information

ICS 351: Today's plan

ICS 351: Today's plan ICS 351: Today's plan routing protocols linux commands Routing protocols: overview maintaining the routing tables is very labor-intensive if done manually so routing tables are maintained automatically:

More information

An Introduction to Using the Command Line Interface (CLI) to Work with Files and Directories

An Introduction to Using the Command Line Interface (CLI) to Work with Files and Directories An Introduction to Using the Command Line Interface (CLI) to Work with Files and Directories Mac OS by bertram lyons senior consultant avpreserve AVPreserve Media Archiving & Data Management Consultants

More information

Outline. hardware components programming environments. installing Python executing Python code. decimal and binary notations running Sage

Outline. hardware components programming environments. installing Python executing Python code. decimal and binary notations running Sage Outline 1 Computer Architecture hardware components programming environments 2 Getting Started with Python installing Python executing Python code 3 Number Systems decimal and binary notations running

More information

New Lab Intro to KDE Terminal Konsole

New Lab Intro to KDE Terminal Konsole New Lab Intro to KDE Terminal Konsole After completing this lab activity the student will be able to; Access the KDE Terminal Konsole and enter basic commands. Enter commands using a typical command line

More information

Birmingham Environment for Academic Research. Introduction to Linux Quick Reference Guide. Research Computing Team V1.0

Birmingham Environment for Academic Research. Introduction to Linux Quick Reference Guide. Research Computing Team V1.0 Birmingham Environment for Academic Research Introduction to Linux Quick Reference Guide Research Computing Team V1.0 Contents The Basics... 4 Directory / File Permissions... 5 Process Management... 6

More information

University of Toronto

University of Toronto 1 University of Toronto APS 105 Computer Fundamentals A Tutorial about UNIX Basics Fall 2011 I. INTRODUCTION This document serves as your introduction to the computers we will be using in this course.

More information

Kernel. What is an Operating System? Systems Software and Application Software. The core of an OS is called kernel, which. Module 9: Operating Systems

Kernel. What is an Operating System? Systems Software and Application Software. The core of an OS is called kernel, which. Module 9: Operating Systems Module 9: Operating Systems Objective What is an operating system (OS)? OS kernel, and basic functions OS Examples: MS-DOS, MS Windows, Mac OS Unix/Linux Features of modern OS Graphical operating system

More information

Unix the Bare Minimum

Unix the Bare Minimum Unix the Bare Minimum Norman Matloff September 27, 2005 c 2001-2005, N.S. Matloff Contents 1 Purpose 2 2 Shells 2 3 Files and Directories 4 3.1 Creating Directories.......................................

More information

CS 2112 Lab: Version Control

CS 2112 Lab: Version Control 29 September 1 October, 2014 Version Control What is Version Control? You re emailing your project back and forth with your partner. An hour before the deadline, you and your partner both find different

More information

Example of Standard API

Example of Standard API 16 Example of Standard API System Call Implementation Typically, a number associated with each system call System call interface maintains a table indexed according to these numbers The system call interface

More information

Beyond Windows: Using the Linux Servers and the Grid

Beyond Windows: Using the Linux Servers and the Grid Beyond Windows: Using the Linux Servers and the Grid Topics Linux Overview How to Login & Remote Access Passwords Staying Up-To-Date Network Drives Server List The Grid Useful Commands Linux Overview Linux

More information

QUICK START BASIC LINUX AND G++ COMMANDS. Prepared By: Pn. Azura Bt Ishak

QUICK START BASIC LINUX AND G++ COMMANDS. Prepared By: Pn. Azura Bt Ishak QUICK START BASIC LINUX AND G++ COMMANDS Prepared By: Pn. Azura Bt Ishak FTSM UKM BANGI 2009 Content 1.0 About UBUNTU 1 2.0 Terminal 1 3.0 Basic Linux Commands 3 4.0 G++ Commands 23 1.0 ABOUT UBUNTU Ubuntu

More information

Software. Programming Language. Software. Instructor Özgür ZEYDAN. Bülent Ecevit University Department of Environmental Engineering

Software. Programming Language. Software. Instructor Özgür ZEYDAN. Bülent Ecevit University Department of Environmental Engineering Computer Bülent Ecevit University Department of Environmental Engineering Case & Inside units Hardware Peripherals Operating Systems Application : Instructions for the computer. A series of instructions

More information

Linux Labs: mini survival guide

Linux Labs: mini survival guide Enrique Soriano, Gorka Guardiola Laboratorio de Sistemas, Grupo de Sistemas y Comunicaciones, URJC 29 de septiembre de 2011 (cc) 2010 Grupo de Sistemas y Comunicaciones. Some rights reserved. This work

More information

Tutorial Guide to the IS Unix Service

Tutorial Guide to the IS Unix Service Tutorial Guide to the IS Unix Service The aim of this guide is to help people to start using the facilities available on the Unix and Linux servers managed by Information Services. It refers in particular

More information

CMSC 216 UNIX tutorial Fall 2010

CMSC 216 UNIX tutorial Fall 2010 CMSC 216 UNIX tutorial Fall 2010 Larry Herman Jandelyn Plane Gwen Kaye August 28, 2010 Contents 1 Introduction 2 2 Getting started 3 2.1 Logging in........................................... 3 2.2 Logging

More information

Unix Guide. Logo Reproduction. School of Computing & Information Systems. Colours red and black on white backgroun

Unix Guide. Logo Reproduction. School of Computing & Information Systems. Colours red and black on white backgroun Logo Reproduction Colours red and black on white backgroun School of Computing & Information Systems Unix Guide Mono positive black on white background 2013 Mono negative white only out of any colou 2

More information

Linux Overview. Local facilities. Linux commands. The vi (gvim) editor

Linux Overview. Local facilities. Linux commands. The vi (gvim) editor Linux Overview Local facilities Linux commands The vi (gvim) editor MobiLan This system consists of a number of laptop computers (Windows) connected to a wireless Local Area Network. You need to be careful

More information

USEFUL UNIX COMMANDS

USEFUL UNIX COMMANDS cancel cat file USEFUL UNIX COMMANDS cancel print requested with lp Display the file cat file1 file2 > files Combine file1 and file2 into files cat file1 >> file2 chgrp [options] newgroup files Append

More information

Cisco Networking Academy Program Curriculum Scope & Sequence. Fundamentals of UNIX version 2.0 (July, 2002)

Cisco Networking Academy Program Curriculum Scope & Sequence. Fundamentals of UNIX version 2.0 (July, 2002) Cisco Networking Academy Program Curriculum Scope & Sequence Fundamentals of UNIX version 2.0 (July, 2002) Course Description: Fundamentals of UNIX teaches you how to use the UNIX operating system and

More information

Introduction to the UNIX Operating System and Open Windows Desktop Environment

Introduction to the UNIX Operating System and Open Windows Desktop Environment Introduction to the UNIX Operating System and Open Windows Desktop Environment Welcome to the Unix world! And welcome to the Unity300. As you may have already noticed, there are three Sun Microsystems

More information

Syntax: cd <Path> Or cd $<Custom/Standard Top Name>_TOP (In CAPS)

Syntax: cd <Path> Or cd $<Custom/Standard Top Name>_TOP (In CAPS) List of Useful Commands for UNIX SHELL Scripting We all are well aware of Unix Commands but still would like to walk you through some of the commands that we generally come across in our day to day task.

More information

Lecture 7: Machine-Level Programming I: Basics Mohamed Zahran (aka Z) mzahran@cs.nyu.edu http://www.mzahran.com

Lecture 7: Machine-Level Programming I: Basics Mohamed Zahran (aka Z) mzahran@cs.nyu.edu http://www.mzahran.com CSCI-UA.0201-003 Computer Systems Organization Lecture 7: Machine-Level Programming I: Basics Mohamed Zahran (aka Z) mzahran@cs.nyu.edu http://www.mzahran.com Some slides adapted (and slightly modified)

More information

Installing Java. Table of contents

Installing Java. Table of contents Table of contents 1 Jargon...3 2 Introduction...4 3 How to install the JDK...4 3.1 Microsoft Windows 95... 4 3.1.1 Installing the JDK... 4 3.1.2 Setting the Path Variable...5 3.2 Microsoft Windows 98...

More information

Installing C++ compiler for CSc212 Data Structures

Installing C++ compiler for CSc212 Data Structures for CSc212 Data Structures WKhoo@gc.cuny.edu Spring 2010 1 2 Testing Mac 3 Why are we not using Visual Studio, an Integrated Development (IDE)? Here s several reasons: Visual Studio is good for LARGE project.

More information

Open Source Computational Fluid Dynamics

Open Source Computational Fluid Dynamics Open Source Computational Fluid Dynamics An MSc course to gain extended knowledge in Computational Fluid Dynamics (CFD) using open source software. Teachers: Miklós Balogh and Zoltán Hernádi Department

More information

http://www.cs.northwestern.edu/academics/courses/211/html/cygwin.html

http://www.cs.northwestern.edu/academics/courses/211/html/cygwin.html 1 of 6 3/28/2010 8:04 AM Cygwin Notes Home Class Info Links Lectures Newsgroup Assignments This course uses the gcc compiler and, to a lesser extent, the Unix or Linux environment, both for consistency,

More information

Opening a Command Shell

Opening a Command Shell Opening a Command Shell Win Cmd Line 1 In WinXP, go to the Programs Menu, select Accessories and then Command Prompt. In Win7, go to the All Programs, select Accessories and then Command Prompt. Note you

More information

Hadoop Shell Commands

Hadoop Shell Commands Table of contents 1 DFShell... 3 2 cat...3 3 chgrp...3 4 chmod...3 5 chown...4 6 copyfromlocal... 4 7 copytolocal... 4 8 cp...4 9 du...4 10 dus... 5 11 expunge... 5 12 get... 5 13 getmerge... 5 14 ls...

More information

Tutorial: Using WestGrid. Drew Leske Compute Canada/WestGrid Site Lead University of Victoria

Tutorial: Using WestGrid. Drew Leske Compute Canada/WestGrid Site Lead University of Victoria Tutorial: Using WestGrid Drew Leske Compute Canada/WestGrid Site Lead University of Victoria Fall 2013 Seminar Series Date Speaker Topic 23 September Lindsay Sill Introduction to WestGrid 9 October Drew

More information

Hadoop Shell Commands

Hadoop Shell Commands Table of contents 1 FS Shell...3 1.1 cat... 3 1.2 chgrp... 3 1.3 chmod... 3 1.4 chown... 4 1.5 copyfromlocal...4 1.6 copytolocal...4 1.7 cp... 4 1.8 du... 4 1.9 dus...5 1.10 expunge...5 1.11 get...5 1.12

More information

Code::Block manual. for CS101x course. Department of Computer Science and Engineering Indian Institute of Technology - Bombay Mumbai - 400076.

Code::Block manual. for CS101x course. Department of Computer Science and Engineering Indian Institute of Technology - Bombay Mumbai - 400076. Code::Block manual for CS101x course Department of Computer Science and Engineering Indian Institute of Technology - Bombay Mumbai - 400076. April 9, 2014 Contents 1 Introduction 1 1.1 Code::Blocks...........................................

More information

The Linux Operating System and Linux-Related Issues

The Linux Operating System and Linux-Related Issues Review Questions: The Linux Operating System and Linux-Related Issues 1. Explain what is meant by the term copyleft. 2. In what ways is the Linux operating system superior to the UNIX operating system

More information

Fred Hantelmann LINUX. Start-up Guide. A self-contained introduction. With 57 Figures. Springer

Fred Hantelmann LINUX. Start-up Guide. A self-contained introduction. With 57 Figures. Springer Fred Hantelmann LINUX Start-up Guide A self-contained introduction With 57 Figures Springer Contents Contents Introduction 1 1.1 Linux Versus Unix 2 1.2 Kernel Architecture 3 1.3 Guide 5 1.4 Typographical

More information

OPERATING SYSTEM SERVICES

OPERATING SYSTEM SERVICES OPERATING SYSTEM SERVICES USER INTERFACE Command line interface(cli):uses text commands and a method for entering them Batch interface(bi):commands and directives to control those commands are entered

More information

UNIX - FILE SYSTEM BASICS

UNIX - FILE SYSTEM BASICS http://www.tutorialspoint.com/unix/unix-file-system.htm UNIX - FILE SYSTEM BASICS Copyright tutorialspoint.com A file system is a logical collection of files on a partition or disk. A partition is a container

More information

Programming from the Ground Up

Programming from the Ground Up Programming from the Ground Up Jonathan Bartlett Edited by Dominick Bruno, Jr. Programming from the Ground Up by Jonathan Bartlett Edited by Dominick Bruno, Jr. Copyright 2003 by Jonathan Bartlett Permission

More information

CS 170, Section 000, Fall 2009

CS 170, Section 000, Fall 2009 Lecture 3: Unix Recap, Java (cont d) CS 170, Section 000, Fall 2009 3 September 2009 Lecture Plan Logistics (important announcements) Lab1 postmortem Unix: commands, examples, resources Java recap from

More information

File System Shell Guide

File System Shell Guide Table of contents 1 Overview...3 1.1 cat... 3 1.2 chgrp... 3 1.3 chmod... 3 1.4 chown... 4 1.5 copyfromlocal...4 1.6 copytolocal...4 1.7 count... 4 1.8 cp... 5 1.9 du... 5 1.10 dus...5 1.11 expunge...6

More information

Setting up Radmind For an OSX Public Lab

Setting up Radmind For an OSX Public Lab Setting up Radmind For an OSX Public Lab Radmind consists of a set of about ten Unix Commands installed on both the client and server machines. A GUI application, called Radmind Assistant, provides a simplified

More information

Simple C Programs. Goals for this Lecture. Help you learn about:

Simple C Programs. Goals for this Lecture. Help you learn about: Simple C Programs 1 Goals for this Lecture Help you learn about: Simple C programs Program structure Defining symbolic constants Detecting and reporting failure Functionality of the gcc command Preprocessor,

More information

CS3600 SYSTEMS AND NETWORKS

CS3600 SYSTEMS AND NETWORKS CS3600 SYSTEMS AND NETWORKS NORTHEASTERN UNIVERSITY Lecture 2: Operating System Structures Prof. Alan Mislove (amislove@ccs.neu.edu) Operating System Services Operating systems provide an environment for

More information

Introduction to Mac OS X

Introduction to Mac OS X Introduction to Mac OS X The Mac OS X operating system both a graphical user interface and a command line interface. We will see how to use both to our advantage. Using DOCK The dock on Mac OS X is the

More information

Version Control with Subversion and Xcode

Version Control with Subversion and Xcode Version Control with Subversion and Xcode Author: Mark Szymczyk Last Update: June 21, 2006 This article shows you how to place your source code files under version control using Subversion and Xcode. By

More information

TEL2821/IS2150: INTRODUCTION TO SECURITY Lab: Operating Systems and Access Control

TEL2821/IS2150: INTRODUCTION TO SECURITY Lab: Operating Systems and Access Control TEL2821/IS2150: INTRODUCTION TO SECURITY Lab: Operating Systems and Access Control Version 3.4, Last Edited 9/10/2011 Students Name: Date of Experiment: Read the following guidelines before working in

More information

L01 Introduction to the Unix OS

L01 Introduction to the Unix OS Geophysical Computing L01-1 1. What is Unix? L01 Introduction to the Unix OS Unix is an operating system (OS): it manages the way the computer works by driving the processor, memory, disk drives, keyboards,

More information

Basic Hadoop Programming Skills

Basic Hadoop Programming Skills Basic Hadoop Programming Skills Basic commands of Ubuntu Open file explorer Basic commands of Ubuntu Open terminal Basic commands of Ubuntu Open new tabs in terminal Typically, one tab for compiling source

More information

ELEC 377. Operating Systems. Week 1 Class 3

ELEC 377. Operating Systems. Week 1 Class 3 Operating Systems Week 1 Class 3 Last Class! Computer System Structure, Controllers! Interrupts & Traps! I/O structure and device queues.! Storage Structure & Caching! Hardware Protection! Dual Mode Operation

More information

For a 64-bit system. I - Presentation Of The Shellcode

For a 64-bit system. I - Presentation Of The Shellcode #How To Create Your Own Shellcode On Arch Linux? #Author : N3td3v!l #Contact-mail : 4nonymouse@usa.com #Website : Nopotm.ir #Spcial tnx to : C0nn3ct0r And All Honest Hackerz and Security Managers I - Presentation

More information

Basic C Shell. helpdesk@stat.rice.edu. 11th August 2003

Basic C Shell. helpdesk@stat.rice.edu. 11th August 2003 Basic C Shell helpdesk@stat.rice.edu 11th August 2003 This is a very brief guide to how to use cshell to speed up your use of Unix commands. Googling C Shell Tutorial can lead you to more detailed information.

More information

Chapter 2 Text Processing with the Command Line Interface

Chapter 2 Text Processing with the Command Line Interface Chapter 2 Text Processing with the Command Line Interface Abstract This chapter aims to help demystify the command line interface that is commonly used in UNIX and UNIX-like systems such as Linux and Mac

More information

A Crash Course on UNIX

A Crash Course on UNIX A Crash Course on UNIX UNIX is an "operating system". Interface between user and data stored on computer. A Windows-style interface is not required. Many flavors of UNIX (and windows interfaces). Solaris,

More information

RECOVER ( 8 ) Maintenance Procedures RECOVER ( 8 )

RECOVER ( 8 ) Maintenance Procedures RECOVER ( 8 ) NAME recover browse and recover NetWorker files SYNOPSIS recover [-f] [-n] [-q] [-u] [-i {nnyyrr}] [-d destination] [-c client] [-t date] [-sserver] [dir] recover [-f] [-n] [-u] [-q] [-i {nnyyrr}] [-I

More information

The Basics of FTP. Basic Order of Operations: Commands: FTP (File Transfer Protocol) allows a user to transfer files to/from a remote network site.

The Basics of FTP. Basic Order of Operations: Commands: FTP (File Transfer Protocol) allows a user to transfer files to/from a remote network site. The Basics of FTP FTP (File Transfer Protocol) allows a user to transfer files to/from a remote network site. Topics: Basic Order of Operations Commands Example Screen Shots Basic Order of Operations:

More information

Beginners Shell Scripting for Batch Jobs

Beginners Shell Scripting for Batch Jobs Beginners Shell Scripting for Batch Jobs Evan Bollig and Geoffrey Womeldorff Before we begin... Everyone please visit this page for example scripts and grab a crib sheet from the front http://www.scs.fsu.edu/~bollig/techseries

More information

Operating System Structure

Operating System Structure Operating System Structure Lecture 3 Disclaimer: some slides are adopted from the book authors slides with permission Recap Computer architecture CPU, memory, disk, I/O devices Memory hierarchy Architectural

More information

Programming from the Ground Up

Programming from the Ground Up Programming from the Ground Up Jonathan Bartlett Edited by Dominick Bruno, Jr. Programming from the Ground Up by Jonathan Bartlett Edited by Dominick Bruno, Jr. Copyright 2003 by Jonathan Bartlett Permission

More information

Extreme computing lab exercises Session one

Extreme computing lab exercises Session one Extreme computing lab exercises Session one Miles Osborne (original: Sasa Petrovic) October 23, 2012 1 Getting started First you need to access the machine where you will be doing all the work. Do this

More information

Introduction to Running Hadoop on the High Performance Clusters at the Center for Computational Research

Introduction to Running Hadoop on the High Performance Clusters at the Center for Computational Research Introduction to Running Hadoop on the High Performance Clusters at the Center for Computational Research Cynthia Cornelius Center for Computational Research University at Buffalo, SUNY 701 Ellicott St

More information

How To Run Linux On Windows 7 (For A Non-Privileged User) On A Windows 7 Computer (For Non-Patty) On Your Computer (Windows) On An Unix Computer (Unix) On Windows) On The Same

How To Run Linux On Windows 7 (For A Non-Privileged User) On A Windows 7 Computer (For Non-Patty) On Your Computer (Windows) On An Unix Computer (Unix) On Windows) On The Same Working from Home Tools and Technologies for Improving Your Programming Environment Daniel J. Hood danielhood@umbc.edu Overview Tools for MS Windows (and others OSs) SSH SCP X Windows Tunneling X Connections

More information

Creating a Java application using Perfect Developer and the Java Develo...

Creating a Java application using Perfect Developer and the Java Develo... 1 of 10 15/02/2010 17:41 Creating a Java application using Perfect Developer and the Java Development Kit Introduction Perfect Developer has the facility to execute pre- and post-build steps whenever the

More information

Step By Step Guide for Starting "Hello, World!" on OpenWRT

Step By Step Guide for Starting Hello, World! on OpenWRT Step By Step Guide for Starting "Hello, World!" on OpenWRT Installation. All actions of this step should be performed by a non-root user. Directories with spaces in their full path are not allowed. 1.

More information

Introduction to Unix Tutorial

Introduction to Unix Tutorial Topics covered in this Tutorial Introduction to Unix Tutorial 1. CSIF Computer Network 2. Local Logging in. 3. Remote computer access: ssh 4. Navigating the UNIX file structure: cd, ls, and pwd 5. Making

More information

HDFS File System Shell Guide

HDFS File System Shell Guide Table of contents 1 Overview...3 1.1 cat... 3 1.2 chgrp... 3 1.3 chmod... 3 1.4 chown... 4 1.5 copyfromlocal...4 1.6 copytolocal...4 1.7 count... 4 1.8 cp... 4 1.9 du... 5 1.10 dus...5 1.11 expunge...5

More information

Introduction to Linux operating system. module Basic Bioinformatics PBF

Introduction to Linux operating system. module Basic Bioinformatics PBF Introduction to Linux operating system module Basic Bioinformatics PBF What is Linux? A Unix-like Operating System A famous open source project Free to use, distribute, modify under a compatible licence

More information

Although Mac OS X is primarily known for its GUI, the under pinnings are all Unix. This

Although Mac OS X is primarily known for its GUI, the under pinnings are all Unix. This BE Computing Web Tutorials: Server Commands Server Commands Indluded: 1. Basic Command Line Tutorial Although Mac OS X is primarily known for its GUI, the underpinnings are all Unix. This tutorial will

More information

CS2510 Computer Operating Systems Hadoop Examples Guide

CS2510 Computer Operating Systems Hadoop Examples Guide CS2510 Computer Operating Systems Hadoop Examples Guide The main objective of this document is to acquire some faimiliarity with the MapReduce and Hadoop computational model and distributed file system.

More information

Objectives. Chapter 2: Operating-System Structures. Operating System Services (Cont.) Operating System Services. Operating System Services (Cont.

Objectives. Chapter 2: Operating-System Structures. Operating System Services (Cont.) Operating System Services. Operating System Services (Cont. Objectives To describe the services an operating system provides to users, processes, and other systems To discuss the various ways of structuring an operating system Chapter 2: Operating-System Structures

More information

CPSC 226 Lab Nine Fall 2015

CPSC 226 Lab Nine Fall 2015 CPSC 226 Lab Nine Fall 2015 Directions. Our overall lab goal is to learn how to use BBB/Debian as a typical Linux/ARM embedded environment, program in a traditional Linux C programming environment, and

More information

A GENERIC PURPOSE, CROSS-PLATFORM, HIGH EXTENSIBLE VIRTUAL MACHINE. John Vlachoyiannis darksun4@gmail.com

A GENERIC PURPOSE, CROSS-PLATFORM, HIGH EXTENSIBLE VIRTUAL MACHINE. John Vlachoyiannis darksun4@gmail.com A GENERIC PURPOSE, CROSS-PLATFORM, HIGH EXTENSIBLE VIRTUAL MACHINE John Vlachoyiannis darksun4@gmail.com Panagiotis Kenterlis, P.Kenterlis@mprolab.teipir.gr John N.Ellinas jellin@teipir.gr Department of

More information

Introduction to Operating Systems

Introduction to Operating Systems Introduction to Operating Systems It is important that you familiarize yourself with Windows and Linux in preparation for this course. The exercises in this book assume a basic knowledge of both of these

More information

Automated Offsite Backup with rdiff-backup

Automated Offsite Backup with rdiff-backup Automated Offsite Backup with rdiff-backup Michael Greb 2003-10-21 Contents 1 Overview 2 1.1 Conventions Used........................................... 2 2 Setting up SSH 2 2.1 Generating SSH Keys........................................

More information

Extreme computing lab exercises Session one

Extreme computing lab exercises Session one Extreme computing lab exercises Session one Michail Basios (m.basios@sms.ed.ac.uk) Stratis Viglas (sviglas@inf.ed.ac.uk) 1 Getting started First you need to access the machine where you will be doing all

More information

Lesson 06: Basics of Software Development (W02D2

Lesson 06: Basics of Software Development (W02D2 Lesson 06: Basics of Software Development (W02D2) Balboa High School Michael Ferraro Lesson 06: Basics of Software Development (W02D2 Do Now 1. What is the main reason why flash

More information

FTP: Transferring Files to and from Home and UCS

FTP: Transferring Files to and from Home and UCS FTP and Telnet: 2003.01.02 1 FTP: Transferring Files to and from Home and UCS This is a tutorial on using the FTP utility built into all Windows operating systems from '95 on. If you prefer to use an FTP

More information

Code Estimation Tools Directions for a Services Engagement

Code Estimation Tools Directions for a Services Engagement Code Estimation Tools Directions for a Services Engagement Summary Black Duck software provides two tools to calculate size, number, and category of files in a code base. This information is necessary

More information