While often used to refer to a specific piece of computer hardware on a network, a server can be any computer process or program that shares a resource to one or more clients. In a file-sharing context, for example, while simply housing files alone does not necessarily classify any individual machine within a peer-to-peer system as a server, the mechanism itself by which the files are shared to clients by the operating system is considered a server.
The term server can also refer to a web server application, like Apache HTTP Server or IIS, which can be run by any computer capable of supporting the software, not just the sort of higher capacity, more powerful machines generally used as network servers.
Web servers and network servers generally run for long, uninterrupted periods, so availability must be very high, which places a premium on durable and reliable hardware. Servers used for critical systems use specialized hardware known to have very low failure rates in order to minimize down time and provide optimal stability. In modern networking, the use of server RAIDs is common, providing data and service redundancy as an added protection against network instability caused by hardware failure, software crashes and other interruptions.