Talk (Unix)
Encyclopedia
talk was a program originally used for live text communication
Online chat
Online chat may refer to any kind of communication over the Internet, that offers an instantaneous transmission of text-based messages from sender to receiver, hence the delay for visual access to the sent message shall not hamper the flow of communications in any of the directions...

 between different users of a single multi-user computer
Computer
A computer is a programmable machine designed to sequentially and automatically carry out a sequence of arithmetic or logical operations. The particular sequence of operations can be changed readily, allowing the computer to solve more than one kind of problem...

 running the Unix
Unix
Unix is a multitasking, multi-user computer operating system originally developed in 1969 by a group of AT&T employees at Bell Labs, including Ken Thompson, Dennis Ritchie, Brian Kernighan, Douglas McIlroy, and Joe Ossanna...

 operating system. In 1983, a new version of talk was introduced as a Unix command with BSD
Berkeley Software Distribution
Berkeley Software Distribution is a Unix operating system derivative developed and distributed by the Computer Systems Research Group of the University of California, Berkeley, from 1977 to 1995...

 v4.2, and would also accommodate electronic conversations between users on different machines. Follow-ons to talk included ntalk and ytalk. ytalk was the first to allow conversations between more than two users. All of these programs split the interface into different sections for each participant. The interfaces did not convey the order in which statements typed by different participants would be reassembled into a log of the conversation. Also, all three programs are real-time text
Real-time text
Real-time text is streaming text that is continuously transmitted as it is typed or otherwise composed. It allows conversational use of text, where people interactively converse with each other.-Use over instant messaging:...

, where they transmit each character as it was typed. This leads to a more immediate feel to the discussion than recent instant messaging clients or IRC
Internet Relay Chat
Internet Relay Chat is a protocol for real-time Internet text messaging or synchronous conferencing. It is mainly designed for group communication in discussion forums, called channels, but also allows one-to-one communication via private message as well as chat and data transfer, including file...

. Users more familiar with other forms of instant text communication would sometimes find themselves in embarrassing situations by typing something and deciding to withdraw the statement, unaware that other participants of the conversation had seen it all happen in real time.

talk was previously available on the DEC PDP-11 computer system in the 1970s. In that earlier form, talk did not separate text from each user. Thus, if each user were to type simultaneously, characters from each user were intermingled. Since slow teleprinter
Teleprinter
A teleprinter is a electromechanical typewriter that can be used to communicate typed messages from point to point and point to multipoint over a variety of communication channels that range from a simple electrical connection, such as a pair of wires, to the use of radio and microwave as the...

 keyboards were used at the time (11 characters per second maximum), users often could not wait for each other to finish. It was common etiquette for a long typing user to stop when intermingling occurs to see the listener's interrupting response. This is much the same as interrupting a long monologue when speaking in person.

The more modern Unix version of talk uses curses
Curses (programming library)
curses is a terminal control library for Unix-like systems, enabling the construction of text user interface applications.The name is a pun on the term “cursor optimization”. It is a library of functions that manage an application's display on character-cell terminals .- Overview :The curses API...

 to break the terminal into multiple zones for each user, thus avoiding intermingling text.

A popular program called "flash", which sent malformed information via the talk protocol, was frequently used by pranksters to corrupt the terminal output of the unlucky target in the early 1990s. It did this by including terminal commands in the field normally designated for providing the name of the person making the request. When the victim would receive the talk request, the name of the person sending the request would be displayed on their screen. This would cause the terminal commands to execute, rendering the person's display unreadable until they reset it. Later versions of talk blocked flash attempts and alerted the user that one had taken place. Later it became clear that, by sending different terminal commands, it is even possible to have the user execute commands. As it has proven impossible to fix all programs that output untrusted data to the terminal, modern terminal emulators have been rewritten to block this attack, though some may still be vulnerable.

See also

  • Goofey
    Goofey
    Goofey was an early instant messaging program for UNIX systems, written in the mid-1990s by Tim MacKenzie and Darren Platt. At the time it was seen as an improvement over the UNIX talk and mail programs and was popular with computer science students studying at Monash University in Melbourne,...

  • List of Unix programs
  • Write (Unix)
    Write (Unix)
    write can refer to several Unix commands. All known variations of write are used to write messages to another user. The most popular variation sends a message directly to another user's TTY.-Usage:The syntax for the write command is:...

    – program for sending messages for unix (since 1975)
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK