Linux - это полная многозадачная многопользовательская операционная система (точно также как и другие версии UNIX). Linux достаточно хорошо совместим с рядом стандартов на уровне исходных текстов, включая IEEE POSIX.1, System V и BSD.
Другие специфические внутренние черты Linux включают контроль работ по стандарту POSIX (используемый оболочками, такими как csh и bash), псевдотерминалы (pty), поддержку национальных и стандартных клавиатур динамически загружаемыми драйверами клавиатур.
Ядро может само эмулировать команды 387-FPU, так что системы без сопроцессора могут выполнять программы, на него расчитывающие (т.е. с плавающей точкой).
Linux поддерживает различные типы файловых систем для хранения данных. Некоторые файловые системы, такие как файловая система ext2fs, были созданы специально для Linux. Поддерживаются также другие типы файловых систем, такие как Minix-1 и Xenix. Реализована также файловая система MS-DOS, позволяющая прямо обращаться к файлам MS-DOS на жестком диске. Поддерживается также файловая система ISO 9660 CD-ROM для работы с дисками CD-ROM.
Linux обеспечивает полный набор протоколов TCP/IP для сетевой работы. Поддерживается весь спектр клиентов и услуг TCP/IP, таких как FTP, telnet, NNTP и SMTP.
Ядро Linux сразу создано с учетом специального защищенного режима для процессоров Intel 80386 и 80486. В частности, Linux использует парадигму описания памяти в защищенном режиме и другие новые свойства процессоров.
Для увеличения объема доступной памяти Linux осуществляет также разбиение диска на страницы: то есть на диске может быть выделено до 256 Мбайт "пространства для свопинга" (swap space). Когда системе нужно больше физической памяти, то она с помощью свопинга выводит неактивные страницы на диск. Это позволяет выполнять более объемные программы и обслуживать одновременно больше пользователей. Однако свопинг не исключает наращивания физической памяти, поскольку он снижает быстродействие, увеличивает время доступа.
Ядро также поддерживает универсальный пул памяти для пользовательских программ и дискового кэша. При этом для кэша может использоваться вся память, и наоборот, кэш уменьшается при работе больших программ.
Выполняемые программы используют динамически связываемые библиотеки, т.е. выполняемые программы могут совместно использовать библиотечную программу, представленную одним физическим файлом на диске. Это позволяет выполняемым файлам занимать меньше места на диске, особенно тем, которые многократно используют библиотечные функции. Есть также статические связываемые библиотеки для тех, кто желает пользоваться отладкой на уровне объектных кодов или иметь "полные" выполняемые программы, которые не нуждаются в разделяемых библиотеках. В Linux разделяемые библиотеки динамически связываются во время выполнения, позволяя программисту заменять библиотечные модули своими собственными.
Linux на сегодняшний день - самая распространенная бесплатная операционная система с открытым исходным кодом. При ее разработке из мира семейства UNIX старались взять все лучшее. Благодаря участию десятков тысяч разработчиков программного обеспечения и координации их действий через Интернет Linux и программное обеспечение для нее развивается очень динамично, ошибки и различные проблемы в программном обеспечении, как правило, исправляются в считанные часы после их обнаружения. Большую помощь в развитии и распространении Linux и сопутствующего, ему программного обеспечения оказали фонд Свободного программного обеспечения (Free Software Foundation, USA) и лицензия GNU (The GNU General Public License, Универсальная общественная лицензия GNU) для программного обеспечения. На сегодняшний день существует одно ядро Linux, разработку которого координируют его создатели Линус Торвальдс и Алан Кокс, и множество дистрибутивов (не менее 2-3 десятков), отличающихся как функциональным назначением, так и составом программного обеспечения, входящим в дистрибутив. Существуют дистрибутивы, занимающие десяток компакт-дисков, и дистрибутивы, умещающиеся на одной-двух дискетах. Все, что справедливо для семейства UNIX — справедливо и для Linux. Широчайшая поддержка аппаратных платформ, малая требовательность к аппаратным ресурсам (процессор 486, 8 Мбайт оперативной памяти, винчестер120 Мбайт). Масштабируемость, поддержка мультипроцессорных систем, кластеризация, поддержка распределенных вычислений, десятки графических оболочек — и это далеко не все. Поддерживаются десятки файловых систем, родная файловая система Ext2. И при всей мощи — достаточно дружественная операционная система, способная работать как на мощнейшем сервере, так и на стареньком "пентиуме" где-нибудь в офисе.