Go to Main Content

Purdue Self-Service



Catalog Entries


Summer 2017
May 26, 2024
Transparent Image
Information Select the Course Number to get further detail on the course. Select the desired Schedule Type to find available classes for the course. The Schedule Type links will be available only when the schedule of classes is available for the selected term.

CS 50011 - Introduction To Systems For Information Security
Credit Hours: 3.00. The course covers computer systems principles relevant to information security and it serves as a prerequisite for the later courses in the MS in IS program. The material includes features in the C/C++ programming languages for understanding security-critical software vulnerabilities, basic knowledge in computer architecture and assembly languages, knowledge of the compiling process, operating systems, networking, databases, and web applications relevant to information security. This course is restricted to CS graduate students. This course is required for students in the Master of Science in Computer Science Concentration in Information Security for Professionals Program. The course may not be used on the Plan of Study for any CS graduate students other than those in the Concentration in Information Security for Processionals program. Programming experience and computer science knowledge equivalent to that of a minor in CS. Incoming students are expected to have programming skills in at least one procedural programming languages, e.g., C,C++,Java, or Python. Typically offered Summer.
0.000 OR 3.000 Credit hours

Syllabus Available
Levels: Undergraduate, Graduate, Professional
Schedule Types: Distance Learning, Laboratory, Lecture
All Sections for this Course

Offered By: College of Science
Department: Computer Science

Course Attributes:
Upper Division

May be offered at any of the following campuses:     
      West Lafayette

Learning Outcomes: 1. Understand C/C++ code with security-relevant features such as pointers, string operations, function pointers, dynamic memory allocation, etc., laying the foundations for understanding software vulnerabilities in C/C++. 2. Explain common programming errors in C/C++ programs. 3. Explain how C/C++ programs are compiled into assembly and how call stack works in function calls, laying the foundation for understanding stack based buffer overflow. 4. Explain basic concepts in computer architecture, such as instruction set, assembly code, CPU modes, registers, MMU, paging. 5. Explain basic concepts in operating systems, such as processes, system calls, virtual memory, file system structure. 6. Explain basic concepts in networking, databases, and web applications.

Return to Previous New Search XML Extract
Transparent Image
Skip to top of page