A server is a computer program that provides services to other computer programs (and their users) which called “clients”. The computer that a server program runs in is also frequently referred to as a server. That machine may be a dedicated server or used for other purposes as well.
In the client/server programming model, a server program awaits and fulfills requests from client programs, which may be running in the same or other computers. A given application in a computer may function as a client with requests for services from other programs and also as a server of requests from other programs.
Servers are often categorized in terms of their purpose. A Web server, for example, is a computer program that serves requested HTML pages or files. A Web client is the requesting program associated with the user. The Web browser in your computer is a client that requests HTML files from Web servers.
Nearly all personal computers are capable of serving as network servers. However, usually software/hardware system dedicated computers have features and configurations just for this task. For example, dedicated servers may have high-performance RAM, a faster processor and several high-capacity hard drives. In addition, dedicated servers may be connected to redundant power supplies, several networks and other servers. Such connection features and configurations are necessary as many client machines and client programs may depend on them to function efficiently, correctly and reliably.