Introduction to Using OSCER s Linux Cluster Supercomputer This exercise will help you learn to use Sooner, the

Size: px
Start display at page:

Download "Introduction to Using OSCER s Linux Cluster Supercomputer This exercise will help you learn to use Sooner, the"

Transcription

1 Introduction to Using OSCER s Linux Cluster Supercomputer This exercise will help you learn to use Sooner, the Linux cluster supercomputer administered by the OU Supercomputing Center for Education & Research (OSCER), a division of the University of Oklahoma (OU) Information Technology (IT). Actions and commands that you should perform or type are in the computer boldface font. An account has been set up for you. Your user name is denoted here as yourusername, but may actually be of the form mpi###, where ### is a specific user ID number. Or, if you re a permanent OSCER user, your user name may be tied to your name; for example, hneeman (Henry Neeman). If you are registered in the spring 2009 instance of the Supercomputing in Plain English workshop series, but you don t yet have an account on Sooner, please send to Henry Neeman (hneeman@ou.edu). If you have any difficulty with this exercise, then please send to: support@oscer.ou.edu which reaches all OSCER staff (including Henry). The steps for this exercise are listed on the following pages. There are actually two versions of this exercise: a version in C, and a version in Fortran90. Where possible, descriptions of both will be given, but in some cases, only the C description will be given, with the Fortran90 version assumed. NOTE: We don t use Fortran77, because it s pure brain poison, but Fortran90 is a very nice language. Also, we don t use C++; instead, we assume that everyone who is comfortable in C++ will be served well enough by C. 1

2 I. LOG IN 1. From the PC of your choice (Windows, MacOS, Linux or whatever), bring up your web browser (Internet Explorer, Firefox, Opera, Safari, Chrome or whatever) and go to: install.php NOTICE the underscore in the URL, between ssh and install. 2. Following the instructions on that page, log in to: sooner.oscer.ou.edu 3. If you cannot log in to sooner.oscer.ou.edu, try logging in to one of the following: sooner1.oscer.ou.edu sooner2.oscer.ou.edu It turns out that sooner.oscer.ou.edu is an alias for these other computers; that is, when you log in to sooner.oscer.ou.edu, you ll actually get logged into one of these. 4. Once you log in, you ll get some text, and then a Unix prompt probably but not necessarily a percent sign with the cursor after it, like so: % There may be some information before the prompt character, such as the name of the computer that you ve logged in to (which may be different from sooner.oscer.ou.edu), your user name, and so on. For purposes of these materials, we ll generally use the percent sign % to indicate the Unix prompt. 5. Check the lines of text immediately above the Unix prompt. If there are lines of text that read something like: No directory /home/yourusername! Logging in with home = "/". then you should log out immediately by typing exit (followed by pressing Enter ), and then log back in. If you repeatedly have this problem, then please send to: support@oscer.ou.edu which reaches all OSCER staff (including Henry). 6. Check to be sure that you re in your home directory (a directory in Unix is like a folder in Windows, and your home directory in Unix is like your desktop in Windows): % pwd /home/yourusername This command is short for Print working directory; that is, print the full name of the directory that I m currently in. If your current working directory is just a slash (which means the root directory, which is like C:\ in Windows), rather than something like /home/yourusername then you should log out immediately by typing exit (followed by pressing Enter ), and then log back in. If you repeatedly have this problem, then please send to: support@oscer.ou.edu which reaches all OSCER staff (including Henry). 2

3 II. SET UP (FIRST TIME LOGGING IN ONLY) 1. From the PC of your choice (Windows, MacOS, Linux or whatever), bring up your web browser (Internet Explorer, Firefox, Opera, Safari, Chrome or whatever) and go to: change.php NOTICE the underscore in the URL, between password and change. 2. Follow the instructions on that page to change your OSCER password. Please note that this password change will affect only your accounts on OSCER machines, not anywhere else (including not affecting any other OU IT accounts if you re at OU). 3. At the Unix prompt, type exactly the bold text below, excluding the percent sign, which indicates the Unix prompt (all commands MUST be followed by pressing Enter ): % cp ~hneeman/.vimrc ~ This command means: Copy the file named.vimrc that s in Henry s home directory into my home directory. You WON T have to do this for future logins. NOTICE: The Unix copy command is cp. The first filename after cp is the source (the thing that you re making a copy of); the second is the destination (the name and/or location of the copy). Henry s username on OSCER supercomputers is hneeman. The filename.vimrc begins with a period (very important). The filename is pronounced dot vim-are-see. In Unix, filenames are case sensitive, meaning that it matters whether you use upper case (capital) or lower case (small) for each letter in a filename. In Unix, filename pieces are separated by slashes, NOT by backslashes as in Windows. The symbol (known as a tilde, pronounced TILL-duh ) denotes your home directory (another way to denote your home directory is yourusername). The substring hneeman means the home directory of the user named hneeman. If for some reason this doesn t work, try % cp /home/hneeman/.vimrc /home/yourusername 4. Type the following command: % cp ~hneeman/.nanorc ~ You WON T have to do this for future logins. 5. Create a subdirectory named SIPE2009 exercises, like so: % mkdir SIPE2009 exercises NOTICE: In the subdirectory name SIPE2009 exercises, the SIPE2009 MUST BE CAPITALIZED; that is, the directory s name is capital-s capital-i capital-p capital-e underscore exercises with no spaces or other characters in between. This command means: Create a directory named SIPE2009 exercises as a subdirectory inside the directory that I m currently in (it s like creating a new folder named SIPE2009 exercises on your desktop in Windows). You WON T have to do this for future logins. 3

4 6. Confirm that you have successfully created your SIPE2009 exercises directory by listing the contents of the current working directory: % ls SIPE2009 exercises This command means: List the names of the files and subdirectories in my current working directory. NOTICE that the command is ell ess that is, small-l small-s rather than one ess and that ls is short for list. 7. Set the permissions on your SIPE2009 exercises directory so that only you can access it: % chmod u=rwx,go= SIPE2009 exercises This command means: Change the mode (list of permissions) on my subdirectory named SIPE2009 exercises so that I (the user) can read files in it, write files in it, and go into (execute) it, but nobody else can. Your SIPE2009 exercises directory is now accessible only to you. The only other people who can access it are the system administrators (sysadmins for short) of this Linux cluster supercomputer; that is, OSCER operations staff (excluding Henry). You WON T have to do this for future logins. 8. Log out of the Linux cluster supercomputer by typing exit. Once you have completed the setup steps in this section, you WON T have to do them again when you log in later. 4

