User`s guide
Managing Services and Processes 126
What Are Services and Processes
Instances of any programs currently running in the system are referred to as processes. A
process can be regarded as the virtual address space and the control information necessary for
the execution of a program. A typical example of a process is the vi application running on your
server or inside your Linux-based Containers. Along with common processes, there are a great
number of processes that provide an interface for other processes to call. They are called
services. In many cases, services act as the brains behind many crucial system processes. They
typically spend most of their time waiting for an event to occur or for a period when they are
scheduled to perform some task. Many services provide the possibility for other servers on the
network to connect to the given one via various network protocols. For example, the nfs
service provides the NFS server functionality allowing file sharing in TCP/IP networks.
You may also come across the term "daemon" that is widely used in connection with processes
and services. This term refers to a software program used for performing a specific function on
the server system and is usually used as a synonym for "service". It can be easily identified by
"d" at the end of its name. For example, httpd (short for the HTTP daemon) represents a
software program that runs in the background of your system and waits for incoming requests to
a web server. The daemon answers the requests automatically and serves the hypertext and
multimedia documents over the Internet using HTTP.
When working with services, you should keep in mind the following. During the lifetime of a
service, it uses many system resources. It uses the CPUs in the system to run its instructions and
the system's physical memory to hold itself and its data. It opens and uses files within the file
systems and may directly or indirectly use certain physical devices in the system. Therefore, in
order not to decrease your system performance, you should run only those services on the
Parallels server that are really needed at the moment.
Besides, you should always remember that running services in the Host OS is much more
dangerous than running them in virtual machines and Containers. In case violators get access to
one of the virtual machines and Containers through any running service, they will be able to
damage only the virtual machine and Container where this service is running, but not the other
virtual machines and Containers on your server. The Parallels server itself will also remain
unhurt. And if the service were running on the Parallels server, it would damage both the server
and all virtual machines and Containers residing on it. Thus, you should make sure that you run
only those services on the server that are really necessary for its proper functioning. Launch all
additional services you need at the moment inside separate virtual machines and Containers. It
can significantly improve your system safety.










