home.social

#xv6 — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #xv6, aggregated by home.social.

  1. Ah, another brave soul attempts to shoehorn #xv6 into the almighty #SiFive HiFive Unmatched board. 🤡 Because #porting an archaic educational OS to a niche board is exactly what the world needed right now. 🙄 #GitHub, of course, stands by to witness this monumental achievement in software archaeology. 🥳
    github.com/eyengin/xv6-riscv-u #HiFiveUnmatched #softwarearchaeology #educationalOS #HackerNews #ngated

  2. Ah, another brave soul attempts to shoehorn #xv6 into the almighty #SiFive HiFive Unmatched board. 🤡 Because #porting an archaic educational OS to a niche board is exactly what the world needed right now. 🙄 #GitHub, of course, stands by to witness this monumental achievement in software archaeology. 🥳
    github.com/eyengin/xv6-riscv-u #HiFiveUnmatched #softwarearchaeology #educationalOS #HackerNews #ngated

  3. Ah, another brave soul attempts to shoehorn #xv6 into the almighty #SiFive HiFive Unmatched board. 🤡 Because #porting an archaic educational OS to a niche board is exactly what the world needed right now. 🙄 #GitHub, of course, stands by to witness this monumental achievement in software archaeology. 🥳
    github.com/eyengin/xv6-riscv-u #HiFiveUnmatched #softwarearchaeology #educationalOS #HackerNews #ngated

  4. Ah, another brave soul attempts to shoehorn #xv6 into the almighty #SiFive HiFive Unmatched board. 🤡 Because #porting an archaic educational OS to a niche board is exactly what the world needed right now. 🙄 #GitHub, of course, stands by to witness this monumental achievement in software archaeology. 🥳
    github.com/eyengin/xv6-riscv-u #HiFiveUnmatched #softwarearchaeology #educationalOS #HackerNews #ngated

  5. Sorry for inactivity recently, been working on this with a friend of mine on #Codeberg.

    codeberg.org/xv7/xv7

    We're picking up the #x86 #xv6 #Kernel from MIT. We've done things like add a directory structure in the filesystem, properly organize the source code, rewrite Perl scripts to Bash, remove old code/scripts as we see fit and much more.

    Our goal is to have a usable system with #xv7.

    Next step: (hopefully) fixing SMP on newer QEMU machines.

    #Tech #Technology #OSDev #OperatingSystem

  6. Sorry for inactivity recently, been working on this with a friend of mine on #Codeberg.

    codeberg.org/xv7/xv7

    We're picking up the #x86 #xv6 #Kernel from MIT. We've done things like add a directory structure in the filesystem, properly organize the source code, rewrite Perl scripts to Bash, remove old code/scripts as we see fit and much more.

    Our goal is to have a usable system with #xv7.

    Next step: (hopefully) fixing SMP on newer QEMU machines.

    #Tech #Technology #OSDev #OperatingSystem

  7. Xv6: увеличим размер страниц виртуальной памяти с 4Кб до 2Мб

    Научим xv6 работать с виртуальными страницами размера 2 Мб, узнаем, как компоновщик создает образ памяти программы и научим файловую систему xv6 справляться с большими файлами. Пример: Пусть программа занимает 4 Мб памяти. Размер страницы - 4 Кб. Программа займет (1024 * 1024 * 4) / (1024 * 4) = 1024 страницы памяти. ОС избавит процессор от лишней работы, если увеличит размер страницы до 2 Мб - тогда программа займет 2 страницы.

    habr.com/ru/articles/830662/

    #xv6 #riscv #виртуальная_память #таблицы_страниц #файловая_система #ld #объектный_файл #исполняемый_файл #компоновка #сценарий_компоновщика

  8. [Перевод] Xv6: учебная Unix-подобная ОС. Глава 8. Файловая система

    Файловая система организует и хранит данные. Пользователи и программы работают с данными, а файловая система сохранит данные даже после перезагрузки компьютера. Файловая система xv6 предлагает Unix-подобные файлы, директории и пути и хранит данные на virtio-диске . Глава расскажет, какие задачи решает файловая система xv6.

    habr.com/ru/articles/805243/

    #xv6 #файловая_система #inode #журнал #директории #каналы #файловые_дескрипторы #пути_к_файлам #сбои #восстановление

  9. [Перевод] Xv6: учебная Unix-подобная ОС. Глава 7. Планирование процессов

    Глава расскажет, что такое мультиплексирование процессов, как xv6 переключает процессы, как xv6 синхронизирует процессы с помощью sleep и wakeup, как работает семафор, как работает канал (pipe), как случаются инверсии приоритетов и образуются конвои процессов, как правильно убить процесс и укротить грохочущее стадо процессов.

    habr.com/ru/articles/801567/

    #xv6 #семафор #переключение_контекста #мультиплексирование #условные_переменные #планировщик #sleep #wakeup #взаимоблокировки #каналы

  10. [Перевод] Xv6: учебная Unix-подобная ОС. Глава 7. Планирование процессов

    Глава расскажет, что такое мультиплексирование процессов, как xv6 переключает процессы, как xv6 синхронизирует процессы с помощью sleep и wakeup, как работает семафор, как работает канал (pipe), как случаются инверсии приоритетов и образуются конвои процессов, как правильно убить процесс и укротить грохочущее стадо процессов.

    habr.com/ru/articles/801567/

    #xv6 #семафор #переключение_контекста #мультиплексирование #условные_переменные #планировщик #sleep #wakeup #взаимоблокировки #каналы

  11. [Перевод] Xv6: учебная Unix-подобная ОС. Глава 5. Прерывания и драйверы устройств

    Драйвер управляет устройством - настраивает, отправляет команды, обрабатывает прерывания и общается с процессами, которые ожидают завершения ввода-вывода. Код драйвера зависит от конкретного устройства, поэтому изучайте документацию на устройство, чтобы понять код драйвера. Устройство прерывает процессор, когда требует внимания. Обработчик прерывания опознает устройство и вызовет процедуру драйвера. В xv6 это делает процедура devintr . Файл kernel/console.c содержит код драйвера терминала. Драйвер обрабатывает символы из последовательного порта UART на RISC-V, которые человек вводит на клавиатуре. QEMU эмулирует микросхему 16550 UART и подключает клавиатуру и экран к UART. На реальном компьютере 16550 управляет портом RS232 , который работает с терминалом или другим компьютером. Драйвер накапливает символы в кольцевом буфере cons.buf . Индекс cons.r указывает на первый символ, который прочтет функция consoleread . Буфер хранит строки символов, а индекс cons.w указывает на начало последней строки, которую еще вводит человек. Индекс cons.e указывает позицию курсора в последней строке для ввода следующего символа.

    habr.com/ru/articles/795735/

    #xv6 #прерывания #драйвер #операционная_система #асинхронность #вводвывод #uart #riscv #unix #терминал

  12. [Перевод] Xv6: учебная Unix-подобная ОС. Глава 5. Прерывания и драйверы устройств

    Драйвер управляет устройством - настраивает, отправляет команды, обрабатывает прерывания и общается с процессами, которые ожидают завершения ввода-вывода. Код драйвера зависит от конкретного устройства, поэтому изучайте документацию на устройство, чтобы понять код драйвера. Устройство прерывает процессор, когда требует внимания. Обработчик прерывания опознает устройство и вызовет процедуру драйвера. В xv6 это делает процедура devintr . Файл kernel/console.c содержит код драйвера терминала. Драйвер обрабатывает символы из последовательного порта UART на RISC-V, которые человек вводит на клавиатуре. QEMU эмулирует микросхему 16550 UART и подключает клавиатуру и экран к UART. На реальном компьютере 16550 управляет портом RS232 , который работает с терминалом или другим компьютером. Драйвер накапливает символы в кольцевом буфере cons.buf . Индекс cons.r указывает на первый символ, который прочтет функция consoleread . Буфер хранит строки символов, а индекс cons.w указывает на начало последней строки, которую еще вводит человек. Индекс cons.e указывает позицию курсора в последней строке для ввода следующего символа.

    habr.com/ru/articles/795735/

    #xv6 #прерывания #драйвер #операционная_система #асинхронность #вводвывод #uart #riscv #unix #терминал

  13. [Перевод] Xv6: учебная Unix-подобная ОС. Глава 4: Прерывания и системные вызовы

    Глава расскажет, как xv6 обрабатывает прерывания на RISC-V и о хитростях виртуальной памяти: как использовать ошибки доступа к страницам, чтобы оптимизировать работу ОС. Глава расскажет о копировании страниц при записи, ленивой выдаче страниц, выдаче страниц по необходимости и сбросе страниц на диск.

    habr.com/ru/articles/794326/

    #xv6 #операционная_система #прерывания #исключения #системные_вызовы #ядро #таблицы_страниц #виртуальная_память #copyonwrite #riscv

  14. [Перевод] Xv6: учебная Unix-подобная ОС. Глава 3. Таблицы страниц

    ОС управляет виртуальной памятью с помощью таблиц страниц. Виртуальная память процесса - адресное пространство, защищенное от других процессов. ОС делит память на страницы одинакового размера и отображает страницы виртуальной памяти на страницы физической памяти. Так ОС предоставит процессу непрерывное адресное пространство, даже если страницы физической памяти расположены в другом порядке. Таблица страниц хранит для виртуальной страницы номер соответствующей физической страницы. Каждый процесс владеет личной таблицей страниц. Глава рассказывает, как xv6 работает с виртуальной памятью и об устройстве виртуальной памяти RISC-V.

    habr.com/ru/articles/792808/

    #виртуальная_память #таблицы_страниц #riscv #xv6 #операционная_система #unix #ядро

  15. [Перевод] Xv6: учебная Unix-подобная ОС. Глава 2. Устройство операционной системы

    Операционная система выполняет несколько процессов одновременно. ОС распределяет время работы с ресурсами компьютера между процессами. ОС даст каждому процессу шанс на выполнение, даже если число процессов больше числа процессоров. ОС изолирует процессы друг от друга так, что ошибка в одном процессе не нарушит работу других. ОС позволяет процессам взаимодействовать - обмениваться данными и работать совместно. Глава 2 рассказывает, как xv6 выполняет эти требования, о процессах xv6 и как xv6 запускает первый процесс.

    habr.com/ru/articles/791058/

    #xv6 #riscv #операционная_система #процесс #ядро #виртуальная_память #безопасность #монолитное_ядро #микроядро #системные_вызовы

  16. [Перевод] Xv6 Глава 1: Интерфейсы операционной системы

    Эта книга рассказывает о принципах работы операционных систем на примере xv6. Операционная система xv6 реализует базовый интерфейс, который Кен Томпсон и Деннис Ритчи предложили в операционной системе Unix, и подражает внутреннему устройству Unix. Комбинации простейших механизмов Unix дают удивительную свободу действий. Современные операционные системы признали успех Unix и реализуют похожие интерфейсы - BSD, Linux, macOS, Solaris, и даже Microsoft Windows. Изучение xv6 поможет понять работу и других операционных систем.

    habr.com/ru/articles/789478/

    #xv6 #операционная_система #unix #системные_вызовы #файловая_система #процесс #вводвывод #shell #каналы #ядро

  17. [Перевод] Xv6 Глава 1: Интерфейсы операционной системы

    Эта книга рассказывает о принципах работы операционных систем на примере xv6. Операционная система xv6 реализует базовый интерфейс, который Кен Томпсон и Деннис Ритчи предложили в операционной системе Unix, и подражает внутреннему устройству Unix. Комбинации простейших механизмов Unix дают удивительную свободу действий. Современные операционные системы признали успех Unix и реализуют похожие интерфейсы - BSD, Linux, macOS, Solaris, и даже Microsoft Windows. Изучение xv6 поможет понять работу и других операционных систем.

    habr.com/ru/articles/789478/

    #xv6 #операционная_система #unix #системные_вызовы #файловая_система #процесс #вводвывод #shell #каналы #ядро