5 III. COPY HENRY S Intro DIRECTORY INTO YOUR SIPE2009 exercises DIRECTORY 1. Log in again. 2. Confirm that you re in your home directory: % pwd /home/yourusername 3. Check that you have a SIPE2009 exercises subdirectory inside your home directory: % ls SIPE2009_exercises 4. Go into your SIPE2009 exercises subdirectory: % cd SIPE2009 exercises This command means: Change the working directory to SIPE2009 exercises, which is a subdirectory of the current working directory. (This is like double-clicking on a folder icon in Windows.) 5. Confirm that you re in your SIPE2009 exercises subdirectory: % pwd /home/yourusername/sipe2009_exercises 6. See what files or subdirectories (if any) are in the current working directory: % ls You may get no output, just the Unix prompt. 7. SIDEBAR: To learn more about a particular Unix command, type: % man commandname For example, try % man chmod which will give you the online manual page for the chmod command. The output of man goes through another command, more, which shows one screenful at a time. To get the next screenful, press the spacebar; to get the next line, press Enter. To quit the more command, press Q. 8. Copy the subdirectory named Intro from Henry s SIPE2009 exercises directory into your SIPE2009 exercises directory: % cp -r ~hneeman/sipe2009 exercises/intro ~/SIPE2009 exercises/ This command means: Copy the subdirectory named Intro of the directory named SIPE2009 exercises under the home directory of user hneeman into my directory SIPE2009 exercises under my home directory. 9. Confirm that the Intro subdirectory was copied into your SIPE2009 exercises directory: % ls Intro 10. Go into your Intro subdirectory: % cd Intro 11. Confirm that you re in your Intro subdirectory: % pwd /home/yourusername/sipe2009_exercises/intro 5

6 12. See what files or subdirectories (if any) are in the current working directory (Intro): % ls C Fortran Go into either your C subdirectory or your Fortran90 subdirectory: % cd C OR % cd Fortran Confirm that you re in your C or Fortran90 subdirectory: % pwd /home/yourusername/sipe2009_exercises/intro/c OR the output of the pwd command might be: % pwd /home/yourusername/sipe2009_exercises/intro/fortran See what files or subdirectories (if any) are in the current working directory: % ls makefile my_number.bsub my_number.c my_number_input.txt OR the source file might be named my number.f90 instead of my number.c. 6

