Pull to refresh
272
0
Владимир @32bit_me

Программист

Send message

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

Level of difficultyMedium
Reading time21 min
Views1.9K

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

Файловая система xv6 предлагает Unix-подобные файлы, директории и пути и хранит данные на virtio-диске.

Глава расскажет, какие задачи решает файловая система xv6.

Читать далее
Total votes 6: ↑6 and ↓0+6
Comments2

Одноплатные ПК весны 2024 года: что предлагает рынок разработчику?

Reading time6 min
Views20K

Как всегда, производители электроники продолжают выпускать новые модели одноплатных ПК. Их становится все больше, что не может не радовать — ведь мы получаем системы, способные решать самые разные задачи. В начале весны 2024 года появилось несколько интересных моделей, о которых стоит рассказать подробнее.
Читать дальше →
Total votes 54: ↑52 and ↓2+50
Comments45

Полигон для творчества за 1500 р. Ч1: Позовите Кряка

Level of difficultyHard
Reading time10 min
Views9K

Приветствую вас, друзья! Не знаю как вам, а мне нравится разбирать всякие штучки, узнавать, как они работают, и применять их в своих проектах. По ходу дела начинается настоящее увлекательнейшее расследование, технический детектив.

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

Проведём расследование, поищем JTAG, узнаем способы и отследим разводку BGA, поработаем с ПЛИС, … и много других действительно интересных вещей. Кряк уже заинтересовался!

Как там у нас обычно? «Сломать, а потом читать инструкцию». Инструкций и документации нет, поэтому будем экспериментировать ломать! ☺
Читать дальше →
Total votes 65: ↑65 and ↓0+65
Comments8

Как написать свою маленькую ОС

Level of difficultyEasy
Reading time7 min
Views36K


Большое начинается с малого. Например, ядро Linux 0.0.1 состояло всего из 10 239 строк кода, из них 20% комментарии. Такой проект вполне может осилить студент в качестве курсовой или дипломной работы, программируя по вечерам на домашнем ПК (собственно, Линус и написал его во время учёбы в университете, когда вернулся из армии).

Если один студент смог это сделать тогда, то почему нельзя повторить? И действительно, в интернете есть даже специальные обучающие ресурсы для написания новых ОС и целые сообщества энтузиастов, которые помогают друг другу в этом непростом деле.
Читать дальше →
Total votes 108: ↑103 and ↓5+98
Comments25

Xv6: учебная Unix-подобная ОС. Глава 1. Интерфейсы операционной системы

Level of difficultyMedium
Reading time14 min
Views11K

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

Читать далее
Total votes 15: ↑15 and ↓0+15
Comments6

Книги, о которых редко говорят

Reading time4 min
Views46K

Дал ему подборку книг, он приходит месяца через два, и с порога такой сразу:
— Я с друзьями не могу разговаривать.
— Ну да есть такой, недостаточек.
интервью Жака Фреско

Читать далее
Total votes 91: ↑89 and ↓2+87
Comments26

Поговорим об оптимизирующих компиляторах. Сказ восьмой: размотка циклов

Level of difficultyMedium
Reading time12 min
Views8.7K

Есть оптимизации, польза от которых очевидна всегда или почти всегда. Например, не делать лишнюю проверку лучше, чем делать. Не считать два раза одно и то же обычно лучше, чем считать (если только мы не упёрлись в нехватку регистров или имеем другие подобные проблемы на нижнем уровне). Вычислять выражения вне цикла выгоднее, чем в цикле. И так далее.

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

Смысл размотки цикла заключается в том, чтобы за счёт дублирования тела цикла уменьшить количества его итераций. В зависимости от того, как много мы знаем об исполнении цикла, размотка может быть полной, частичной или динамической.

Читать далее
Total votes 55: ↑55 and ↓0+55
Comments6

Графика древности: палитры, часть 2/2

Level of difficultyEasy
Reading time26 min
Views8.8K

В предыдущей части цикла статей мы рассмотрели историю эволюции палитр в цветной компьютерной графике домашних компьютеров и игровых консолей, а также причины, почему они оказались именно такими и содержали те или иные цвета. Однако тема палитровой графики ещё не исчерпана. Сегодня поговорим про множество других интересных вещей: программируемые палитры и экономию памяти, палитровые анимации и визуальные эффекты, проблемы цветопередачи, обход ограничений на количество цветов, таинственный «артефактинг» и особенности рисования палитровой графики.
Читать дальше →
Total votes 105: ↑105 and ↓0+105
Comments19

