COMPUTER SYSTEMS PROGRAMMING CS201 Hello! Im Chris Kim . Im a - - PowerPoint PPT Presentation

computer systems programming cs201 hello i m chris kim
SMART_READER_LITE
LIVE PREVIEW

COMPUTER SYSTEMS PROGRAMMING CS201 Hello! Im Chris Kim . Im a - - PowerPoint PPT Presentation

COMPUTER SYSTEMS PROGRAMMING CS201 Hello! Im Chris Kim . Im a software engineer at Tripwire. I studied Computer Science here at PSU. 2 Kimchi 3 ABOUT THIS Why are we COURSE here? 4 ABOUT THIS COURSE This course gives you an


slide-1
SLIDE 1

COMPUTER SYSTEMS PROGRAMMING CS201

slide-2
SLIDE 2

Hello! I’m Chris Kim.

I’m a software engineer at

  • Tripwire. I studied Computer

Science here at PSU.

2

slide-3
SLIDE 3

3

Kimchi

slide-4
SLIDE 4

ABOUT THIS COURSE

Why are we here?

4

slide-5
SLIDE 5

ABOUT THIS COURSE

▸ This course gives you an overview of how computer systems are organized. ▸ Provides skills and knowledge of C, and how C is translated into hardware executable code. Specific goals listed on course syllabus.

5

slide-6
SLIDE 6

Home Page

Course objectives Updated course schedule Information about instructor, TA, office hours, textbooks Information about assignments and submission instructions

COURSE INFORMATION

6

D2L

Homework submissions will

  • ccur here

Grades/feedback

slide-7
SLIDE 7

Slack

pdx-cs.slack.com #cs201_spring_2020 Class discussions will occur here. General discussion is allowed, do not share code. Feel free to message me here! You will probably get a much faster response than via email.

COURSE INFORMATION

7

slide-8
SLIDE 8

Computer Systems: A Programmer’s Perspective, 3rd Edition All slide materials in this class are based on material provided by the authors. csapp.cs.cmu.edu The C Programming Language, 2nd Edition The “bible” of C programming. Parts of this course rely on the C99 standard.

TEXTBOOKS

8

slide-9
SLIDE 9

ACCOUNTS

▸ Instructions on the course webpage: https://web.cecs.pdx.edu/~kimchris/cs201 ▸ Access to a PSU MCECS Linux system is

  • required. Activate in person at the CAT.

▸ Linux Lab ▹ ssh user@linuxlab.cs.pdx.edu ▹ Computer labs in FAB 88-09 or FAB 88-10

9

slide-10
SLIDE 10

LINUX ENVIRONMENT

It will be useful to be familiar with the following Linux commands/programs:

▸ File system: ▹ ls, cd, mkdir, rm ▸ Editors: ▹ vim, emacs, nano ▸ Programming Tools: ▹ gcc (GNU Compiler) ▹ gdb (GNU Debugger) ▹ make (Code building tool) ▹ zip (archiver, compressor)

10

slide-11
SLIDE 11

EXAMS

▸ Midterm (20%) ▸ Final (25%) ▸ Closed book, single page of handwritten notes ▸ No electronic devices (phones, laptops, etc) ▸ Problems will be taken from lectures and textbook problems.

11

slide-12
SLIDE 12

GRADING BREAKDOWN / POLICY

12

Assignment 1 5% MetaCTF 15% Assignment 2 7.5% Attendance 10% Assignment 3 10% Midterm 20% Assignment 4 7.5% Final 25% ▸ Assignments are due at the beginning of class on the day marked. ▸ No late work will be accepted.

slide-13
SLIDE 13

COURSE ASSIGNMENTS

Reading assignments are posted with each lecture (refer to the course website) ▸ Four homework assignments ▸ MetaCTF levels ▸ All assignments must be completed in order to receive a passing grade this class.

13

slide-14
SLIDE 14

ASSIGNMENT POLICIES

Grading breakdown on the syllabus.

Homework assignments are due at the start

  • f class on the given due date.

▸ Follow submission instructions on the homepage carefully. ▸ No late work is accepted.

14

slide-15
SLIDE 15

ACADEMIC INTEGRITY

▸ Refer to the syllabus and university guidelines. ▸ What is NOT cheating? ▹ Discussing the design of a program ▹ Discussing concepts and methodologies ▹ Talking about how linux tools are used ▹ Using code given by the professor in lecture, demos, slack, etc.

15

slide-16
SLIDE 16

ACADEMIC INTEGRITY

▸ What IS cheating? (This is not an exhaustive list.) ▹ Working with other students on an individual assignment ▹ Copying code from another student (including past students), or from the internet ▹ Letting someone copy your answers/code In short, it is very easy to catch cheating in CS. If you are caught cheating, any and every effort will be taken to end your academic/professional career.

16

slide-17
SLIDE 17

REGRET CLAUSE

▸ If you commit some act that is not reasonable but bring it to the attention of the course’s heads within 72 hours, the course may impose local sanctions that may include an unsatisfactory or failing grade for work submitted, but the course will not refer the matter for further disciplinary action, except in cases of repeated acts.

17

slide-18
SLIDE 18

REGARDING IDEs

▸ I recommend using and familiarizing yourself with Linux command line tools. ▹ Generally guaranteed to be on your Linux system ▹ Without auto-fill, they tend to make you think about the what/why of what you are doing ▸ With that said, you will likely be using IDEs for most of your work in industry.

18

slide-19
SLIDE 19

REGARDING IDEs

▸ IDE’s are (kind of) like spellcheck. Is it bad to use one? Of course not. Do they help with productivity? Indeed they do. Should you be relying on spellcheck instead of learning to spell? Probably not doing you any favors if you do.

19

slide-20
SLIDE 20

GETTING HELP

▸ CS Tutor Lounge

▹ https://cat.pdx.edu/users/cs-tutors/ ▸ Instructor (That’s me!) ▸ Group discussions on Slack

20