7 IV. EDIT THE BATCH SCRIPT FILE TO CREATE YOUR OWN UNIQUE VERSION 1. Before you can run Henry s original version of the program, you need to modify your copy of the batch script file my number.bsub to create a version that s uniquely yours. Using your preferred Unix text editor (whether nano, pico, vim, vi, emacs or whatever), edit your copy of my number.bsub. For example, if you re using nano, then the edit command would be: % nano my number.bsub This command means: Edit the text in the file named my number.bsub that s in my current working directory, using the text editor program named nano. If you need help using nano, please send to support@oscer.ou.edu. 2. In nano, notice the little help messages at the bottom of the screen: ^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos ^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell For example, consider ˆW Where is This means that you should press Ctrl - W (the caret ˆ indicates the Ctrl key) to search for a particular string of characters. Another example: ˆC Cur Pos is short for Cursor Position and causes nano to tell you what line number the cursor is located at. Another example: ˆK Cut Text means delete the line that the cursor is currently on. 3. Using the text editor, make the following changes to my number.bsub: (a) Everywhere throughout the file, change yourusername to your user name (which might be of the form mpi###, or perhaps is based on your name). THIS IS EXTREMELY IMPORTANT! (b) Everywhere throughout the file, change your address@yourinstitution.edu to your address. THIS IS EXTREMELY IMPORTANT! 4. Every few minutes while you re editing, you should save the work that you ve done so far, in case your work is interrupted by a computer crashing. In nano, type Ctrl - O (the letter oh), at which point nano will ask you, near the bottom of the screen: File Name to write : my_number.bsub That is, nano wants to know what filename to save the edited text into, with a default filename of my number.bsub). Press Enter to save to the default filename my number.bsub. 5. The lines of text in the batch script file my number.bsub should be less than 80 characters long, and ideally at most 72 characters long. (Your PuTTY window should be 80 characters wide.) 7

8 6. Some text editors, including nano, try to help keep text lines short, by breaking a long line into multiple short lines. For example, nano might break a line like #BSUB -o /home/yourusername/sipe2009_exercises/intro/c/my_number_%j_stdout.txt into two separate lines: #BSUB -o /home/yourusername/sipe2009_exercises/intro/c/my_number_%j_stdout.txt That is, nano automatically puts a carriage return when the line starts getting too long for nano s taste. Unfortunately, the batch scheduler (LSF, for Load Share Facility) will consider this to be an error. Why? Because LSF cannot allow an individual batch directive that is, a line starting with #BSUB to use more than one line. So, you ll need to correct any such occurrences. 7. After you ve finished editing, go back up to the top of the batch script file, and CAREFULLY READ THE ENTIRE BATCH SCRIPT FILE FROM START TO FINISH. This will give you a much clearer understanding of what batch computing is and how it works. 8. Understanding batch computing: As an analogy, imagine that you re at a football game and you want a drink. You get up and walk to the concession stand. If there are a lot of people at the concession stand, then you re going to have to wait a while before a server serves you, but if you re the only person in line, or more generally if there are at least as many servers behind the counter as customers lined up to buy, then you ll be served quickly. Batch computing is analogous, except that instead of food and drink, you and the other users want your jobs to be run, and instead of food servers, the servers are computers that can run jobs. In the case of Sooner, OSCER s big Linux cluster supercomputer, the number of users is roughly 500, and the number of servers (computers) is also roughly 500 but most users want to use many computers at the same time. The only way to make this work is for a computer program known as a scheduler in this case, LSF to decide whose jobs run on which computers, and when. Compare getting food at a football game to getting food at home, where you just walk up to your fridge or cupboard or whatever, and take out what you want. But if you ve got hundreds of people getting food, that method won t work: it doesn t scale to hundreds of people sharing one source of food, because you can t fit all of them in front of the one fridge; instead, everyone has to wait their turn at the counter, and work with a server to get served. Likewise with computing: your normal way of interacting with your laptop won t work when hundreds of people are sharing one source of computing. 9. After you ve finished reading the batch script file, exit the text editor. For example, in nano, type Ctrl - X. If you have made any changes since the last time you typed Ctrl - O, then nano will ask you, near the bottom of the screen, Save modified buffer (ANSWERING "No" WILL DESTROY CHANGES)? To save your most recent changes to the file (which is probably what you want to do), press the Y key; to avoid saving your most recent changes, press the N key. After that, nano will behave the same as if you had typed Ctrl - O. 8

9 V. LOOK AT, MAKE (COMPILE) AND RUN THE ORIGINAL VERSION OF THE PROGRAM 1. For your own understanding, look at the contents of the source file: % cat my_number.c OR: % cat my_number.f90 This command means: Output the contents of the text file named my number.c (or my number.f90) to the terminal screen. NOTICE that the command to output the contents of a text file to the terminal screen without using the more command is cat, which is short for concatenate, a word that means output one text file after another in sequence. The output of the cat command goes to the terminal screen, and in this case, we are only concatenating a single text file, so we re simply outputting the text file s contents to the terminal screen. If you re using PuTTY as your SSH client, and the contents of the file exceeds the height of the PuTTY window, then you can scroll up or down using the scrollbar on the right side of the window; most other SSH clients have similar capability. 2. For your own understanding, look at the contents of the makefile: % cat makefile 3. Make (compile) the executable program for Henry s original version of my number.c (or my number.f90): % make my_number gcc -O -c my_number.c gcc -O -o my_number my_number.o (It could be the case that the compiler is gfortran and the source file is my number.f90.) NOTICE: In the make command, the command line argument my number is the name of the executable (the file that can actually be run) that you are making. The make command runs the C compiler gcc (or the Fortran90 compiler gfortran) to compile the source file named my number.c (or my number.f90). In the compile command, the command line option -o my number indicates that my number is to be the name of the executable; if that option had been left out, then by default the name of the executable would be a.out ( the output of the assembler ), WHICH WOULD BE BAD, because then the executable s filename wouldn t explain the executable s purpose. 4. Submit the batch script file my number.bsub to the batch scheduler: % bsub < my number.bsub NOTICE the less than symbol < which is EXTREMELY IMPORTANT. You should get back output something like this: Job <######> is submitted to queue <normal>. where ###### is replaced by the batch job ID for the batch job that you ve just submitted. 9

10 5. Check the status of your batch job: % bjobs You ll get one or the other of the following two outputs, either: No unfinished job found OR: JOBID USER STAT QUEUE FROM_HOST EXEC_HOST JOB_NAME SUBMIT_TIME ###### yourusername PEND debug sooner1 my_number Jan 23 21:56 where ###### is replaced by a batch job ID number, and yourusername is replaced by your user name. 6. You may need to check the status of your batch job repeatedly, using the bjobs command, until it runs to completion. You ll know that it has finished running when it no longer appears in the list of your batch jobs (in which case it may say No unfinished job found ). 7. Once your job has finished running, find the standard output and standard error files from your job: % ls -ltr NOTICE that the command is ell ess space hyphen ell tee are that is, small-l small-s blank hyphen small-l small-t small-r rather than one ess or one tee are and that ls is short for list and -ltr is short for long detailed listing, sorted by time of most recent modification, in reverse order so that the most recently modified file is at the bottom. Using this command, you should see files named my number ###### stdout.txt and my number ###### stderr.txt, (where ###### is replaced by the batch job ID). These files should contain the output of my number. Ideally, the size of my number ###### stderr.txt should be zero. 8. Look at the contents of the standard output file: % cat my_number_######_stdout.txt (where ###### is replaced by the batch job ID). 9. If this run had ANY problems, then send to support@oscer.ou.edu which reaches all OSCER staff (including Henry), and attach the following files: makefile my number.c my number.bsub my number ###### stdout.txt my number ###### stderr.txt 10. Congratulations! You ve just run your first batch job. 10

11 VI. EDIT THE C SOURCE FILE TO CREATE YOUR OWN UNIQUE VERSION 1. Now that you ve run Henry s original version of the program, it s time to modify your copy of the source file my number.c (or my number.f90) to create a version that s uniquely yours. Using your preferred Unix text editor (whether nano, pico, vim, vi, emacs or whatever), edit your copy of my number.c (or my number.f90). For example, if you re using nano, then the edit command would be: % nano my number.c OR % nano my number.f90 2. Using the text editor, make the following changes to my number.c (or my number.f90): (a) In the declaration section, change the constant values assigned to minimum number, maximum number, close distance and computers number. You may select any integer values that you want, as long as they are different from 1, 5, 10 and 1 respectively, and minimum number < computers number < maximum number, and they are sufficiently spread out that you can actually do the runs properly. (b) In the execution section (also known as the body of the program), change the following sequences of character text to your own words: i. Hey! ii. That s amazing! iii. Close, but no cigar. iv. Bzzzt! Not even close. 3. Every few minutes while you re editing, you should save the work that you ve done so far, in case your work is interrupted by a computer crashing. In nano, type Ctrl - O (the letter oh), at which point nano will ask you, near the bottom of the screen: File Name to write : my_number.c OR: File Name to write : my_number.f90 That is, nano wants to know what filename to save the edited text into, with a default filename of my number.c (or my number.f90). Press Enter to save to the default filename my number.c (or my number.f90). 11

12 4. A character string literal constant, also known as a character string literal or a string literal for short, is a sequence of characters between a pair of double quotes. For example, in the C printf statement printf("this is a printf statement.\n"); the following is a string literal: "This is a printf statement.\n" Likewise, in the Fortran90 PRINT statement PRINT *, "This is a PRINT statement." the following is a string literal: "This is a PRINT statement." We say that the pair of double quotes delimits the sequence of characters in the string literal. Note that, in C, the \n at the end of the string literal tells the program to print a carriage return (also known as a newline) at the end of the line of output text. (In Fortran90, the carriage return is implied by the end of the PRINT statement.) 5. The lines of text in the source file my number.c (or my number.f90) should be less than 80 characters long, and ideally no more than 72 characters long. (Your PuTTY window should be 80 characters wide.) 6. Some text editors, including nano, try to help keep text lines short, by breaking a long line into multiple short lines. For example, nano might break a line like printf("this is a long line and nano will probably break part of it off.\n"); into two separate lines: printf("this is a long line and nano will probably break part of it off.\n"); That is, nano automatically puts a carriage return when the line starts getting too long for nano s taste. Unfortunately, the C compiler (or the Fortran90 compiler) will consider this to be an error. Why? Because C (or Fortran90) cannot allow an individual string literal to use more than one line (in Fortran90, there s a goofy way to do it, but it s bad practice). So, the correct way to write the above example is: printf("this is a long line and nano will probably"); printf(" break part of it off.\n"); OR: PRINT *, "This is a long line and nano will probably" PRINT *, " break part of it off." 12

13 7. Like the lines of source text, the lines of output text should be less than 80 characters long, and ideally no more than 72 characters long. You can break a long line of output text into shorter pieces by making it into two printf (or PRINT) statements. For example: printf("why you big old stinker! That s not between %d and %d!\n", minimum_number, maximum_number); This single printf statement can be converted into two printf statements, like so: printf("why you big old stinker! That s not between\n"); printf(" %d and %d!\n", minimum_number, maximum_number); Or, in Fortran90: PRINT *, "Why you big old stinker! That s not between" PRINT *, minimum_number, " and ", maximum_number, "!" 8. After you ve finished editing, exit the text editor. For example, in nano, type Ctrl - X. If you have made any changes since the last time you typed Ctrl - O, then nano will ask you, near the bottom of the screen, Save modified buffer (ANSWERING "No" WILL DESTROY CHANGES)? To save your most recent changes to the file (which is probably what you want to do), press the Y key; to avoid saving your most recent changes, press the N key. After that, nano will behave the same as if you had typed Ctrl - O. 9. Edit the input file my number input.txt to replace the original input values with input values relevant to your new unique version of the program, specifically: (a) an integer value less than your value for minimum number (b) an integer value greater than your value for maximum number (c) an integer value between your value for minimum number and your value for maximum number (inclusive), but far from your value for computers number (d) an integer value close to your value for computers number (that is, within your value for close distance of your value for computers number) (e) your value for computers number 13

14 VII. MAKE (COMPILE), RUN AND DEBUG YOUR OWN UNIQUE VERSION 1. Make (compile) your own unique version of the executable program: % make my_number gcc -O -c my_number.c gcc -O -o my_number my_number.o (It could be the case that the compiler is gfortran and the source file is my number.f90.) 2. If the program doesn t compile, then you ll need to edit it and figure out where things went wrong. In the worst case, if you re totally stumped, then copy the original from Henry s directory again, and start editing from the beginning. 3. Submit the batch script file my number.bsub to the batch scheduler: % bsub < my number.bsub NOTICE the less than symbol < which is EXTREMELY IMPORTANT. You should get back output something like this: Job <######> is submitted to queue <normal>. where ###### is replaced by the batch job ID for the batch job that you ve just submitted. 4. Check the status of your batch job: % bjobs You ll get one or the other of the following two outputs, either: No unfinished job found OR: JOBID USER STAT QUEUE FROM_HOST EXEC_HOST JOB_NAME SUBMIT_TIME ###### yourusername PEND debug sooner1 my_number Jan 23 21:56 where ###### is replaced by a batch job ID number, and yourusername is replaced by your user name. 5. You may need to check the status of your batch job repeatedly, using the bjobs command, until it runs to completion. You ll know that it has finished running when it no longer appears in the list of your batch jobs (in which case it may say No unfinished job found ). 6. Find the standard output and standard error files from your job: % ls -ltr NOTICE that the command is ell ess space hyphen ell tee are that is, small-l small-s blank hyphen small-l small-t small-r rather than one ess or one tee are and that ls is short for list and -ltr is short for long detailed listing, sorted by time of most recent modification, in reverse order so that the most recently modified is at the bottom. Using this command, you should see files named my number ###### stdout.txt and my number ###### stderr.txt, (where ###### is replaced by the batch job ID). These files should contain the output of my number. Ideally, the size of my number ###### stderr.txt should be zero. 7. Look at the contents of the standard output file: % cat my_number_######_stdout.txt (where ###### is replaced by the batch job ID). 8. Congratulations! You ve just completed this exercise. 14

CS : Programming for Non-majors, Spring 2003 Programming Project #1: Thinking of a Number Due by 10:20am Monday January

CS : Programming for Non-majors, Spring 2003 Programming Project #1: Thinking of a Number Due by 10:20am Monday January CS 1313 010: Programming for Non-majors, Spring 2003 Programming Project #1: Thinking of a Number Due by 10:20am Monday January 27 2003 http://cs1313.ou.edu/ This first assignment will help you learn to

More information

Exercise: Calling LAPACK

Exercise: Calling LAPACK Exercise: Calling LAPACK In this exercise, we ll use the same conventions and commands as in the batch computing exercise. You should refer back to the batch computing exercise description for detai on

More information

CS : Programming for Non-majors, Spring 2018 Programming Project #1: Thinking of a Number Due by 10:20am Wednesday January

CS : Programming for Non-majors, Spring 2018 Programming Project #1: Thinking of a Number Due by 10:20am Wednesday January CS 1313 010: Programming for Non-majors, Spring 2018 Programming Project #1: Thinking of a Number Due by 10:20am Wednesday January 31 2018 This first assignment will help you learn to use the Linux computers

More information

Intro to HPC Exercise

Intro to HPC Exercise Intro to HPC Exercise Lab Exercise: Introduction to HPC The assumption is that you have already tested your Amazon Web Service Elastic Compute Cloud (EC2) virtual machines chosen for the LCI hands on exercises.

More information

CS : Computer Programming, Spring 2000 Programming Project #1: Thinking of a Number Due in class Thursday 27 January 2000

CS : Computer Programming, Spring 2000 Programming Project #1: Thinking of a Number Due in class Thursday 27 January 2000 CS 1313 010: Computer Programming, Spring 2000 Programming Project #1: Thinking of a Number Due in class Thursday 27 January 2000 For online help check the class website http://www.ecn.ou.edu/cs1313010/

More information

Lab 1 Introduction to UNIX and C

Lab 1 Introduction to UNIX and C Name: Lab 1 Introduction to UNIX and C This first lab is meant to be an introduction to computer environments we will be using this term. You must have a Pitt username to complete this lab. NOTE: Text

More information

Intermediate Programming, Spring Misha Kazhdan

Intermediate Programming, Spring Misha Kazhdan 600.120 Intermediate Programming, Spring 2017 Misha Kazhdan Outline Unix/Linux command line Basics of the Emacs editor Compiling and running a simple C program Cloning a repository Connecting to ugrad

More information

Lab 1 Introduction to UNIX and C

Lab 1 Introduction to UNIX and C Name: Lab 1 Introduction to UNIX and C This first lab is meant to be an introduction to computer environments we will be using this term. You must have a Pitt username to complete this lab. The doc is

More information

CS : Programming for Non-majors, Fall 2018 Programming Project #2: Census Due by 10:20am Wednesday September

CS : Programming for Non-majors, Fall 2018 Programming Project #2: Census Due by 10:20am Wednesday September CS 1313 010: Programming for Non-majors, Fall 2018 Programming Project #2: Census Due by 10:20am Wednesday September 19 2018 This second assignment will introduce you to designing, developing, testing

More information

Getting started with UNIX/Linux for G51PRG and G51CSA

Getting started with UNIX/Linux for G51PRG and G51CSA Getting started with UNIX/Linux for G51PRG and G51CSA David F. Brailsford Steven R. Bagley 1. Introduction These first exercises are very simple and are primarily to get you used to the systems we shall

More information

Contents. Note: pay attention to where you are. Note: Plaintext version. Note: pay attention to where you are... 1 Note: Plaintext version...

Contents. Note: pay attention to where you are. Note: Plaintext version. Note: pay attention to where you are... 1 Note: Plaintext version... Contents Note: pay attention to where you are........................................... 1 Note: Plaintext version................................................... 1 Hello World of the Bash shell 2 Accessing

More information

CSC111 Computer Science II

CSC111 Computer Science II CSC111 Computer Science II Lab 1 Getting to know Linux Introduction The purpose of this lab is to introduce you to the command line interface in Linux. Getting started In our labs If you are in one of

More information

CS Fundamentals of Programming II Fall Very Basic UNIX

CS Fundamentals of Programming II Fall Very Basic UNIX CS 215 - Fundamentals of Programming II Fall 2012 - Very Basic UNIX This handout very briefly describes how to use Unix and how to use the Linux server and client machines in the CS (Project) Lab (KC-265)

More information

CS 215 Fundamentals of Programming II Spring 2019 Very Basic UNIX

CS 215 Fundamentals of Programming II Spring 2019 Very Basic UNIX CS 215 Fundamentals of Programming II Spring 2019 Very Basic UNIX This handout very briefly describes how to use Unix and how to use the Linux server and client machines in the EECS labs that dual boot

More information

Using the Zoo Workstations

Using the Zoo Workstations Using the Zoo Workstations Version 1.86: January 16, 2014 If you ve used Linux before, you can probably skip many of these instructions, but skim just in case. Please direct corrections and suggestions

More information

Helsinki 19 Jan Practical course in genome bioinformatics DAY 0

Helsinki 19 Jan Practical course in genome bioinformatics DAY 0 Helsinki 19 Jan 2017 529028 Practical course in genome bioinformatics DAY 0 This document can be downloaded at: http://ekhidna.biocenter.helsinki.fi/downloads/teaching/spring2017/exercises_day0.pdf The

More information

CS : Programming for Non-majors, Summer 2007 Programming Project #2: Census Due by 12:00pm (noon) Wednesday June

CS : Programming for Non-majors, Summer 2007 Programming Project #2: Census Due by 12:00pm (noon) Wednesday June CS 1313 010: Programming for Non-majors, Summer 2007 Programming Project #2: Census Due by 12:00pm (noon) Wednesday June 20 2007 This second assignment will introduce you to designing, developing, testing

More information

Practical Session 0 Introduction to Linux

Practical Session 0 Introduction to Linux School of Computer Science and Software Engineering Clayton Campus, Monash University CSE2303 and CSE2304 Semester I, 2001 Practical Session 0 Introduction to Linux Novell accounts. Every Monash student

More information

Using LINUX a BCMB/CHEM 8190 Tutorial Updated (1/17/12)

Using LINUX a BCMB/CHEM 8190 Tutorial Updated (1/17/12) Using LINUX a BCMB/CHEM 8190 Tutorial Updated (1/17/12) Objective: Learn some basic aspects of the UNIX operating system and how to use it. What is UNIX? UNIX is the operating system used by most computers

More information

CpSc 1111 Lab 1 Introduction to Unix Systems, Editors, and C

CpSc 1111 Lab 1 Introduction to Unix Systems, Editors, and C CpSc 1111 Lab 1 Introduction to Unix Systems, Editors, and C Welcome! Welcome to your CpSc 111 lab! For each lab this semester, you will be provided a document like this to guide you. This material, as

More information

Introduction to UNIX. Logging in. Basic System Architecture 10/7/10. most systems have graphical login on Linux machines

Introduction to UNIX. Logging in. Basic System Architecture 10/7/10. most systems have graphical login on Linux machines Introduction to UNIX Logging in Basic system architecture Getting help Intro to shell (tcsh) Basic UNIX File Maintenance Intro to emacs I/O Redirection Shell scripts Logging in most systems have graphical

More information

Chapter-3. Introduction to Unix: Fundamental Commands

Chapter-3. Introduction to Unix: Fundamental Commands Chapter-3 Introduction to Unix: Fundamental Commands What You Will Learn The fundamental commands of the Unix operating system. Everything told for Unix here is applicable to the Linux operating system

More information

Introduction to Linux for BlueBEAR. January

Introduction to Linux for BlueBEAR. January Introduction to Linux for BlueBEAR January 2019 http://intranet.birmingham.ac.uk/bear Overview Understanding of the BlueBEAR workflow Logging in to BlueBEAR Introduction to basic Linux commands Basic file

More information

Introduction: What is Unix?

Introduction: What is Unix? Introduction Introduction: What is Unix? An operating system Developed at AT&T Bell Labs in the 1960 s Command Line Interpreter GUIs (Window systems) are now available Introduction: Unix vs. Linux Unix

More information

Physics REU Unix Tutorial

Physics REU Unix Tutorial Physics REU Unix Tutorial What is unix? Unix is an operating system. In simple terms, its the set of programs that makes a computer work. It can be broken down into three parts. (1) kernel: The component

More information

Introduction in Unix. Linus Torvalds Ken Thompson & Dennis Ritchie

Introduction in Unix. Linus Torvalds Ken Thompson & Dennis Ritchie Introduction in Unix Linus Torvalds Ken Thompson & Dennis Ritchie My name: John Donners John.Donners@surfsara.nl Consultant at SURFsara And Cedric Nugteren Cedric.Nugteren@surfsara.nl Consultant at SURFsara

More information

Unix and C Program Development SEEM

Unix and C Program Development SEEM Unix and C Program Development SEEM 3460 1 Operating Systems A computer system cannot function without an operating system (OS). There are many different operating systems available for PCs, minicomputers,

More information

Image Sharpening. Practical Introduction to HPC Exercise. Instructions for Cirrus Tier-2 System

Image Sharpening. Practical Introduction to HPC Exercise. Instructions for Cirrus Tier-2 System Image Sharpening Practical Introduction to HPC Exercise Instructions for Cirrus Tier-2 System 2 1. Aims The aim of this exercise is to get you used to logging into an HPC resource, using the command line

More information

Oregon State University School of Electrical Engineering and Computer Science. CS 261 Recitation 1. Spring 2011

Oregon State University School of Electrical Engineering and Computer Science. CS 261 Recitation 1. Spring 2011 Oregon State University School of Electrical Engineering and Computer Science CS 261 Recitation 1 Spring 2011 Outline Using Secure Shell Clients GCC Some Examples Intro to C * * Windows File transfer client:

More information

ENCM 339 Fall 2017: Editing and Running Programs in the Lab

ENCM 339 Fall 2017: Editing and Running Programs in the Lab page 1 of 8 ENCM 339 Fall 2017: Editing and Running Programs in the Lab Steve Norman Department of Electrical & Computer Engineering University of Calgary September 2017 Introduction This document is a

More information

Session 1: Accessing MUGrid and Command Line Basics

Session 1: Accessing MUGrid and Command Line Basics Session 1: Accessing MUGrid and Command Line Basics Craig A. Struble, Ph.D. July 14, 2010 1 Introduction The Marquette University Grid (MUGrid) is a collection of dedicated and opportunistic resources

More information

Introduction to UNIX. SURF Research Boot Camp April Jeroen Engelberts Consultant Supercomputing

Introduction to UNIX. SURF Research Boot Camp April Jeroen Engelberts Consultant Supercomputing Introduction to UNIX SURF Research Boot Camp April 2018 Jeroen Engelberts jeroen.engelberts@surfsara.nl Consultant Supercomputing Outline Introduction to UNIX What is UNIX? (Short) history of UNIX Cartesius

More information

AMS 200: Working on Linux/Unix Machines

AMS 200: Working on Linux/Unix Machines AMS 200, Oct 20, 2014 AMS 200: Working on Linux/Unix Machines Profs. Nic Brummell (brummell@soe.ucsc.edu) & Dongwook Lee (dlee79@ucsc.edu) Department of Applied Mathematics and Statistics University of

More information

Carnegie Mellon. Linux Boot Camp. Jack, Matthew, Nishad, Stanley 6 Sep 2016

Carnegie Mellon. Linux Boot Camp. Jack, Matthew, Nishad, Stanley 6 Sep 2016 Linux Boot Camp Jack, Matthew, Nishad, Stanley 6 Sep 2016 1 Connecting SSH Windows users: MobaXterm, PuTTY, SSH Tectia Mac & Linux users: Terminal (Just type ssh) andrewid@shark.ics.cs.cmu.edu 2 Let s

More information

Table Of Contents. 1. Zoo Information a. Logging in b. Transferring files 2. Unix Basics 3. Homework Commands

Table Of Contents. 1. Zoo Information a. Logging in b. Transferring files 2. Unix Basics 3. Homework Commands Table Of Contents 1. Zoo Information a. Logging in b. Transferring files 2. Unix Basics 3. Homework Commands Getting onto the Zoo Type ssh @node.zoo.cs.yale.edu, and enter your netid pass when prompted.

More information

CS 460 Linux Tutorial

CS 460 Linux Tutorial CS 460 Linux Tutorial http://ryanstutorials.net/linuxtutorial/cheatsheet.php # Change directory to your home directory. # Remember, ~ means your home directory cd ~ # Check to see your current working

More information

Oxford University Computing Services. Getting Started with Unix

Oxford University Computing Services. Getting Started with Unix Oxford University Computing Services Getting Started with Unix Unix c3.1/2 Typographical Conventions Listed below are the typographical conventions used in this guide. Names of keys on the keyboard are

More information

CENG 334 Computer Networks. Laboratory I Linux Tutorial

CENG 334 Computer Networks. Laboratory I Linux Tutorial CENG 334 Computer Networks Laboratory I Linux Tutorial Contents 1. Logging In and Starting Session 2. Using Commands 1. Basic Commands 2. Working With Files and Directories 3. Permission Bits 3. Introduction

More information

Introduction to Linux Workshop 1

Introduction to Linux Workshop 1 Introduction to Linux Workshop 1 The George Washington University SEAS Computing Facility Created by Jason Hurlburt, Hadi Mohammadi, Marco Suarez hurlburj@gwu.edu Logging In The lab computers will authenticate

More information

Introduction to the Linux Command Line

Introduction to the Linux Command Line Introduction to the Linux Command Line May, 2015 How to Connect (securely) ssh sftp scp Basic Unix or Linux Commands Files & directories Environment variables Not necessarily in this order.? Getting Connected

More information

Introduction to Linux

Introduction to Linux Introduction to Linux The command-line interface A command-line interface (CLI) is a type of interface, that is, a way to interact with a computer. Window systems, punched cards or a bunch of dials, buttons

More information

Linux Tutorial. Ken-ichi Nomura. 3 rd Magics Materials Software Workshop. Gaithersburg Marriott Washingtonian Center November 11-13, 2018

Linux Tutorial. Ken-ichi Nomura. 3 rd Magics Materials Software Workshop. Gaithersburg Marriott Washingtonian Center November 11-13, 2018 Linux Tutorial Ken-ichi Nomura 3 rd Magics Materials Software Workshop Gaithersburg Marriott Washingtonian Center November 11-13, 2018 Wireless Network Configuration Network Name: Marriott_CONFERENCE (only

More information

Basic Survival UNIX.

Basic Survival UNIX. Basic Survival UNIX Many Unix based operating systems make available a Graphical User Interface for the sake of providing an easy way for less experienced users to work with the system. Some examples are

More information

Introduction to Linux Spring 2014, Section 02, Lecture 3 Jason Tang

Introduction to Linux Spring 2014, Section 02, Lecture 3 Jason Tang Introduction to Linux Spring 2014, Section 02, Lecture 3 Jason Tang Topics What is an Operating System Overview of Linux Linux commands Shell Submit system What is an Operating System? Special type of

More information

Shell Programming Overview

Shell Programming Overview Overview Shell programming is a way of taking several command line instructions that you would use in a Unix command prompt and incorporating them into one program. There are many versions of Unix. Some

More information

Introduction to Unix CHAPTER 6. File Systems. Permissions

Introduction to Unix CHAPTER 6. File Systems. Permissions CHAPTER 6 Introduction to Unix The Unix operating system is an incredibly powerful and complex system that is ideal for running a distributed system such as ours, particularly since we use computers primarily

More information

Unix Essentials. BaRC Hot Topics Bioinformatics and Research Computing Whitehead Institute October 12 th

Unix Essentials. BaRC Hot Topics Bioinformatics and Research Computing Whitehead Institute October 12 th Unix Essentials BaRC Hot Topics Bioinformatics and Research Computing Whitehead Institute October 12 th 2016 http://barc.wi.mit.edu/hot_topics/ 1 Outline Unix overview Logging in to tak Directory structure

More information

A Brief Introduction to the Linux Shell for Data Science

A Brief Introduction to the Linux Shell for Data Science A Brief Introduction to the Linux Shell for Data Science Aris Anagnostopoulos 1 Introduction Here we will see a brief introduction of the Linux command line or shell as it is called. Linux is a Unix-like

More information

UoW HPC Quick Start. Information Technology Services University of Wollongong. ( Last updated on October 10, 2011)

UoW HPC Quick Start. Information Technology Services University of Wollongong. ( Last updated on October 10, 2011) UoW HPC Quick Start Information Technology Services University of Wollongong ( Last updated on October 10, 2011) 1 Contents 1 Logging into the HPC Cluster 3 1.1 From within the UoW campus.......................

More information

Unix Workshop Aug 2014

Unix Workshop Aug 2014 Unix Workshop 2014 5 Aug 2014 What is Unix Multitasking, multiuser operating system Often the OS of choice for large servers, large clusters Unix Around You You re probably familiar with these: Linux Solaris

More information

Using WestGrid from the desktop Oct on Access Grid

Using WestGrid from the desktop Oct on Access Grid Using WestGrid from the desktop Oct 11 2007 on Access Grid Introduction Simon Sharpe, UCIT Client Services The best way to contact WestGrid support is to email support@westgrid.ca This seminar gives you

More information

Linux/Cygwin Practice Computer Architecture

Linux/Cygwin Practice Computer Architecture Linux/Cygwin Practice 2010 Computer Architecture Linux Login Use ssh client applications to connect (Port : 22) SSH Clients zterm ( http://www.brainz.co.kr/products/products4_2.php ) Putty ( http://kldp.net/frs/download.php/3411/hangulputty-0.58.h2.exe

More information

Introduction: The Unix shell and C programming

Introduction: The Unix shell and C programming Introduction: The Unix shell and C programming 1DT048: Programming for Beginners Uppsala University June 11, 2014 You ll be working with the assignments in the Unix labs. If you are new to Unix or working

More information

Exploring UNIX: Session 3

Exploring UNIX: Session 3 Exploring UNIX: Session 3 UNIX file system permissions UNIX is a multi user operating system. This means several users can be logged in simultaneously. For obvious reasons UNIX makes sure users cannot

More information

CHE3935. Lecture 1. Introduction to Linux

CHE3935. Lecture 1. Introduction to Linux CHE3935 Lecture 1 Introduction to Linux 1 Logging In PuTTY is a free telnet/ssh client that can be run without installing it within Windows. It will only give you a terminal interface, but used with a

More information

Introduction to Linux Environment. Yun-Wen Chen

Introduction to Linux Environment. Yun-Wen Chen Introduction to Linux Environment Yun-Wen Chen 1 The Text (Command) Mode in Linux Environment 2 The Main Operating Systems We May Meet 1. Windows 2. Mac 3. Linux (Unix) 3 Windows Command Mode and DOS Type

More information

Lab 1: Getting Started with Linux The Extremely Illustrated Version. Graham Northup

Lab 1: Getting Started with Linux The Extremely Illustrated Version. Graham Northup Lab 1: Getting Started with Linux The Extremely Illustrated Version Graham Northup In today s lab, we ll be getting started with Linux and, perhaps more importantly, it s terminal. As we will be using

More information

Temple University Computer Science Programming Under the Linux Operating System January 2017

Temple University Computer Science Programming Under the Linux Operating System January 2017 Temple University Computer Science Programming Under the Linux Operating System January 2017 Here are the Linux commands you need to know to get started with Lab 1, and all subsequent labs as well. These

More information

CMSC 104 Lecture 2 by S Lupoli adapted by C Grasso

CMSC 104 Lecture 2 by S Lupoli adapted by C Grasso CMSC 104 Lecture 2 by S Lupoli adapted by C Grasso A layer of software that runs between the hardware and the user. Controls how the CPU, memory and I/O devices work together to execute programs Keeps

More information

Getting Started With Linux and Fortran Part 2

Getting Started With Linux and Fortran Part 2 Getting Started With Linux and Fortran Part 2 by Simon Campbell [The K Desktop Environment, one of the many desktops available for Linux] ASP 3012 (Stars) Computer Tutorial 2 1 Contents 1 Some Funky Linux

More information

CMSC 201 Fall 2016 Lab 09 Advanced Debugging

CMSC 201 Fall 2016 Lab 09 Advanced Debugging CMSC 201 Fall 2016 Lab 09 Advanced Debugging Assignment: Lab 09 Advanced Debugging Due Date: During discussion Value: 10 points Part 1: Introduction to Errors Throughout this semester, we have been working

More information

Lab #2 Physics 91SI Spring 2013

Lab #2 Physics 91SI Spring 2013 Lab #2 Physics 91SI Spring 2013 Objective: Some more experience with advanced UNIX concepts, such as redirecting and piping. You will also explore the usefulness of Mercurial version control and how to

More information

Software Installation - Accessing Linux and Checking your Environmental Variables

Software Installation - Accessing Linux and Checking your Environmental Variables Accessing Linux and Checking your Environmental Although you may be fortunate enough to have a powerful multi-processor desktop running Linux, most of our sponsors do not. Most of our sponsors will have

More information

Introduction. SSH Secure Shell Client 1

Introduction. SSH Secure Shell Client 1 SSH Secure Shell Client 1 Introduction An SSH Secure Shell Client is a piece of software that allows a user to do a number of functions. Some of these functions are: file transferring, setting permissions,

More information

: the User (owner) for this file (your cruzid, when you do it) Position: directory flag. read Group.

: the User (owner) for this file (your cruzid, when you do it) Position: directory flag. read Group. CMPS 12L Introduction to Programming Lab Assignment 2 We have three goals in this assignment: to learn about file permissions in Unix, to get a basic introduction to the Andrew File System and it s directory

More information

Introduction to Unix and Linux. Workshop 1: Directories and Files

Introduction to Unix and Linux. Workshop 1: Directories and Files Introduction to Unix and Linux Workshop 1: Directories and Files Genomics Core Lab TEXAS A&M UNIVERSITY CORPUS CHRISTI Anvesh Paidipala, Evan Krell, Kelly Pennoyer, Chris Bird Genomics Core Lab Informatics

More information

Sharpen Exercise: Using HPC resources and running parallel applications

Sharpen Exercise: Using HPC resources and running parallel applications Sharpen Exercise: Using HPC resources and running parallel applications Andrew Turner, Dominic Sloan-Murphy, David Henty, Adrian Jackson Contents 1 Aims 2 2 Introduction 2 3 Instructions 3 3.1 Log into

More information

CSE 391 Lecture 3. bash shell continued: processes; multi-user systems; remote login; editors

CSE 391 Lecture 3. bash shell continued: processes; multi-user systems; remote login; editors CSE 391 Lecture 3 bash shell continued: processes; multi-user systems; remote login; editors slides created by Marty Stepp, modified by Jessica Miller and Ruth Anderson http://www.cs.washington.edu/391/

More information

Supercomputing in Plain English Exercise #6: MPI Point to Point

Supercomputing in Plain English Exercise #6: MPI Point to Point Supercomputing in Plain English Exercise #6: MPI Point to Point In this exercise, we ll use the same conventions and commands as in Exercises #1, #2, #3, #4 and #5. You should refer back to the Exercise

More information

1 Installation (briefly)

1 Installation (briefly) Jumpstart Linux Bo Waggoner Updated: 2014-09-15 Abstract A basic, rapid tutorial on Linux and its command line for the absolute beginner. Prerequisites: a computer on which to install, a DVD and/or USB

More information

CSCI 161: Introduction to Programming I Lab 1b: Hello, World (Eclipse, Java)

CSCI 161: Introduction to Programming I Lab 1b: Hello, World (Eclipse, Java) Goals - to learn how to compile and execute a Java program - to modify a program to enhance it Overview This activity will introduce you to the Java programming language. You will type in the Java program

More information

9.2 Linux Essentials Exam Objectives

9.2 Linux Essentials Exam Objectives 9.2 Linux Essentials Exam Objectives This chapter will cover the topics for the following Linux Essentials exam objectives: Topic 3: The Power of the Command Line (weight: 10) 3.3: Turning Commands into

More information

Mills HPC Tutorial Series. Linux Basics I

Mills HPC Tutorial Series. Linux Basics I Mills HPC Tutorial Series Linux Basics I Objectives Command Line Window Anatomy Command Structure Command Examples Help Files and Directories Permissions Wildcards and Home (~) Redirection and Pipe Create

More information

This lab exercise is to be submitted at the end of the lab session! passwd [That is the command to change your current password to a new one]

This lab exercise is to be submitted at the end of the lab session! passwd [That is the command to change your current password to a new one] Data and Computer Security (CMPD414) Lab II Topics: secure login, moving into HOME-directory, navigation on Unix, basic commands for vi, Message Digest This lab exercise is to be submitted at the end of

More information

CS 2400 Laboratory Assignment #1: Exercises in Compilation and the UNIX Programming Environment (100 pts.)

CS 2400 Laboratory Assignment #1: Exercises in Compilation and the UNIX Programming Environment (100 pts.) 1 Introduction 1 CS 2400 Laboratory Assignment #1: Exercises in Compilation and the UNIX Programming Environment (100 pts.) This laboratory is intended to give you some brief experience using the editing/compiling/file

More information

New User Tutorial. OSU High Performance Computing Center

New User Tutorial. OSU High Performance Computing Center New User Tutorial OSU High Performance Computing Center TABLE OF CONTENTS Logging In... 3-5 Windows... 3-4 Linux... 4 Mac... 4-5 Changing Password... 5 Using Linux Commands... 6 File Systems... 7 File

More information

FILE MAINTENANCE COMMANDS

FILE MAINTENANCE COMMANDS Birla Institute of Technology & Science, Pilani Computer Programming (CS F111) Lab-2 ----------------------------------------------------------------------------------------------------------------------

More information

User Guide Version 2.0

User Guide Version 2.0 User Guide Version 2.0 Page 2 of 8 Summary Contents 1 INTRODUCTION... 3 2 SECURESHELL (SSH)... 4 2.1 ENABLING SSH... 4 2.2 DISABLING SSH... 4 2.2.1 Change Password... 4 2.2.2 Secure Shell Connection Information...

More information

Exercise 1: Connecting to BW using ssh: NOTE: $ = command starts here, =means one space between words/characters.

Exercise 1: Connecting to BW using ssh: NOTE: $ = command starts here, =means one space between words/characters. Exercise 1: Connecting to BW using ssh: NOTE: $ = command starts here, =means one space between words/characters. Before you login to the Blue Waters system, make sure you have the following information

More information

INTRODUCTION TO BIOINFORMATICS

INTRODUCTION TO BIOINFORMATICS Introducing the LINUX Operating System BecA-ILRI INTRODUCTION TO BIOINFORMATICS Mark Wamalwa BecA- ILRI Hub, Nairobi, Kenya h"p://hub.africabiosciences.org/ h"p://www.ilri.org/ m.wamalwa@cgiar.org 1 What

More information

DEPARTMENT OF MATHEMATICS. RAMLab User Guide. An Introduction to the Ryerson Applied Mathematics Laboratory

DEPARTMENT OF MATHEMATICS. RAMLab User Guide. An Introduction to the Ryerson Applied Mathematics Laboratory DEPARTMENT OF MATHEMATICS An Introduction to the Ryerson Applied Mathematics Laboratory 11/10/2010 Deparment of Mathematics Ryerson University 350 Victoria Street M5B 2K3 2010 by Department of Mathematics,

More information

Computers and Computation. The Modern Computer. The Operating System. The Operating System

Computers and Computation. The Modern Computer. The Operating System. The Operating System The Modern Computer Computers and Computation What is a computer? A machine that manipulates data according to instructions. Despite their apparent complexity, at the lowest level computers perform simple

More information

Getting Started With UNIX Lab Exercises

Getting Started With UNIX Lab Exercises Getting Started With UNIX Lab Exercises This is the lab exercise handout for the Getting Started with UNIX tutorial. The exercises provide hands-on experience with the topics discussed in the tutorial.

More information

CS4350 Unix Programming. Outline

CS4350 Unix Programming. Outline Outline Unix Management Files and file systems Structure of Unix Commands Command help (man) Log on (terminal vs. graphical) System information (utility) File and directory structure (path) Permission

More information

Editing, Compiling, Executing and Submitting Programs

Editing, Compiling, Executing and Submitting Programs Editing, Compiling, Executing and Submitting Programs Quick Start Compile step once always mkdir labs javac Realtor.java cd labs mkdir 0 Execute step java Realtor cd 0 Submit step emacs Realtor.java &

More information

CMSC 201 Spring 2018 Lab 01 Hello World

CMSC 201 Spring 2018 Lab 01 Hello World CMSC 201 Spring 2018 Lab 01 Hello World Assignment: Lab 01 Hello World Due Date: Sunday, February 4th by 8:59:59 PM Value: 10 points At UMBC, the GL system is designed to grant students the privileges

More information

Unix/Linux Basics. Cpt S 223, Fall 2007 Copyright: Washington State University

Unix/Linux Basics. Cpt S 223, Fall 2007 Copyright: Washington State University Unix/Linux Basics 1 Some basics to remember Everything is case sensitive Eg., you can have two different files of the same name but different case in the same folder Console-driven (same as terminal )

More information

Laboratory 1 Semester 1 11/12

Laboratory 1 Semester 1 11/12 CS2106 National University of Singapore School of Computing Laboratory 1 Semester 1 11/12 MATRICULATION NUMBER: In this lab exercise, you will get familiarize with some basic UNIX commands, editing and

More information

CS CS Tutorial 2 2 Winter 2018

CS CS Tutorial 2 2 Winter 2018 CS CS 230 - Tutorial 2 2 Winter 2018 Sections 1. Unix Basics and connecting to CS environment 2. MIPS Introduction & CS230 Interface 3. Connecting Remotely If you haven t set up a CS environment password,

More information

1 Getting Started with Linux.

1 Getting Started with Linux. PHYS-4007/5007: omputational Physics Tutorial #1 Using Linux for the First Time 1 Getting Started with Linux. The information of logging in on the Linux side of the computers in Brown Hall 264 can be found

More information

Once you have installed MobaXterm, open MobaXterm. Go to Sessions -> New Session, and click on the SSH icon.

Once you have installed MobaXterm, open MobaXterm. Go to Sessions -> New Session, and click on the SSH icon. Lab 1 In order to get credit for the lab, you need to be checked off by the end of lab. For nonzero labs, you can earn a maximum of 3 points for lab work completed outside of lab time, but you must finish

More information

The Unix Shell & Shell Scripts

The Unix Shell & Shell Scripts The Unix Shell & Shell Scripts You should do steps 1 to 7 before going to the lab. Use the Linux system you installed in the previous lab. In the lab do step 8, the TA may give you additional exercises

More information

Refresher workshop in programming for polytechnic graduates General Java Program Compilation Guide

Refresher workshop in programming for polytechnic graduates General Java Program Compilation Guide Refresher workshop in programming for polytechnic graduates General Java Program Compilation Guide Overview Welcome to this refresher workshop! This document will serve as a self-guided explanation to

More information

STA 303 / 1002 Using SAS on CQUEST

STA 303 / 1002 Using SAS on CQUEST STA 303 / 1002 Using SAS on CQUEST A review of the nuts and bolts A.L. Gibbs January 2012 Some Basics of CQUEST If you don t already have a CQUEST account, go to www.cquest.utoronto.ca and request one.

More information

Exercise sheet 1 To be corrected in tutorials in the week from 23/10/2017 to 27/10/2017

Exercise sheet 1 To be corrected in tutorials in the week from 23/10/2017 to 27/10/2017 Einführung in die Programmierung für Physiker WS 207/208 Marc Wagner Francesca Cuteri: cuteri@th.physik.uni-frankfurt.de Alessandro Sciarra: sciarra@th.physik.uni-frankfurt.de Exercise sheet To be corrected

More information

Our Workshop Environment

Our Workshop Environment Our Workshop Environment John Urbanic Parallel Computing Scientist Pittsburgh Supercomputing Center Copyright 2017 Our Environment This Week Your laptops or workstations: only used for portal access Bridges

More information

Unix Tutorial Haverford Astronomy 2014/2015

Unix Tutorial Haverford Astronomy 2014/2015 Unix Tutorial Haverford Astronomy 2014/2015 Overview of Haverford astronomy computing resources This tutorial is intended for use on computers running the Linux operating system, including those in the

More information

15-122: Principles of Imperative Computation

15-122: Principles of Imperative Computation 15-122: Principles of Imperative Computation Lab 0 Navigating your account in Linux Tom Cortina, Rob Simmons Unlike typical graphical interfaces for operating systems, here you are entering commands directly

More information

Intro to Linux & Command Line

Intro to Linux & Command Line Intro to Linux & Command Line Based on slides from CSE 391 Edited by Andrew Hu slides created by Marty Stepp, modified by Jessica Miller & Ruth Anderson http://www.cs.washington.edu/391/ 1 Lecture summary

More information

OO Fortran Exercises

OO Fortran Exercises OO Fortran Exercises Adrian Jackson February 27, 2018 Contents 1 Introduction 1 2 Getting going on ARCHER 2 2.1 Log into ARCHER frontend nodes and run commands............. 2 3 Introduction to Fortran

More information