Под процессом понимается копия выполняемой программы и ее окружение. Здесь мы только упомянем наиболее важные различия между GNU/Linux и Windows® (для получения более подробной информации обратитесь, пожалуйста, к Глава 6, Управление процессами).
Наиболее важное различие напрямую связано с понятием
пользователя: каждый процесс выполняется с правами
пользователя, который его запустил. Внутри себя система идентифицирует
процессы по уникальному номеру, называемому идентификатором
процесса или PID (proccess ID)
. Из этого PID система знает, кто (т.е. какой пользователь)
запустил процесс, некоторые части другой информации, и ей нужно только
проверить достоверность процесса. Давайте возьмем наш пример с
a_file
. Пользователь peter будет иметь возможность
открыть этот файл в
режиме
только для чтения, но не в
режиме чтения-записи, т.к.
его права доступа к файлу запрещают это. И опять же, исключением из этого правила
является root
.
Благодаря этому, GNU/Linux практически неуязвима для вирусов.
Для своей работы вирусы должны заражать исполняемые файлы. Как у
пользователя, у вас нет доступа на запись в уязвимые системные файлы, таким
образом, существенно снижается риск. Вообще говоря, вирусы очень редки в мире
UNIX®. Существует всего лишь несколько малоизвестных вирусов для
Linux, и они безобидны, если выполняются под обычным пользователем.
Только один пользователь может повредить систему запуском этих вирусов:
root
.
Довольно интересно, что антивирусное программное обеспечение для GNU/Linux таки существует, но в основном для файлов DOS/Windows®! Зачем же нужны антивирусные программы, работающие в GNU/Linux, но ориентированные на DOS/Windows®? Все чаще и чаще вы будете встречать системы GNU/Linux, работающие в как файл-серверы для машин Windows® при помощи пакета программ Samba (смотрите главу Общий доступ к файлам и принтерам в книге Руководство по администрированию сервера).
Linux упрощает контроль процессов. Один из методов - это
«сигналы», которые позволяют вам приостановить или убить
процесс путем отправки ему соответствующего сигнала. Однако отправлять
сигналы вы можете только своими собственным процессам. За исключением
root
'а, Linux и системы на базе UNIX® не позволят вам
отправить сигналы процессам, запущенным другими пользователями. В главе
Глава 6, Управление процессами вы узнаете, как получать PID процесса и
отправлять ему сигналы.