Главная » Архив меток: операционные системы

Архив меток: операционные системы

[Из песочницы] Настолько ли стар твой Windows?

Как показывает бурное обсуждение последних статей на Хабре, посвященных Windows системам, большое количество продвинутых и не очень пользователей отдает свое предпочтение «устаревшей» Windows 7 и не торопится переходить на Windows 10. Причины бывают очень разные — от недовольства политикой конфиденциальности и большим объемом телеметрии до банальной привычки и нежелания идти на поводу у маркетологов Microsoft. Не секрет, что в корпоративном ...

Читать далее »

Портирование Quake3

В операционной системе Embox (разработчиком которой я являюсь) какое-то время назад появилась поддержка OpenGL, но толковой проверки работоспособности не было, только отрисовка сцен с несколькими графическими примитивами. Я никогда особо не интересовался геймдевом, хотя, само собой, игры мне нравятся, и решил — вот хороший способ развлечься, а заодно проверить OpenGL и посмотреть, как игры взаимодействуют с ОС. В этой статье ...

Читать далее »

[Перевод] Единое ядро Windows

Windows – одна из наиболее многогранных и гибких ОС, она работает на совершенно разных архитектурах и доступна в разных вариантах. На сегодня она поддерживает архитектуры x86, x64, ARM и ARM64. Windows в своё время поддерживала Itanium, PowerPC, DEC Alpha и MIPS. Кроме того, Windows поддерживает целый набор SKU, работающих в различных условиях; от дата-центров, ноутбуков, Xbox и телефонов до встраиваемых ...

Читать далее »

Как работает stack trace на ARM

Добрый день! Несколько дней назад столкнулся с небольшой проблемой в нашем проекте — в обработчике прерывания gdb неправильно выводил stack trace для Cortex-M. Поэтому в очередной раз полез выяснять, а какими способами можно получать stack trace для ARM? Какие флаги компиляции влияют на возможность трассировки стека на ARM? Как это реализовано в ядре Linux? По результатам исследований решил написать эту ...

Читать далее »

Пишем свою простейшую программу для ARM Cortex-M3

Добрый день! Сегодня я хочу рассказать вам как написать минимальную программу, которая запустится на ARM Cortex-M3 и при этом напечатает “Hello, World!”. Постараемся разобрать по шагам необходимый минимум, который нам для этого потребуется. Запускать будем на эмуляторе QEMU. Поэтому любой желающий может воспроизвести, даже если у него нет под рукой железки. Будем запускаться на этой платформе. Итак, поехали!Эмулятор QEMU поддерживает ...

Читать далее »

Проверили с помощью PVS-Studio исходные коды Android, или никто не идеален

 Разработка больших сложных проектов невозможна без использования методологий программирования и инструментальных средств, помогающих контролировать качество кода. В первую очередь, это грамотный стандарт кодирования, обзоры кода, юнит-тесты, статические и динамические анализаторы кода. Всё это помогает выявлять дефекты в коде на самых ранних этапах разработки. В этой статье демонстрируются возможности статического анализатора PVS-Studio по выявлению ошибок и потенциальных уязвимостей в коде ...

Читать далее »

Инженеры Google готовы выпустить замену Android через три года

Сегодня Bloomberg проливает больше света на историю создания и будущее этой операционной системы. Мы уже слышали о таинственной операционной системе под названием Fuchsia, разработка которой тайно велась внутри компании Google. Возможно, что уже через три года мы будем ее использовать вместо Android. Сегодня источники, которые близки к разработке проекта, рассказали Bloomberg о желании инженеров выпустить Fuchsia через три года в ...

Читать далее »

Операционные системы с нуля; уровень 3 (младшая половина)

Т.е. В этой лабе мы будем реализовывать возможность запуска пользовательских программ. В начале разберёмся как переключаться из привилегированного кода, как переключать контексты процессов. процессы и всю зависимую инфраструктуру. В конце концов выведем наш шелл из пространства ядра в пространство пользователя. Затем реализуем простенький round-robin планировщик, системные вызовы и управление виртуальной памятью. оригинал Нулевая лаба Первая лаба: младшая половина и старшая ...

Читать далее »

[Перевод] Операционные системы с нуля; уровень 3 (старшая половина)

Наконец-то у нас появятся элементы многозадачной операционной системы! В этой части мы допишем обработку прерываний и возьмёмся за планировщик. Одно прерывание таймера, один системный вызов, базовая часть простого планировщика потоков. Разумеется это только начало темы. Однако этим мы подготовим плацдарм для создания полноценной системы, которая будет заниматься самыми настоящими процессами безо всяких "но". Ничего сложного. До конца этого курса осталось ...

Читать далее »

Apple добавила в macOS поддержку внешних видеокарт

Компанией Apple реализована долгожданная поддержка операционной системой macOS внешних видеокарт, подключаемых к порту Thunderbolt 3. Впрочем, далеко не на всех компьютерах Mac получится воспользоваться новой функцией, как и не все видеокарты подойдут для подключения. Кроме того, чтобы все работало, необходима также поддержка новой функции программным обеспечением.

Читать далее »