Friday, September 21, 2012

Which task do I do now?

A multitasking operating system is one in which several tasks can be in progress at the same time.  Most modern operating systems are multitasking, the major exception being systems dedicated to a single application.

Most multitasking operating systems are event driven, and many of them are preemptive, that is, they interrupt the running task when a higher-priority task becomes ready or the task has been running longer than a specified time.  A multitasking system uses a dispatcher [see the post on event-driven systems] to determine which task to run next.  A multitasking system provides locks to prevent concurrent access to shared resources, and must detect deadlock conditions where two or more tasks issue exclusive requests for the same resources while holding resources required by the other tasks.
Read more »

Monday, September 17, 2012

Alan M. Turing: Theories of everything

Alan M. Turing also contributed to fields other than cryptanalysis and computers.

Near the end of World War II, Turing helped develop a method of providing secure voice communication (called SIGSALY) that used pulse code modulation, which was a method of converting sound into discrete elements that was new at that time.

Turing investigated morphogenesis, how multi-celled organisms acquire their shape, and how non-uniform features could arise out of a uniform starting state.

Turing noticed that in apparently stable chemical systems, diffusion can cause changes that become more complex with time. This can cause oscillating chemical reactions or chaotic behavior.

Turing also designed the first chess-playing program; he also took up long-distance running, and occasionally ran 40 miles to work.

Driven by Events

Event-driven systems are programs that handle events (input and output, timer expiration, clock-initiated tasks, exceptional situations detected by computer hardware or the program, or other conditions internal or external to the program) as they occur.  In non-event-driven programs, these situations must be tested for at frequent points in the program.  Operating systems, process control systems, simulation programs, and multi-threaded programs can be event driven.

Read more »

Friday, September 7, 2012

Alan M. Turing: I compute, therefore I am thinking?

Alan M. Turing explored the idea of machine intelligence around 1941 and published the paper "Computing Machinery and Intelligence" in 1950.

Turing proposed a thought experiment which he called the imitation game, which has become known as the Turing test.  In it a person called the interrogator conducts interviews with two subjects, a machine and a human being, in a room with two teleprinters (so that the only the text of the interview can be observed). The  interrogator does not know which teleprinter is operated by the machine and which by the human.  If the interrogator cannot determine which subject is the machine, than the machine can be considered intelligent.

Read more »