Browse Definitions :

controller (computing)

What is a controller (computing)?

A controller, in a computing context, is a hardware device or a software program that manages or directs the flow of data between two entities. In computing, controllers may be cards, microchips or separate hardware devices for the control of a peripheral device. In general, a controller can be thought of as something or someone that interfaces between two systems and manages communications between them.

Who uses controllers?

Anyone who uses a computing device, such as a laptop or smartphone, employs controllers to connect to devices and applications that are used for business or personal activities. Controllers extend a computer's processing power to resources that help improve a user's productivity.

What is the difference between a controller and a driver?

Think of a controller as a component interfacing with the central processing unit and moving data back and forth between the CPU and the device being controlled, such as a printer or disk drive. Controllers typically have a buffer to store data coming either from the CPU or the device being controlled. By contrast, a device driver is a software program that instructs the controller on how to operate. Figure 1 depicts the difference between a controller and a driver as implemented on a motherboard.

how device controllers work with drivers
Figure 1. Device controllers and drivers

Figure 1 depicts circuit boards that have both device drivers and controllers. The controller links to a device, while the driver links the controller with the computer's operating system (OS).

Examples of controllers in technology applications

Control systems and controllers come in many forms and applications. This table offers examples of controller applications.

Examples of Technology Controllers
Type of Controller Functions Performed
Graphics card Integrated circuit card in a computer or, in some cases, a monitor that provides digital-to-analog conversion, video RAM and a video controller so that data can be sent to a computer's display
Game controller Input device for playing video games
Network interface card (NIC) Computer circuit board or card that is installed in a computer so that it can be connected to a network
Wide area network interface card (WIC) Specialized NIC that enables devices to connect to a wide area network
Flash controller Part of flash memory that communicates with the host device and manages the flash file directory
Application delivery controller (ADC) Data center network device that helps manage client connections to complex web and enterprise applications
Baseboard management controller (BMC) Specialized service processor that monitors the physical state of a computer, network server or other hardware device using sensors and communicating with the system administrator through an independent connection
Session border controller (SBC) Device or application that governs the way calls, also called sessions, are initiated, conducted and terminated in a voice over IP network
Primary domain controller (PDC) Role that can be assigned to a server to manage access to a set of network resources -- e.g., applications, printers -- for a group of users
Backup domain controller (BDC) Role that can be assigned to a server to manage access to a set of backup resources -- storage devices -- for a group of users

The importance of controllers

Controllers and drivers provide important links between the computer and devices and applications being used. While the OS controls computer functions, controllers and their associated drivers extend OS functionality to specialized tools and resources that increase a user's productivity.

Learn about the benefits of application delivery controllers, and see what software-defined network data center controllers do in a network.

This was last updated in February 2023

Continue Reading About controller (computing)

  • remote infrastructure management

    Remote infrastructure management, or RIM, is a comprehensive approach to handling and overseeing an organization's IT ...

  • port address translation (PAT)

    Port address translation (PAT) is a type of network address translation (NAT) that maps a network's private internal IPv4 ...

  • network fabric

    'Network fabric' is a general term used to describe underlying data network infrastructure as a whole.

  • digital innovation

    Digital innovation is the adoption of modern digital technologies by a business.

  • business goals

    A business goal is an endpoint, accomplishment or target an organization wants to achieve in the short term or long term.

  • vertical SaaS (software as a service)

    Vertical SaaS describes a type of software as a service solution created for a specific industry, such as retail, financial ...

  • employee onboarding and offboarding

    Employee onboarding involves all the steps needed to get a new employee successfully deployed and productive, while offboarding ...

  • skill-based learning

    Skill-based learning develops students through hands-on practice and real-world application.

  • gamification

    Gamification is a strategy that integrates entertaining and immersive gaming elements into nongame contexts to enhance engagement...

Customer Experience
  • Microsoft Dynamics 365

    Dynamics 365 is a cloud-based portfolio of business applications from Microsoft that are designed to help organizations improve ...

  • Salesforce Commerce Cloud

    Salesforce Commerce Cloud is a cloud-based suite of products that enable e-commerce businesses to set up e-commerce sites, drive ...

  • Salesforce DX

    Salesforce DX, or SFDX, is a set of software development tools that lets developers build, test and ship many kinds of ...