Jump to content

Communications ToolBox

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Maury Markowitz (talk | contribs) at 20:17, 1 August 2012 (+ref). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Template:Distinguish2

The Communications Toolbox, generally shortened to Comm Toolbox or CTB, was a suite of application programming interfaces, libraries and device drivers for the classic Mac OS that implemented a wide variety of serial and network communication protocols.

Using the CTB, one could write an application that would seamlessly work over AppleTalk, a modem or any variety of other connections. Developers could also write plug-in communications modules known as "Tools", allowing any CTB-aware application to use that connection method.

CTB was notoriously slow and buggy, and received mixed support from developers. Examples of applications using it for simple tasks were common, but many target uses, like terminal emulators, almost always ran faster when designed to target a single connection type and avoid the CTB.

Description

The CTB was based on a shared library concept in an era when the Mac OS did not include a shared library system. Instead, the CTB wrote its own driver manager layer, the Communications Resource Manager. The Resource Manager was responsible for installing and managing the various drivers, or "Tools" that provided various functions within the CTB system.[1] There were three primary types of Tools, each with their own associated Manager: the Connection Manager handled the communications drivers that opened channels to remote services, the Terminal Manager managed Tools that implemented the character conversion and command string interpretation needed to support any sort of terminal emulator, and the File Transfer Manager did the same for any sort of file transfer protocol.[2]

Applications could use any, or all, of the Managers in the CTB. A typical terminal emulator would use all of them, connecting a Tool selected in the Connection Manager to another in the Terminal Manager, and then periodically using the File Transfer Manager on user request. However, another application might use only one of these, say the File Transfer Manager to send a file to a remote server. The applications typically used the GUI elements supplied by the Managers to handle user interaction, but could also enumerate the tools on their own to provide a custom GUI.[2]

References

Citations
  1. ^ Inside 1991, p. 3.
  2. ^ a b Gaspar 1990.
Bibliography