Автосборка Fsbl, U-Boot, linux kernel и установка debian для arm64 для Zynq Ultrascale zcu106

Level of difficultyMedium
Reading time15 min
Views3.7K

В данной статье описывается способ создания минималистичного образа sd карты c debian arm64 на примере отладочной платы с zynq ultrascale zcu106. Данный способ можно использовать для создания загрузочных образов других устройств с соответствующими изменениями. Битстрим, ядро Linux и dts для удобства разработки размещаются отдельными файлами.

Также описан способ загрузки по сети ядра Linux, dts и корневой файловой системы debian, который позволит сократить время разработки и ресурс карты памяти.

Читать далее
Total votes 16: ↑16 and ↓0+16
Comments9

Тестируем PCIe в новом Raspberry Pi 5

Level of difficultyEasy
Reading time9 min
Views27K

Если вы ещё не в курсе, то недавно было объявлено о выходе Raspberry Pi 5.

Я специально снял ролик, где разобрал всю аппаратную часть – что изменилось, что появилось и чего не стало. В этой статье я представлю вам спецификацию новой модели, расскажу о некоторых особенностях и о том, что выяснил в ходе тестирования её работы с десятком различных устройств PCIe.
Читать дальше →
Total votes 93: ↑92 and ↓1+91
Comments30

Как сейчас работают интернет-покупки в США из РФ

Reading time6 min
Views18K

Между странами, вроде как, напряженная ситуация. Но товары при этом спокойно курсируют. И даже сейчас можно купить айфон или игровую приставку напрямую в Америке, в их магазине. Причем очень неплохо на этом сэкономить. Правда, процесс с 2022 года стал немного сложнее, и имеет свои особенности. О них сегодня вам и расскажем.

Читать далее
Total votes 27: ↑24 and ↓3+21
Comments60

Циклоидный редуктор + BLDC мотор своими руками

Level of difficultyHard
Reading time9 min
Views15K

Всем привет! Эта статья открывает собой серию статей по разработке манипулятора. Тут я попробую рассказать о циклоидном редукторе и зачем он вообще мне понадобился. Разумеется, мы проведём его расчёт и воплотим его в физическое представление при помощи PLA пластика. Ну и как бонус соберём из хлама BLDC мотор для тестирования этого редуктора. Погнали.
Читать дальше →
Total votes 102: ↑102 and ↓0+102
Comments111

Что для вас Linux? Или как устроен запуск процессов

Level of difficultyMedium
Reading time15 min
Views37K

Как бы вы ответили на вопрос, что такое операционная система?

Скорее всего, вы легко сможете ответить на этот вопрос человеку далекому от IT, но подобный вопрос вам может задать, например, HR - в попытке переманить вас в какой-нибудь Facebook или Google. С одной стороны, ответить на этот вопрос очень легко и в интернете можно найти много определений, но относится ли, например, конфигурация DNS и файл /etc/resolv.conf к ОС ? Или в какой области памяти работает ОС - в памяти с безграничными возможностями для кода, называемой kernel space, или все же в лимитированной user space?

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

Читать далее
Total votes 79: ↑79 and ↓0+79
Comments20

Получаем виртуальный raspberry pi с помощью QEMU. Часть 1

Level of difficultyEasy
Reading time4 min
Views8.3K

Зачастую новички используют поставляемую производителем операционную
систему, систему на базе Debian. Загрузившись, новичок начинает настройку системы «под себя». Я решил показать процесс создания виртуального клона raspberry pi, чтобы не производить эти действия на самом одноплатнике.

Читать далее
Total votes 12: ↑11 and ↓1+10
Comments7

Blink: супербыстрый эмулятор x86_64 размером 119 КБ

Level of difficultyMedium
Reading time6 min
Views18K


На Хабре когда-то писали про талантливую программистку Джастин Танни, автора маленьких и очень быстрых приложений. Приятно знать, что она не останавливает свою неординарную деятельность. Например, одна из её последних разработок — крошечный эмулятор под названием Blink размером всего 116 КБ, который очень быстро компилирует WASM и выполняет Linux-программы x86_64 под разными платформами и даже в браузере.
Читать дальше →
Total votes 73: ↑67 and ↓6+61
Comments14

