Threads play a major role in applications programming today. For example, most Web servers are threaded, as are many Java GUI programs. Here are the major settings in which using threads has been founded convenient and/or efficient:
• Programs with asynchronous events:
Here the program must be ready for various events, but does not know the order in which they might occur. For example, in Sections 3.1 and 3.2, we have a network server connected to several clients. The server does not know from which client the next message will arrive. So, we have the server create a separate thread for each client, with each thread handling only its client.
Read the rest of this entry »
This is a quick-start guide to the user interface of the Plan 9 operating system based on my own experiences getting started at Coraid. For concreteness, it describes the setup actually used at Coraid. Some knowledge of UNIX and of commercial GUIs (Windows, MacOS, or recent Linux) is presumed.
Read the rest of this entry »