Presentation is loading. Please wait.

Presentation is loading. Please wait.

CIS 552 Advanced Unix Programming

Similar presentations


Presentation on theme: "CIS 552 Advanced Unix Programming"— Presentation transcript:

1 CIS 552 Advanced Unix Programming
Professor Spiegel Kutztown University

2 Interprocess Communication Threads? (maybe) Process Coordination
Topics: Concurrency Unix Internals pipe, fork, exec, wait, signals, etc; Interprocess Communication Shared Memory, Semaphores, Message Queues? Threads? (maybe) Process Coordination Critical Sections Deadlock Topic List

3 Here’s where we start Time – used to order events Event – A (potentially) sensed change Process – An executing program Is a program an executing process? No. A program can, when executed, cause the occurrence of multiple processes

4 A Couple of Definitions
n. union; concurrence of events Concurrent – adj. acting in conjunction; agreeing; taking place at the same time; accompanying; n. a joint or contributory cause Concurrently – adv. to run together Parallel – adv. continuously at equal distance apart; precisely corresponding; similar; n. a line equidistant from another at all points; a thing exactly like another

5 Precedence Graphs Directed Edge – Arrow from one node to another e.g.
B Assume A & B are processes A occurs before (precedes) B, OR, B occurs after (follows) A A A B C D Sequential Facts: A precedes B A precedes C A precedes D B precedes D C precedes D Question: What is B’s relationship to C? B D A C

6 Compiling & Debugging Run gdb under emacs to debug your programs
Manual is available at URL: You must also be able to write makefiles on your own Manual is available at URL: There is a link to each of these on my faculty home page


Download ppt "CIS 552 Advanced Unix Programming"

Similar presentations


Ads by Google