Home Education Research Resources Conferences Outreach Security

CSC 368 Systems Programming Languages

Instructor: Dr. Ted Mims, email: mims.ted@uis.edu

Catalog Description: Design principles and implementation of systems programming languages. Topics include syntax, data types, control structures, and storage management. Four systems programming software language tools that systems administrators use will be studied: shell scripts, Perl, PHP and SQL. Class activities and hands-on laboratories. Some typical laboratories and class assignments include automating repetitive tasks, scheduled file maintenance, log file analysis and electronic administrator notification.

Prerequisite: CSC 275 or Equivalent

Purpose of and Rationale for the Course: The course is designed to teach students programming language concepts used by network/systems security administrators. It will be the require core programming languages course for students concentrating in network/systems security administration. Students concentrating in software development will take CSC 388 Software Development Programming Languages. In addition to reviewing the materials presented by the instructor, students will gain hands-on experience computer systems. Activities for the students will include writing script program tools in multiple languages and using them to manage a computer.

Educational Objectives: To properly prepare our graduates with the fundamentals background and knowledge required to manage networked system of computers. This will include covering the topics managing a network of client workstations and servers using systems programming languages.

Brief Description of the type of instruction and learning experiences: Students will participate in online discussion groups, complete laboratory assignments and design, implement and test network applications.


  • Unix Shell Programming, Third Edition, Stephen G. Kochan and Patrick Wood, SAMS.
  • Learning Perl, Third Edition, Randal L. Schwartz and Tom Phoenix, O'Reilly.
  • PHP for the World Wide Web, Larry Ullman, Peachpit Press

Number and types of assignments: Students will complete laboratory assignments in each of the following areas: shell scripts, Perl, PHP and SQL. Programming assignments:

  • shell script - moving files between directories based on modification date
  • awk scripts - extracting select records from a file
  • sed scripts - updating select fields in several files
  • perl scripts - combination of above assignments
  • php/html - combination of above assignments, via the web!

Criteria for grading: Grades will be assigned on a percentage basis for the following areas:

  • programming assingments - 40%,
  • midterm test - 30%
  • final test - 30%
Graduate students will be required to write a paper on a topic related to systems programming languages selected in consultation with the teacher.

Home Education Research Resources Conferences Outreach Security