TLEN 5490: Network Programming
Exposes students to UNIX/Linux systems and network programming with an emphasis on practical programming problems and experience. Covers the unique challenges of programming distributed systems including resolving synchronization, threads, pipes, sockets, and other constructs for building TCP/IP network servers and clients.
TCP Sockets (Internet and Unix domain)
UDP (Internet and Unix domain)
Client/Server applications design and implementation
Concurrent server implementation
Message Level multiplexing
Sockets in a GUI environment
Shared memory and semaphores
- Acquire thorough knowledge of the UNIX network programming API.
- Understand both C and Java.
- Understand sockets, shared memory, semaphores and pipes.
- Understand concurrent processing approaches.
Provide an in-depth focus on Interprocess Communications (IPC) and the software tools and techniques used to develop distributed
While there is no formal course prerequisite, students must have recent programming experience (C strongly recommended) in a UNIX development environment, including hands-on editing, compiling, and debugging.
Education Officer (EO)
If an education officer (EO) is indicated as “required” above,
you will need an EO to proctor exams for the course. An EO
cannot be a student's relative, friend, coworker, or someone
who works for the student. The EO address must be a business
address. Provide, change, or update your EO information by
EO Information Update form. To ensure we have
the most updated EO information, you must provide the EO
information every semester – even if it is the same EO.
For those able to come to campus, CAETE provides free
proctoring services. Contact us at 303-492-6331 or
to schedule an exam appointment.
If you have any questions regarding who qualifies to be
an EO, see EO information or contact CAETE.
Hardware & Software
Web and e-mail access required. In addition, all CATECS students must compile and execute the programs in a UNIX operating environment. Programs compiled and executed in either a Microsoft Windows or Macintosh environment will not be accepted.
Upcoming & Previous Offerings
Meeting Days Legend: Monday (M), Tuesday (T), Wednesday (W), Thursday (R), Friday (F), Saturday (S), Sunday (U)
Summer Terms: M = Maymester, A = 1st 5 weeks, B= 2nd 5 weeks, C = 8 weeks, D= 10 weeks
Refer to the Academic Calendar for specific dates.
||12:00 PM - 12:50 PM
||01:00 PM - 01:50 PM