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

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

Пишем свою простейшую программу для 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 получится воспользоваться новой функцией, как и не все видеокарты подойдут для подключения. Кроме того, чтобы все работало, необходима также поддержка новой функции программным обеспечением.

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

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

В этой части мы напишем менеджер памяти для того, чтоб разблокировать использование Vec, String, HashMap и всего этого. Сразу после этого реализуем файловую систему FAT32 и подключим драйвер для EMMC (такая штука для общения с SD-карточками). В конце концов в нашей командной оболочке появятся пара новых команд: cd, pwd, cat, ls. Нулевая лаба Первая лаба: младшая половина и старшая половина ...

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

Релиз PVS-Studio для macOS: 64 weaknesses в Apple XNU Kernel

Новая версия PVS-Studio 6.23 работает под управлением macOS и позволяет проверять проекты, написанные на языке C и C++. К этому событию наша команда решила приурочить проверку XNU Kernel. PVS-Studio для macOS С выходом версии анализатора для macOS, PVS-Studio можно смело называть кроссплатформенным статическим анализатором кода для C и C++.Изначально существовала версия только для Windows. Около двух лет назад наша команда ...

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

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

Эта часть посвящена улучшению навыков работы с Rust и написанию парочки полезных утилиток и библиотек. Напишем драйверы для GPIO, UART и встроенного таймера. Реализуем протокол XMODEM. Используя это всё, напишем простенький шелл и загрузчик. Перед прочтением настоятельно рекомендуется убедиться в прочтении Книги. По крайней мере от начала и до конца. Для ленивых, но чуть более опытных можно рекомендовать это. На ...

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

[Перевод] Операционные системы с нуля; Уровень 0

Добрый день/вечер/ночь/утро! Есть один экспериментальный курс по операционным системам. Есть он в Стэнфордском университете. Но часть материалов доступно всем желающим. Помимо слайдов доступны полные описания практических занятий. Чем этот курс отличается от прочих других? Большая часть кода пишется самостоятельно и выполняется на вполне реальном современном железе. В качестве целевой платформы выбран Raspberry Pi 3 model B. Т.е. достаточно актуальная архитектура ...

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