Рубрика «Процессоры» - 36

Первая часть
Вторая часть

Тема сегодняшнего разговора — работа с памятью. Я расскажу про инициализацию директории страниц, маппинг физической памяти, управление виртуальной и мою организацию кучи для аллокатора.

Как я уже говорил в первой статье, я решил использовать страницы размером 4 МиБ, чтобы упростить себе жизнь и не иметь дела с иерархическими таблицами. В дальнейшем я надеюсь перейти на страницы размером 4 КиБ, как большинство современных систем. Я мог бы использовать готовый (например, такой блочный аллокатор), но написать свой было чуть интереснее и хотелось чуть больше понять, как живет память, так что мне есть, что вам рассказать.

Читать полностью »

Союз Arduino и классического процессора - 1

Ретрокомпьютерщики бывают различной степени привередливости. Одни довольствуются эмуляцией. Другие предпочитают ПЛИС, потому что тогда получается не эмуляция, а воссоздание. Наконец, третьим подавай настоящий процессор.

Но процессору для работы нужно столько всего! Снова дилемма: взять настоящие микросхемы тех же лет, или поместить всё в ПЛИС, оставив снаружи процессор? Впрочем, почему обязательно ПЛИС? Да здравствует союз Arduino и настоящего процессора!Читать полностью »

Архитектура отечественных процессоров «Байкал» стала бесплатной — ее открыли разработчики - 1

На днях компания Wave Computing заявила о старте программы MIPS Open, которая дает возможность бесплатного лицензирования процессорной архитектуры MIPS. Первый этап этой программы заключается в предоставлении участникам бесплатного доступа к 32-х и 64-битным разработкам архитектуры MIPS R6 (шестая версия — последняя).

При этом компания заявила, что лицензирование такого типа не подразумевает никаких лицензионных отчислений. Партнеры, которые подключились к программе, получают еще и возможность модифицировать вычислительные ядра MIPS по своему усмотрению. Правда, должно соблюдаться требование по сохранению обратной совместимости со спецификациями MIPS.
Читать полностью »

Первая часть

Первая статья еще не успела остыть, а я решил не держать вас в интриге и написать продолжение.
Итак, в предыдущей статье мы поговорили о линковке, загрузке файла ядра и первичной инициализации. Я дал несколько полезных ссылок, рассказал, как размещается загруженное ядро в памяти, как соотносятся виртуальные и физические адреса при загрузке, а так же как включить поддержку механизма страниц. В последнюю очередь управление перешло в функцию kmain моего ядра, написанного на Rust. Пришло время двигаться дальше и узнать, насколько глубока кроличья нора!

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

Читать полностью »

Я решил написать статью, а если получится — то и серию статей, чтобы поделиться своим опытом самостоятельного исследования как устройства Bare Bone x86, так и организации операционных систем. На данный момент мою поделку нельзя назвать даже операционной системой — это небольшое ядро, которое умеет загружаться из Multiboot (GRUB), управлять памятью реальной и виртуальной, а также выполнять несколько бесполезных функций в режиме многозадачности на одном процессоре.

При разработке я не ставил себе целей написать новый Linux (хотя, признаюсь, лет 5 назад мечтал об этом) или впечатлить кого-либо, поэтому особо впечатлительных прошу дальше не смотреть. Что мне на самом деле захотелось сделать — разобраться, как устроена архитектура i386 на самом базовом уровне, и как именно операционные системы делают свою магию, ну и покопать хайповый Rust.

В своих заметках я постараюсь поделиться не только исходными текстами (их можно найти на GitLab) и голой теорией (ее можно найти на многих ресурсах), но и тем путем, который я прошел, чтобы найти неочевидные ответы. Конкретно в этой статье я расскажу о компоновке файла ядра, его загрузке и инициализации.