Axiom: Инвертор для двигателя мощностью более 100 кВт

Level of difficultyEasy
Reading time7 min
Views11K

Впервые в истории открытый проект Axiom даёт возможность точно управлять мощными 3-фазными двигателями. Сейчас это как никогда актуально. Миллиарды тратятся на приближение эры электромобилей.

Самое приятное, что аппаратное обеспечение и прошивка имеют открытый исходный код! 

Читать далее
Total votes 49: ↑44 and ↓5+39
Comments14

Какие кабели можно встретить в стойке дата-центра?

Reading time12 min
Views25K

Приступая к работе в ЦОД, можно легко запутаться в различных типах кабелей, которые используются для соединения и подключения сетевых устройств и серверов. Некоторые из них распространены и в повседневной жизни, а потому хорошо узнаваемы – Ethernet-кабели (с коннекторами RJ-45) и кабели питания (например, с распространенными вилками C13). Но другие, такие как оптические кабели с коннекторами стандарта SFP, LC, SC, силовые с вилкой типа IEC-309 и т. д., известны не так широко.

Если вы проводите какие-либо работы непосредственно в стойке, любая ошибка может стоить дорого – нажата не та кнопка, и клиенты уже в дауне, а любимые и глубоко уважаемые специалисты техподдержки шлют вам тикеты счастья. Даже Uptime Institute в своем исследовании 2021 года отмечает, что в 79% случаев причиной падения серверов в ЦОДах является человеческий фактор.  Всё надо делать вовремя – и нажимать кнопки, и менять комплектующие, и переключать кабели… 

Так вот о кабелях. Чтобы начать с ними работать, было бы неплохо хотя бы знать, как они выглядят и какие функции выполняют. 

Этот материал как раз об этом. 

В первую очередь, он будет полезен в роли шпаргалки сотрудникам-стажерам, только начинающим работу с аппаратной частью ИТ-инфраструктуры. 

Читать далее
Total votes 40: ↑38 and ↓2+36
Comments26

Кроссплатформенная сборка Qt5 для Nvidia Jetson TX2

Level of difficultyEasy
Reading time4 min
Views2.4K

Эта статья будет полезна тем, кто пишет проекты на Qt и работает с Nvidia Jetson. В статье представлена пошаговая инструкция для кроссплатформенной сборки Qt5 для Nvidia Jetson TX2 на базе Ubuntu.

Читать далее
Total votes 9: ↑9 and ↓0+9
Comments9

Идеальная рабочая станция Linux на процессоре Apple M1 (ARM64)

Level of difficultyEasy
Reading time4 min
Views39K


Моё знакомство с Asahi Linux началось в марте прошлого года, когда на свет появилась альфа-версия Asahi. Я сразу же установил её на свой Mac Mini с 8-ядерным Apple M1 (ARM64). Asahi — это дистрибутив Linux, который нативно работает в «маках» на Apple Silicon благодаря хитрым хакам и реверс-инжинирингу от сообщества Open Source. Более того, запуск Asahi абсолютно легален, поскольку Apple официально разрешает загрузку отличных от macOS операционных систем на своей платформе Apple Silicon.

Слово Asahi переводится как «утреннее солнце». И это не только известная марка японского пива, но и дистрибутив Linux, который назван так, дабы подчеркнуть первенство команды разработчиков в освоении платформы Mac.
Читать дальше →
Total votes 45: ↑44 and ↓1+43
Comments72

Простой испытатель ферритов

Reading time7 min
Views17K

Реалии нашей жизни поменялись. Если раньше мы шли в магазин и покупали нужное ферритовое кольцо для трансформатора, то теперь порой приходится довольствоваться тем, что удалось найти. В ящике стола, в лампочке-экономке из ближайшей мусорки, у китайцев на Алиэкспрессе... Зачастую без маркировки, тип которого известен лишь приблизительно. И вопросы, вопросы... Действительно ли из Китая выслали то, что просили? Подойдет ли для двухтактного трансформатора это зеленое кольцо? А что будет, если намотать трансформатор на феррите с мю 10000? Каким выбрать число витков на вольт, когда формула из статьи в журнале "Радио" дает 0,4 витка на вольт, а популярная программа -- 1,2 витка?

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

Читать далее
Total votes 102: ↑102 and ↓0+102
Comments33
1
23 ...

Information

Rating
Does not participate
Date of birth
Registered
Activity