A computer softwareapplication that carries out some task on behalf of users. This is usually divided into file serving, allowing users to store and access files on a common computer; and application serving, where the software runs a computer program to carry out some task for the users. This is the original meaning of the term. Web, mail, and database servers are what most people access when using the internet.
The term is now also used to mean the physical computer on which the software runs. Originally server software would be located on a mainframe computer or minicomputer. These have largely been replaced by computers built using a more robust version of the microprocessor technology that is used in personal computers, and the term "server" was adopted to describe microprocessor-based machines designed for this purpose.
Many new devices now come with server capabilities. The X-Internet, Web Services, and Microsoft's .NET initiative all work to make even the smallest system a server.
Many large enterprises employ numerous servers to support their needs. A collection of servers in one location is often referred to as a server farm. It is possible to configure the machines to distribute tasks so that no single machine is overwhelmed by the demands placed upon it (called "load balancing"), and this is often done for hosts that expect tremendous amounts of activity. The terminology can be even more confusing in this case because the client (or user) will connect to a remote host to access the server application, and that server application may need to access other server software and/or another server machine.
Due to the continual demand for ever more powerful servers in ever decreasing spaces, companies such as IBM have developed higher density configurations, the most notable of which is known as the "blade server". Blade servers incorporate a number of server computers - sometimes as many as nine - each housed inside a high-density module known as a "blade", within the space typically occupied by a single computer.
The rise of the microprocessor-based server was facilitated by the development of several versions of Unix to run on the Intel microprocessor architecture, including Solaris, Linux and FreeBSD. The Microsoft Windows series of operating systems also now includes server versions that support multitasking and other features required for servers, beginning with Windows NT.
The X Window System can cause some confusion in the definition of servers and clients. One might expect that the "server" in X would be the computer in which individual programs are running. In reality, an X server provides access to computer input and output devices, such as monitors, keyboards, and mice. Programs that are running in an X environment connect to the server to gain access to the hardware. In most situations, both the X server, and the X clients (programs) reside on the same computer, but X allows for situations where clients can be running on multiple computers that are miles away.