
Допустим, я хочу создать версию Linux, которая будет работать на процессоре WDC 65C02. Как «определяется» Linux? Каким критериям должна соответствовать операционная система, чтобы считаться Linux, а не просто «какой-то другой домашней ОС?» Я планирую написать это напрямую на ассемблере, так как считаю, что код, сгенерированный cc65, несколько неэффективен.
решение1
«Linux» является торговой маркойодин конкретный продукт(ядро ОС), а не стандарт или спецификация. В отличие, например, от "UNIX", не существует процесса сертификации ОС как "Linux", даже если она достигает 100% совместимости с ней.
Другими словами, ядро ОС, написанное с нуля, не будет Linux по определению (точно так же, как ReactOS не является Windows, хотя это совместимая с Windows ОС), хотя ядро ОС с четким происхождением от "основная линия«Исходный код Linux все еще может в какой-то степени называться Linux. Ядро ELKS для процессора 8086 изначально было ответвлением Linux, но очень быстро разошлось до такой степени, что теперь называет себя только «Linux-подобным» ядром.
ОС будет считаться «дистрибутивом Linux», если она использует ядро Linux. Android можно было бы назвать дистрибутивом Linux (хотя это с некоторой натяжкой), поскольку он по-прежнему работает на ядре Linux, в то время как Debian/kFreeBSD или Debian GNU/Hurd не являются дистрибутивами Linux, поскольку они не включают ядро Linux (хотя они включают все остальное, что есть в Debian Linux).