Другие языки программирования и технологии

Что такое ядро ос своими словами) И как как процессор узнает что 2 + 2 = 4

1 это просто набор функций которые обрабатывают другие функции ?
2 там что миллионы кода ?
NB
Nur-Bek Bek
1 466
Ядро ос это такая вещь, которую можно обобщено назвать API. Вся Windows, например, это одна большая API, которая предоставляет те или иные возможности приложениям (доступ к памяти, процессору, файловой системе и т. д. и т. п.) через определенные методы, которые создали разработчики Windows.

Там не миллион строчек кода, просто очень удобная система доступа к тем или иным модулям. А все остальное, что ты видишь в Windows - это просто отдельные приложения, которые созданы либо все теми же разработчиками оси, либо сторонними разработчиками (когда ты качаешь какие-то приложения и т. д. и т. п.). Это касается и других unix-подобных систем. Есть конечно различия, но небольшие.

То, как работает процессор и видеокарта не объяснить в сто строчек. Это очень сложные технологии, и тут уж надо читать матчасть. Там слишком много вычурных терминов и понятий, которые неосведомленным просто так не понять.

2 + 2 = 4 это результат выполнения определенных формул, которые используют во всем мире, почитай об этом тут https://ru.wikipedia.org/wiki/Сумма_(математика)
Игорь Винтила
Игорь Винтила
6 058
Лучший ответ
Nur-Bek Bek да ну это все читать мне просто интересно функция или что там что вычисляет что 2 + 2 = 4 это там может быть очень дохрена кода или же просто строк 100)
Узнает, узнает... Отсюда вывод - процессор умней тебя!
О ядре ОС написали. Как процессор узнает, что 2+2=4 - складывает, как и на бумаге многозначные числа, потому что в двоичной системе это 10+10=100. Процессор вообще не арифметическая машина, а логическая машина, выполнение арифметических операций - это уже надстройка над логическими операциями.
Nur-Bek Bek Для того чтобы его научить распознавать 2 + 2 сколько кода туда впихали вот что мне интересно) может конечно и 1000 строк кода хватает, а может и меньше, мне просто интересно сколько ушло на это строк кода или человеческих усилий)
Ядро операционной системы - это та её часть, которая выполняется независимо от драйверов.
Процессор включает в себя блок АЛУ (арифметико-логическое устройство), которое может выполнять операцию сложения двух чисел.
Само по себе ядро не очень большое. Миллионы строк - это в основном драйвера периферийных устройств.
программа на C -> компилятор -> ассемблер -> операционные коды -> декодер ОП процессора -> декодируются код сложения, используемые регистры складываемых чисел и регистр назначения -> на full adder поступают данные с регистров -> операция выдает результат, записываемый в указанный регистр назначения, флаг переполнения включается при переполнении
Nur-Bek Bek Это я и сам знаю, я начинал с ассемблера и бросил сразу его.
Если объяснять очень примитивно - Там миллиарды микротранзисторов, которые тоньше человеческого волоса в сотни раз. Нанотехнологии. И эти микротранзисторы программируются на языке программирования. То есть человек пишет код, и по этому коду определяется какие транзисторы в какой момент откроются, а в какой закроются, потому что схема процессора имеет очень много комбинаций работы
Bratuxa Bratan
Bratuxa Bratan
3 202
Nur-Bek Bek Нифига себе мне понравилось твое объяснение, да ты просто профессор ша)
Процессор узнаёт что такое 2+2 лишь после того как код программы перерабатывается в "операционные коды "(ОП коды), код программы превращается в набор единиц и нулей (так сигналы легче обрабатывать процессору). Есть язык ассемблер, это некое представление оп кодов на человеческом языке, например 2+2 может выглядеть примерно так
mov eax, 2 это команда записывает в регистр процессора число 2 (eax = 2)
add eax. 2 а эта прибавляет к записанному числу в регистре число 2. (eax = 4)
Для процессора эти команды лишь наборы единиц и нулей, некое представление сигналов
(1 - присутствие сигнала, 0 - отсутствие сигнала) В общем говоря это сложное устройство, вот несколько статей для лучшего понимания:
https://ru.wikipedia.org/wiki/Центральный_процессор
https://ru.wikipedia.org/wiki/Система_команд
https://ru.wikipedia.org/wiki/Архитектура_процессора
https://ru.wikipedia.org/wiki/Микроархитектура