Сб апр 23, 2022 20:59:57
НовыйДень писал(а):Занавес! А что же тогда делают драйвера периферии? Мдяяя....
Вс апр 24, 2022 08:20:22
Занавес! А что же тогда делают драйвера периферии? Мдяяя....
с ОСРВ я работаю уж лет 10
Вс апр 24, 2022 08:34:51
Вс апр 24, 2022 09:25:54
Вс апр 24, 2022 10:50:43
А кто-нить тут понимает разницу между ОС компьютера и ОСРВ микроконтроллера?
Потому как даже в балшом кампутере ОС с железом работает через драйверы. Драйвер видеокарты, драйвер HDD, драйвер звука, драйвер сетевой карты.
COKPOWEHEU, как видно, ратует именно за такую операционку.
В частности, COKPOWEHEU предлагал внедрить в стандартную библиотечную ф-цию
КА - это не синоним многозадачности. КА - это просто блок с набором состояний.
И напрасно COKPOWEHEU пытается что-то противопоставить моему 20-летнему опыту и знаниям
утверждения Псаки о морских берегах Белоруссии
Машинный код? Хм. Это который
Вс апр 24, 2022 11:11:22
Вс апр 24, 2022 16:51:13
Для вас, очевидно, нет.Так между словами Code и Mode есть разница?
Только потому что какой-то политически озабоченный неуч об этом орет? Я вас огорчу, чтобы я признал неправоту, нужны факты, а не крики.не желая признать даже долю своей неправоты
То есть наконец-то прекратите нести свой бред? Ну наконец-то!На этом ставлю жыыырную точку.
Вс апр 24, 2022 16:57:44
Вс апр 24, 2022 16:58:14
COKPOWEHEU писал(а):работа с железом и распределение памяти и процессорного времени это задача ядра
COKPOWEHEU писал(а):Они в юзерспейсе работают по-вашему?
НовыйДень писал(а):А кто-нить тут понимает разницу между ОС компьютера и ОСРВ микроконтроллера?
НовыйДень писал(а):Просто они написаны через API, принятое в ОС
Вс апр 24, 2022 16:59:56
Вс апр 24, 2022 17:54:16
Вс апр 24, 2022 18:37:51
Вс апр 24, 2022 21:56:12
Вы, наверное, имели в виду добровольно. Вызывая функцию ожидания поток говорит ядру "мне процессорное время пока не нужно, отдай кому-нибудь другому".кстати, функция yeild (если я правильно написал) была и в кооперативках, есть и в других, в т.ч. rtos, да и sleep никто не отменял - все эти функции принудительно переключают задачи.
Это уже развитие в другую сторону: вместо работы с устройствами напрямую ядро делегирует эту задачу (и соответствующие права) выделенным процессам.Нифига. Пример- QNX. Кстати, и MINIX построена по такому же принципу.
Это с какой стороны посмотреть. Про х86 сказать не могу, но в RISC-V тоже 4 уровня: машина, гипервизор, система и юзер. А учитывая сказанное вами ранее, работа с устройствами может быть проброшена на любой уровень.Не в ядре! У х86 так-то 4 уровня привилегий. 0- это ядро, 3- юзверь. А между ними ещё 2, вот в них и работают.
Нет никакой разницы.
Пн апр 25, 2022 06:48:33
COKPOWEHEU писал(а):Это уже развитие в другую сторону: вместо работы с устройствами напрямую ядро делегирует эту задачу (и соответствующие права) выделенным процессам.
COKPOWEHEU писал(а):Контроллеры заточены под быструю и предсказуемую реакцию на внешние события при малой вычислительной нагрузке, поэтому для них обычно пишут на регистрах, конечных автоматах и ОСРВ.COKPOWEHEU,
COKPOWEHEU писал(а): Скорее всего, все же гостевую, ведь ей либо пробрасывают реальные устройства, либо эмулируют виртуальные. А гипервизор работает скорее в упомянутой вами философии микроядра: раздал кому надо права, а в тонкости не лезет.
Пн апр 25, 2022 09:19:17
Дело не в винде и линуксе, дело в соображениях безопасности. Нельзя просто так давать всем юзерским приложениям доступ ко всей памяти, периферии и прочему. Соответственно, ядро должно хотя бы раздать права доверенным приложениям.Это просто другая архитектура построения ОС. Я же не зря выше заметил, что кроме Выньды и Линукса спорщики ничем не пользовались и не узучали.
Продолжайте свою мысль. Пока никакого противоречия с моими высказываниями не вижу.Например, QNX- это ОСРВ, для которой детерминировано время реакции на внешние события.
Я говорю об уровнях привилегий процессора и коде, который на них работает. Открываем документацию на процессор и видим Machine mode, Hypervisor mode, System mode, User mode и наборы регистров, которые на них доступны. Для машины у них будет префикс m, для гипервизора h, для системы s, для юзера u. Например, регистр адреса возврата из прерывания mepc, hepc, sepc, uepc (хотя не уверен, возможно, юзерские прерывания уже выкинули из спецификации).Какай, нафиг, гипервизор, какая гостевая ОС?
Я не спорю, что многого не знаю, но о чем не знаю, я и не говорю. Например, я не знаю как называются уровни привилегий в x86, так я сразу сказал, что говорю про risc-v. Я не знаю какова точно конвенция сохранения регистров в arm, так я и говорю про risc-v и avr. Общая-то суть остается одинаковой.тогда ужаснётесь, как много вы не знаете об ОС.
Пн апр 25, 2022 09:23:35
Пн апр 25, 2022 10:01:54
Пн апр 25, 2022 10:42:39
ну, поскольку тут пошел уже сплошной оффтоп, скажу и я.Eddy_Em писал(а):писать нормальный код
int user_data_invalid_set_value_driver_usart_vitality_exception_loop(LPTRN_vector *data_user_invalid){
return data_user_invalid->invalid_def_data ? 0 : data_user_invalid->invalid_def_data->error_definition->text;
}
Пн апр 25, 2022 11:30:49
ARV писал(а):и каждый, кто написал хоть три строки кода, считает себя вправе рассказывать, как ПРАВИЛЬНО писать код...
Пн апр 25, 2022 11:40:39
а красота - понятие субъективное.AVI-crak писал(а):Всё это умещается в одно слово - красиво.
и это не мешает существованию 99,99% успешно работающих, прекрасных и полезных приложенийAVI-crak писал(а):Пределы видимости игнорируют 99,99% программистов.