MEDGAR EVERS COLLEGE of CUNY
Department of Physical, Environmental and Computer Sciences
Department Office, Carroll 417 - Phone 718-270-6453

“Time, Effort, Integrity”

CS 265 UNIX Systems Programming

3 lecture hours, 1 lab hour; 3 credits

Course Description: This course provides an in-depth study in the programming of UNIX systems.  Topics include: UNIX commands, the UNIX File System and its related structures, Editors, the UNIX Command Interpreter, System Administration, Shell Programming, UNIX Applications Operating Environments, communicating and networking through UNIX.

Prerequisite:   CS 252 and CS 246

Required Text: A Practical Guide to Linux® Commands, Editors, and Shell Programming, Mark G. Sobell, Publisher: Prentice Hall, Copyright: 2006, ISBN-10: 0131478230, ISBN-13: 9780131478237

Course Requirements: All students have the responsibility to arrive on time, attend class regularly, and to participate fully in the work of the course. Additionally, students are not to work on other materials in class.  Assigned readings, problems and programs should be completed before class.  Several Linux-based assignments will be given to reinforce the concepts presented in class.  Unless you own or have access to equivalent hardware and software, plan on spending a lot of time on campus.

Project/Presentation: A project covering Shell Programming is also required and must be presented to the class.  Use the following guidelines when preparing your presentation: (i) select a Linux/Unix Systems area of interest to you, (ii) use Shell Programming to design a small Linux systems application in this area, and (iii) use the Bourne Again (bash) to implement your design.  Specifically, you must use the bash, create a PowerPoint presentation (10-12) slides to present your work, and fully explain the syntax and semantics of your project.  Remember to observe the required presentation format, described in the Computer Science Booklet, when preparing your 2-page presentation proposal.  The instructor must approve your detailed outline, along with a project design, prior to the midterm examination.  Absolutely no project/presentation will be accepted after the last day of class.

Grading Procedure:  The final grade will be determined objectively by using a weighted average along with the following weighted areas: computer programs, chapter examinations, homework assignments, and the final examination.  Check with the college catalog for information regarding the official grading policy.  Note that missed chapter examinations cannot be made-up.  The lowest score from all chapter examinations will be dropped, before calculating the final average, provided all class examinations are taken.  Programming projects submitted after the stated deadline will receive a reduced grade.

Academic Requirements and Regulations:  Students who officially withdraw from a course between the 4th through the 8th week receive a grade of W, which is not counted in computing the grade point average.  Courses officially dropped after the 8th week of class will appear as a WF and count as an F grade.  INC (Incomplete) or ABS (absent) grades will only be given to students who are passing the course.

Honor Code and Plagiarism: Students are required to sign and adhere to the departmental honor pledge.  Check with the department for a copy of the pledge.

CUNY Proficiency Examination (CPE)

The CPE is a graduation requirement.  All students between 45-60 credits are required to sit for and pass the CPE.  You have only three chances to pass this examination.  Each missed scheduled examination after the 45 credit mark counts as a failure.  For more information about this requirement, contact the Medgar Evers College CPE Liaison.

MEDGAR EVERS COLLEGE of CUNY
Department of Physical, Environmental and Computer Sciences
Department Office, Carroll 417 - Phone 718-270-6453

CS 265 UNIX Systems Programming

BRIEF - Weekly Topical Outline

Week: Chapter Topics

  1. Welcome to Linux

    PART I The Linux Operating System
  2. Getting Started
  3. Command Line Utilities
  4. The Linux Filesystem
  5. The Shell

PART II The Editors

  1. The vim Editor
  2. The emacs Editor (an introductory overview)

PART III The Shells

  1. The Bourne Again Shell
  2. The Bourne Again Shell

PART IV Programming Tools

  1. Programming Tools
  2. Programming Tools
  3. Programming the Bourne Again Shell
  4. Programming the Bourne Again Shell
  5. The gawk Pattern Processing Language

PART VI Appendixes

  1. Aregular Expressions