Мои цели — структурировать информацию у себя в голове, а так же помочь тем, кто идет похожим путем. Я понимаю, что аналогичные материалы и блоги уже есть в сети, но чтобы прийти к моему текущему положению, мне пришлось долго собирать их воедино. Всеми источниками (во всяком случае, которые вспомню), я поделюсь прямо сейчас.

Читать полностью »

Архитектура Intel Gen11 GPU и дискретная видеокарта от Intel - 1
Дискретная видеокарта начального уровня Intel Graphics Xe, официальный анонс состоялся 20 марта на игровой конференции GDC 2019

Компания Intel опубликовала документацию на графические процессоры Gen11 с описанием, чем они будут отличаться от предыдущего поколения. Ожидается, что архитектура Intel Gen11 станет основой для будущей архитектуры дискретной видеокарты Xe, поэтому описанные здесь технологии можно рассматривать как предварительный просмотр по крайней мере некоторых функций, которые реализуют в этих видеокартах. Пока что о будущих видеокартах Intel ничего не рассказывала, только показала несколько фотографий (или рендеров).
Читать полностью »

Linux Foundation открыли новое направление — CHIPS Alliance. В рамках этого проекта организация будет развивать свободную систему команд RISC-V и технологии для создания процессоров на её основе. Расскажем подробнее, что происходит в этой сфере.

Linux Foundation займется open source чипами - 1Читать полностью »

Snapdragon 8cx: 7-нанометровая платформа для ПК - 1

Мы занимаемся созданием инновационных технологий, которые полностью меняют то, как люди в мире используют различные устройства для вычислений и связи друг с другом или с сетью интернет. Теперь мы применяем эти познания и в сфере ПК. Наша цель — решить проблемы, с которыми пользователи ноутбуков сталкиваются годами, включая малое время их автономной работы, медленную загрузку системы и отсутствие скоростного безопасного подключения к Сети. Фактически, мы стремимся к тому, чтобы наши ПК были больше похожи на наши смартфоны.
Читать полностью »

AMD анонсировала свою 3D-архитектуру чипов, чтобы догнать Intel Foveros 3D - 1
Intel Foveros 3D

Поскольку закон Мура больше не действует, разработчикам микросхем приходится искать иные способы повышения производительности. Одна из подходящих для этого технологий называется 3D-штабелирование (3D chip stacking). Это объёмная этажерочная архитектура чипов, в разработке которой лидирует Intel. Два месяца назад Intel представила архитектуру Foveros 3D: трёхмерную структуру, которая включает в себя CPU по техпроцессу 10 нм, чип ввода-вывода и сквозные вертикальные электрические соединения TSV (Through Silicon Via) в центре микросхемы, а сверху всей микросхемы — чип памяти.

На конференции по высокопроизводительным вычислениям Rice Oil and Gas HPC компания AMD заверила, что работает над собственным вариантом 3D-архитектуры чипов.
Читать полностью »

Так-Так-Так и никакого Тика. Чем отличаются процессоры Intel Core разных поколений на основе одной архитектуры - 1

С появлением процессоров Intel Core седьмого поколения многим стало понятно, что стратегия «Тик-так», которой Интел следовал всё это время, дала сбой. Обещание уменьшить технологический процесс с 14 до 10 нм так и осталось обещанием, началась долгая эпоха «Така» Skylake, во время которой случился Kaby Lake (седьмое поколение), внезапный Coffee Lake (восьмое) с незначительным изменением техпроцесса с 14 нм до 14 нм+ и даже Coffee Lake Refresh (девятое). Кажется, Интелу и правда нужен был небольшой перерыв на кофе. В итоге мы имеем несколько процессоров разных поколений, которые созданы на основе одной микроархитектуры Skylake, с одной стороны. И уверения Интела о том, что каждый новый процессор — лучше прежнего, с другой. Правда, не очень понятно, чем именно…

Так-Так-Так и никакого Тика. Чем отличаются процессоры Intel Core разных поколений на основе одной архитектуры - 2

Поэтому вернёмся к нашим поколениям. И посмотрим, чем же они отличаются.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js