Data Carrier Detect ( DCD ) or Carrier Detect ( CD ) is a control signal present inside an RS-232 serial communications cable that goes between a computer and another device, such as a modem . This signal is a simple "high/low" status bit that is sent from a data communications equipment (DCE) to a data terminal equipment (DTE), i.e., from the modem or other peripheral to a computer in a typical scenario. It is present on virtually all PC serial ports - pin 1 of a nine-pin ( DE9 ) serial port, or pin eight over a 25-pin (DB25) port. Its purpose varies depending on the device connected, but the most specific meaning is to indicate when a modem is connected to another remote modem via telephone lines.
40-535: The word "carrier" is a reference to the analog carrier signal generated by a modem, which is modulated to carry the data. On a data modem, the carrier's loss equates to the connection's termination. Much like the Ring Indicator signal, on a PC's serial port, changes to the DCD signal state can generate a hardware interrupt that can be captured by the processor any time the DCD signal changes state, preventing
80-407: A jumper wire to force DCD high in order to work properly. Carrier wave In telecommunications , a carrier wave , carrier signal , or just carrier , is a periodic waveform (usually sinusoidal ) that carries no information that has one or more of its properties modified (the called modulation ) by an information-bearing signal (called the message signal or modulation signal ) for
120-411: A modulating signal to change the sound property of an audio recording and add a sense of depth and movement. The term carrier wave originated with radio. In a radio communication system, such as radio or television broadcasting, information is transmitted across space by radio waves . At the sending end, the information, in the form of a modulation signal, is applied to an electronic device called
160-402: A shell pipeline , the output of the first process needs to pass to the second one, and so on. Another example is a task that has been decomposed into cooperating but partially independent processes which can run simultaneously (i.e., using concurrency, or true parallelism – the latter model is a particular case of concurrent execution and is feasible whenever multiple CPU cores are available for
200-409: A transmitter . In the transmitter, an electronic oscillator generates a sinusoidal alternating current of radio frequency ; this is the carrier wave. The information signal is used to modulate the carrier wave, altering some aspects of the carrier, to impress the information on the wave. The alternating current is amplified and applied to the transmitter's antenna, radiating radio waves that carry
240-740: A virtual memory system, where regions of a process's memory may be really on disk and not in main memory at any time. Even portions of active processes/tasks (executing programs) are eligible for swapping to disk, if the portions have not been used recently. Not all parts of an executing program and its data have to be in physical memory for the associated process to be active. An operating system kernel that allows multitasking needs processes to have certain states . Names for these states are not standardised, but they have similar functionality. When processes need to communicate with each other they must share parts of their address spaces or use other forms of inter-process communication (IPC). For instance in
280-485: A carrier wave of a different frequency, then sending all the carriers through the cable. At the receiver, the individual channels can be separated by bandpass filters using tuned circuits so the television channel desired can be displayed. A similar technique called wavelength division multiplexing is used to transmit multiple channels of data through an optical fiber by modulating them on separate light carriers; light beams of different wavelengths. The information in
320-450: A common physical transmission medium by frequency division multiplexing (as in a cable television system). The term originated in radio communication, where the carrier wave creates the waves which carry the information (modulation) through the air from the transmitter to the receiver. The term is also used for an unmodulated emission in the absence of any modulating signal. In music production , carrier signals can be controlled by
360-446: A data modem on the other end. The signal is asserted at the same time the modem reports its CONNECT message, and stays asserted until the call is disconnected (either intentionally or because of a fault in the line). DCD is deasserted once the local modem is no longer receiving carrier from the remote modem, regardless of which side initiated the disconnect. So long as the DCD signal is high, the computer can assume that any data coming from
400-467: A modulated radio signal is contained in the sidebands while the power in the carrier frequency component does not transmit information itself, so newer forms of radio communication (such as spread spectrum and ultra-wideband ), and OFDM which is widely used in Wi-Fi networks, digital television , and digital audio broadcasting (DAB) do not use a conventional sinusoidal carrier wave. Carrier leakage
440-483: A serial port is for a direct computer-to-computer connection. This requires an adapter called a null modem , which isn't actually a modem in the traditional sense, but rather a connector plug that simply crosses the complementary pins on two serial ports so the two sides can communicate. A null modem typically connects the DTR output of each computer to both the DCD and DSR inputs of the other. When used in this scenario, DCD
SECTION 10
#1732794112164480-460: A single process at a time. However, multitasking allows each processor to switch between tasks that are being executed without having to wait for each task to finish ( preemption ). Depending on the operating system implementation, switches could be performed when tasks initiate and wait for completion of input/output operations, when a task voluntarily yields the CPU, on hardware interrupts , and when
520-403: A time: it is impossible to run more programs at the same time. A program might need some resource , such as an input device, which has a large delay, or a program might start some slow operation, such as sending output to a printer. This would lead to processor being "idle" (unused). To keep the processor busy at all times, the execution of such a program is halted and the operating system switches
560-416: Is "something that takes up time", as opposed to "memory", which is "something that takes up space". The above description applies to both processes managed by an operating system, and processes as defined by process calculi . If a process requests something for which it must wait, it will be blocked. When the process is in the blocked state , it is eligible for swapping to disk, but this is transparent in
600-465: Is called concurrency . For security and reliability, most modern operating systems prevent direct communication between independent processes, providing strictly mediated and controlled inter-process communication. In general, a computer system process consists of (or is said to own ) the following resources: The operating system holds most of this information about active processes in data structures called process control blocks . Any subset of
640-452: Is frequently used for this purpose. Typically, the time-code output of the time source is transmitted to the computer over the same serial line. The computer detects a signal transition on the DCD pin, usually by receiving an interrupt and records a timestamp as soon as possible. In Linux , each serial port is referenced by two device names - one being (for the first serial port) /dev/ttyS0 versus /dev/cua0 . Although these both refer to
680-633: Is interference caused by crosstalk or a DC offset. It is present as an unmodulated sine wave within the signal's bandwidth, whose amplitude is independent of the signal's amplitude. See frequency mixers . [REDACTED] The dictionary definition of carrier wave at Wiktionary Process (computing) In computing , a process is the instance of a computer program that is being executed by one or many threads . There are many different process models, some of which are light weight, but almost all processes (even entire virtual machines ) are rooted in an operating system (OS) process which comprises
720-403: Is said to own resources, of which an image of its program (in memory) is one such resource. However, in multiprocessing systems many processes may run off of, or share, the same reentrant program at the same location in memory, but each process is said to own its own image of the program. Processes are often called "tasks" in embedded operating systems. The sense of "process" (or task)
760-399: Is the execution of those instructions after being loaded from the disk into memory. Several processes may be associated with the same program; for example, opening up several instances of the same program often results in more than one process being executed. Multitasking is a method to allow multiple processes to share processors (CPUs) and other system resources. Each CPU (core) executes
800-399: Is used to simply detect the presence and/or readiness of the other side to start a session. For example, on Windows PCs, the DTR output is kept low until some program is run to access the serial port and raise the DTR signal high. The remote side will sense this as the DCD input going high. Some equipment will recognize the transition alone as the beginning of a session. Other equipment (such as
840-451: The PC from needing to constantly poll the pin. DCD is very important on modems, as it is the computer's primary way to find out that the modem has lost its connection to the remote host. Aside from intentional disconnects, modems can lose their connection for a variety of reasons unexpectedly - such as the phone line being disconnected. It is possible to use a modem without the DCD signal, however
SECTION 20
#1732794112164880-451: The appearance of many processes executing simultaneously (that is, in parallel ), though in fact only one process can be executing at any one time on a single CPU (unless the CPU has multiple cores, then multithreading or other similar technologies can be used). It is usual to associate a single process with a main program, and child processes with any spin-off, parallel processes, which behave like asynchronous subroutines. A process
920-400: The carrier frequency. However the carrier itself is not useful in transmitting the information, so the energy in the carrier component is a waste of transmitter power. Therefore, in many modern modulation methods, the carrier is not transmitted. For example, in single-sideband modulation (SSB), the carrier is suppressed (and in some forms of SSB, eliminated). The carrier must be reintroduced at
960-402: The carrier. The frequency spectrum of a modulated AM or FM signal from a radio transmitter is shown above. It consists of a strong component (C) at the carrier frequency f C {\displaystyle f_{C}} with the modulation contained in narrow sidebands (SB) above and below the carrier frequency. The frequency of a radio or television station is considered to be
1000-405: The connection versus from the modem. External modems with LED status lights usually have a light labeled "CD" ( carrier detect ). This status light is directly coupled with what the modem is sending the DCD line. By default, when a modem is powered up, the DCD signal is deasserted. It is not asserted until the modem either makes an outgoing call, or answers an incoming call, and then connects with
1040-487: The console port of a router ) may expect characters to be transmitted, but the DCD signal high is still a prerequisite for every communication. The serial DCD pin can be used to accurately detect a PPS signal, as described in RFC 2783: One convenient means to provide a PPS signal to a computer system is to connect that signal to a modem-control pin on a serial-line interface to the computer. The Data Carrier Detect (DCD) pin
1080-431: The information to the receiver 's location. At the receiver, the radio waves strike the receiver's antenna, inducing a tiny oscillating current in it, which is applied to the receiver. In the receiver, the modulation signal is extracted from the modulated carrier wave, a process called demodulation . Most radio systems in the 20th century used frequency modulation (FM) or amplitude modulation (AM) to add information to
1120-426: The modem was sent from the remote side. Virtually all newer modems allowing the behavior of the DCD signal to be configured. Typical options available include "always assert DCD", "assert DCD only when connected", and "always assert DCD except immediately after sensing a disconnect". The meaning of DCD differs when the modem is in fax or voice modes. In these modes, its importance is diminished. Frequent use of
1160-400: The only way for the computer to know that a connection is disconnected is by the modem transmitting the words " NO CARRIER " over the data lines. Because the words "NO CARRIER" are also a message that could appear in the context of a normal data session (for example, if typed by a person on the remote end), there is no positive way for a computer program to differentiate the words being sent over
1200-758: The operating system scheduler decides that a process has expired its fair share of CPU time (e.g, by the Completely Fair Scheduler of the Linux kernel ). A common form of multitasking is provided by CPU's time-sharing that is a method for interleaving the execution of users' processes and threads, and even of independent kernel tasks – although the latter feature is feasible only in preemptive kernels such as Linux . Preemption has an important side effect for interactive processes that are given higher priority with respect to CPU bound processes, therefore users are immediately assigned computing resources at
1240-629: The processes that are ready to run). It is even possible for two or more processes to be running on different machines that may run different operating system (OS), therefore some mechanisms for communication and synchronization (called communications protocols for distributed computing) are needed (e.g., the Message Passing Interface {MPI}). By the early 1960s, computer control software had evolved from monitor control software , for example IBSYS , to executive control software . Over time, computers got faster while computer time
Data Carrier Detect - Misplaced Pages Continue
1280-400: The processor to run another program. To the user, it will appear that the programs run at the same time (hence the term "parallel"). Shortly thereafter, the notion of a "program" was expanded to the notion of an "executing program and its context". The concept of a process was born, which also became necessary with the invention of re-entrant code . Threads came somewhat later. However, with
1320-447: The program code, assigned system resources, physical and logical access permissions, and data structures to initiate, control and coordinate execution activity. Depending on the OS, a process may be made up of multiple threads of execution that execute instructions concurrently . While a computer program is a passive collection of instructions typically stored in a file on disk, a process
1360-416: The purpose of conveying information. This carrier wave usually has a much higher frequency than the message signal does. This is because it is impractical to transmit signals with low frequencies. The purpose of the carrier is usually either to transmit the information through space as an electromagnetic wave (as in radio communication ), or to allow several carriers at different frequencies to share
1400-426: The receiver by a beat frequency oscillator (BFO). Carriers are also widely used to transmit multiple information channels through a single cable or other communication medium using the technique of frequency division multiplexing (FDM). For example, in a cable television system, hundreds of television channels are distributed to consumers through a single coaxial cable , by modulating each television channel on
1440-607: The resources, typically at least the processor state, may be associated with each of the process' threads in operating systems that support threads or child processes. The operating system keeps its processes separate and allocates the resources they need, so that they are less likely to interfere with each other and cause system failures (e.g., deadlock or thrashing ). The operating system may also provide mechanisms for inter-process communication to enable processes to interact in safe and predictable ways. A multitasking operating system may just switch between processes to give
1480-427: The same physical port, one important distinction between the way Linux treats these two device names has to do with the DCD line. When ttyS0 is waited on in a system call , Linux assumes that since this device is for receiving telephone calls, it will put a process to sleep — figuring that so long as DCD is low, there is nothing to do. When cua0 is used - as it is when placing telephone calls - Linux assumes that
1520-428: The simple pressing of a key or when moving a mouse. Furthermore, applications like video and music reproduction are given some kind of real-time priority, preempting any other lower priority process. In time-sharing systems, context switches are performed rapidly, which makes it seem like multiple processes are being executed simultaneously on the same processor. This seemingly-simultaneous execution of multiple processes
1560-428: The software needs to access the port while DCD is low for the purpose of dialing the number, so this blocking behavior doesn't exist. Nevertheless, there is a control mode flag called CLOCAL which is what actually activates or deactivates this behavior, and by default, the flag is set for cua0 but not for ttyS0. An application that insists on using a "tty" port versus a "cua" port is an example of one that might require
1600-626: Was still neither cheap nor fully utilized; such an environment made multiprogramming possible and necessary. Multiprogramming means that several programs run concurrently . At first, more than one program ran on a single processor, as a result of underlying uniprocessor computer architecture, and they shared scarce and limited hardware resources; consequently, the concurrency was of a serial nature. On later systems with multiple processors , multiple programs may run concurrently in parallel . Programs consist of sequences of instructions for processors. A single processor can run only one instruction at
#163836