Introduction and Overview Yuan Long CSc 3320 System Level Programming Fall 2016 CSC3320 System Level Programming Fall 2016
Administrative Issues Required Prerequisites CSc 2010 Principle of Computer Science I Csc 2310 Principle of Computer Science II (Java Programming) 2 absences allowed – Otherwise could be dropped Read the syllabus and policies CSC3320 System Level Programming Fall 2016
Administrative Issues Required Textbook CSC3320 System Level Programming Fall 2016
Assignments About 5 programming assignments The lowest one will be dropped Penalty for late submissions is on the syllabus Must be your own work CSC3320 System Level Programming Fall 2016
Class Policies No cell phones or laptops out during class You may be deducted points without warning CSC3320 System Level Programming Fall 2016
Grading policies and Exams Homework (approx. 5) : 20% Two tests: 15% each Final exam: 20% Weekly programming challenge assignments: 20% Attendance: 10% All re-grading requests must be made within 2 classes from returned work CSC3320 System Level Programming Fall 2016
Office Hours Instructor: Yuan Long TAs : TBA Office:25 Park Place, Room 711 Email: ylong4@gsu.edu Office Hour: MW 2:00 pm to 3:30 pm and by appointment TAs : TBA CSC3320 System Level Programming Fall 2016
Expectations Knowing how to use Unix utility Writing basic shell script Writing C program File management Process management CSC3320 System Level Programming Fall 2016
VS Why learn Unix? Free Open-source Secure Well-specified Fall 2016 https://www.youtube.com/watch?v=JijVGIR2n8E Linux v.s. Windows about directories https://www.youtube.com/watch?v=xRX6ZI_P-LA&list=PLckPQEKYlbxebubMWdjcGR7K_ukm35ZjN Some developer in the public community will fix the problem. It is much better than begging windows to fix the problem. Cyber security… Network problem.... Famous among programmers as well as regular computer users Be open-source, anyone with programming language can modify it The choice for server environments due to its stabality e.g. amazon google facebook VS CSC3320 System Level Programming Fall 2016
Why learn C? A low-level language Better control of memory allocation and addresses Interface to driver of kernel Close to machine language --- Fast Used to create other languages and Operating Systems Most of Sun’s Java implementation (JVM) Unix Windows Most embedded systems (e.g. iOS & Android) Make Beliefs Comix CSC3320 System Level Programming Fall 2016
Any questions before we start….. CSC3320 System Level Programming Fall 2016