CSCE 3600: Systems Programming - Spring 2010

shrewdnessfreedomSoftware and s/w Development

Dec 2, 2013 (3 years and 8 months ago)

191 views

CSCE 3600: Systems Programming
-

Spring 2010

Instructor:
Paul Tarau
, Associate Professor
-

see my
home page

for contact info and office
hours

E
-
mail :

t a r a u@cs.unt.edu


WWW :

http://www.cs.unt.edu/~tarau


Address:

Department of Computer Scienc
e
,
University of North Texas
, P.O. Box 311366,
Denton
, Texas 76203,
USA


Phone :

Tel :

+1
-
940
-
565
-
2806, +1
-
940
-
565
-
2767


Fax :

+1
-
940
-
565
-
2799


Teaching Assistant: Sujit Kumar
-

see
home pa
ge

for contact info and office hours. See code
shown in class
here
.

Please complete exit survey at
http://www.cse.unt.edu/exitSurvey.cgi?CSCE+3600+001

and
bring proof to the final exam.

Description:

Introduction to the design and operation of systems software. Analysis is made of
current system software technology, including operating systems, language

translation systems
and file systems.

Syllabus



Basic Operating System Functions

o

An architectural overview of modern operating systems

o

Linux

o

OS X

o

Windows

o

Android



Systems programming tasks

o

Kernel Programming

o

Administration and Security

o

User interfaces, loc
al and remote access

o

Configuration and Scripting



Systems programming in C

o

Compilers. Front end, back end. Bootrapping,. Makefiles. Overview of the
gcc

compiler.

o

Memory Management

o

Process control and multithreading

o

File operations

o

Streams and Sockets

o

Client
/Server programming models

o

Remote function calls and method invocations

o

Distributed File Systems



Systems programming with Google Go

o

Go as a modern systems programming language

o

Automating memory management. Garbage Collection.

o

Parallel programming with
Goroutines and Channels



Future trends in systems programming

o

Service Oriented Architectures

o

Web Services and Cloud Computing

Prerequisites:
Prerequisite(s): CSCE 2050 and 2610

Textbook: None, the course will be based on resources available online.

Useful l
inks:
C tutorial
,
pthreads tutorial

Evaluation:



Two individual exams: 30% each. First exam: March 23


open books.



Team prog
ramming projects: 40% (teams of at most 3 students)


The Student Evaluation of Teaching Effectiveness (SETE) is a requirement for all organized
classes at UNT. This short survey will be made available to you at the end of the semester,
providing you a chan
ce to comment on how this class is taught.


I am very interested in the
feedback I get from students, as I work to continually improve my teaching. I consider the SETE
to be an important part of your participation in this class.