Как стать автором
Обновить
24
0
Игорь @iByte

Пользователь

Отправить сообщение

Разработка OS на Go+asm Part 0x01

Время на прочтение3 мин
Количество просмотров12K
Приветствую, %username%.

Перед вами вторая статья из цикла о разработке ОС на Go + asm.

Part 0x00
Part 0x01

Изначально я планировал, что вторая статья будет про обработку прерываний, но Go накладывает свои корректировки — сейчас будет описано простое выделение памяти и часть рантайма Go, которая нам пригодится, но будет переписано. На самом деле это подготовка к третьей статье — куче и допиливанию рантайма.

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

Слабонервным просьба закрыть статью — все, что может быть написанно на Go будет написанно на нем!
Продолжение извращений
Всего голосов 27: ↑26 и ↓1+25
Комментарии7

Vim по полной: Менеджер плагинов без фатальных недостатков

Время на прочтение7 мин
Количество просмотров27K

Оглавление


  1. Введение (vim_lib)
  2. Менеджер плагинов без фатальных недостатков (vim_lib, vim_plugmanager)
  3. Уровень проекта и файловая система (vim_prj, nerdtree)
  4. Snippets и шаблоны файлов (UltiSnips, vim_template)
  5. Компиляция и выполнение чего угодно (vim-quickrun)
  6. Работа с Git (vim_git)
  7. Деплой (vim_deploy)
  8. Тестирование с помощью xUnit (vim_unittest)
  9. Библиотека, на которой все держится (vim_lib)
  10. Другие полезные плагины

Я пользовался, наверно, всеми популярными менеджерами плагинов для Vim и у меня не было ни малейшего желания писать свой собственный, так как эти меня вполне устраивали, но было небольшое но, о котором я расскажу в этой статье.

Интересно? Беги скорей под кат!
Всего голосов 21: ↑19 и ↓2+17
Комментарии31

Устройство игрового движка для NES на примере игр «Capcom»

Время на прочтение11 мин
Количество просмотров33K
В моей третьей статье про NES-игры я покажу техники, используемые для создания игровых движков, а именно реализацию скроллинга экрана, переключение банков памяти, организацию списка объектов, устройство системы анимаций персонажей, функции обновления игровых объектов (и обработку столкновений), устройство главной карты. Чтобы не быть голословным в описаниях, я буду приводить дизассемблированный код из конкретных игр (любимый всем «Darkwing Duck», с отсылками к «Chip & Dale» и «Duck Tales»), без него в этой статье не обойтись. В качестве примера рассматривается движок от «Capcom», на модификациях которого работает как минимум пара десятков игр.

Некоторые из рассматриваемых тем не связаны между собой, поэтому статья будет разбита на несколько разделов. Также, из-за обширности, материала хватило бы на небольшую книгу, поэтому иногда я буду давать ссылки на статьи для желающих разобраться в деталях, а описывать только общие вещи, касающие архитектуры движков.
Читать дальше →
Всего голосов 74: ↑74 и ↓0+74
Комментарии6

Нативная реализация OmniDirectional теней в DirectX11

Время на прочтение13 мин
Количество просмотров24K
image

Привет. Продолжая рассказывать про различные технологии из графического геймдева — хотел бы рассказать о том, как в DirectX 11 удобно работать с тенями. Расскажу о создании Point-источника света с полным использованием инструментов GAPI DirectX11, затрону такие понятия, как: Hardware Depth Bias, GS Cubemap Render, Native Shadow Map Depth, Hardware PCF.
Исходя из легкого серфинга по интернету – я пришел к выводу, что большинство статей о тенях в DX11 неверны, реализованы не совсем красиво или с использованием устаревших подходов. В статье постараюсь сравнить реализацию теней в DirectX 9 и DirectX 11. Все ниже описанное так же справедливо и для OpenGL.

Читать дальше →
Всего голосов 51: ↑49 и ↓2+47
Комментарии3

Vim по полной: Введение

Время на прочтение5 мин
Количество просмотров70K
Привет, хабраюзер!

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

В этой серии статей я решил поделиться собственными наработками и, возможно, показать, на что может быть способен этот редактор в руках программиста. Серия будет состоять из следующих частей:
  1. Введение (vim_lib)
  2. Менеджер плагинов без фатальных недостатков (vim_lib, vim_plugmanager)
  3. Уровень проекта и файловая система (vim_prj, nerdtree)
  4. Snippets и шаблоны файлов (UltiSnips, vim_template)
  5. Компиляция и выполнение чего угодно (vim-quickrun)
  6. Работа с Git (vim_git)
  7. Деплой (vim_deploy)
  8. Тестирование с помощью xUnit (vim_unittest)
  9. Библиотека, на которой все держится (vim_lib)
  10. Другие полезные плагины

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

Готов? Вперед под кат!
Всего голосов 52: ↑49 и ↓3+46
Комментарии86

Разработка из Университета Алабамы поможет распространению пассивных систем охлаждения для серверов и обычных ПК

Время на прочтение2 мин
Количество просмотров28K


Системы погружного (иммерсионного) охлаждения известны довольно давно. При этом до сих пор распространение подобных систем и их внедрение происходит не слишком активно. Тем не менее, прогресс все же есть, некоторые дата-центры используют системы погружного охлаждения, и не планируют переходить на прежние типы систем охлаждения.

В подобных системах обычно используется хладагент компании Novec, считающийся несомненным лидером. Но ничего постоянного нет, постепенно появляются альтернативные хладагенты. Одним из новых, перспективных проектов является пассивная система охлаждения на основе Fluorinert Electronic Liquid FC-72. Жидкость эта не проводит ток плюс очень стабильна (химически и термически). Здесь сразу сказать, что разработчики используют систему охлаждения, которая не требует погружения всего сервера в емкость с жидкостью. Авторы проекта — сотрудники Университета Алабамы, Хантсвилль (University of Alabama in Huntsville).
Читать дальше →
Всего голосов 19: ↑18 и ↓1+17
Комментарии41

Бесплатный учебник электроники, архитектуры компьютера и низкоуровневого программирования на русском языке

Время на прочтение2 мин
Количество просмотров246K

Господа! Я рад сообщить, что наконец-то все желающие могут загрузить бесплатный учебник на более чем 1600 страниц, над переводом которого работало более полусотни человек из ведущих университетов, институтов и компаний России, Украины, США и Великобритании. Это был реально народный проект и пример международной кооперации.

Учебник Дэвида Харриса и Сары Харрис «Цифровая схемотехника и архитектура компьютера», второе издание, 2012, сводит вместе миры программного обеспечения и аппаратуры, являясь одновременно введением и в разработку микросхем, и в низкоуровневое программирование для студентов младших курсов. Этот учебник превосходит более ранний вводный учебник «Архитектура компьютера и проектирование компьютерных систем» от Дэвида Паттерсона и Джона Хеннесси, причем соавтор предыдущего учебника Дэвид Паттерсон сам рекомендовал учебник от Харрисов как более продвинутый. Следуя новому учебнику, студенты строят реализацию подмножества архитектуры MIPS, используя платы с ПЛИС / FPGA, после чего сравнивают эту реализацию с индустриальными микроконтроллерами Microchip PIC32. Таким образом вводится вместе схемотехника, языки описания аппаратуры Verilog и VHDL, архитектура компьютера, микроархитектура (организация процессорного конвейера) и программирование на ассемблере — в общем все, что находится между физикой и высокоуровневым программированием.

Как загрузить? К сожалению, не одним кликом. Сначало надо зарегистрироваться в пользовательском коммьюнити Imagination Technologies, потом зарегистрироваться в образовательных программах на том же сайте, после чего наконец скачать:
Читать дальше →
Всего голосов 117: ↑114 и ↓3+111
Комментарии66

Полный гайд по робототехническим конструкторам от Робостанции

Время на прочтение10 мин
Количество просмотров52K


ИМХО нет в мире лучшей игрушки, чем конструктор. До появления компьютера железные балки и пластиковые кубики были для меня вне конкуренции – ведь из них можно создать целый мир без всяких ограничений.

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

У нас на Робостанции есть десяток магазинов с конструкторами и всамделишная робошкола, где из этих конструкторов собирают настоящих роботов. Вот об этом и поговорим.


Но сначала немного теории.
Всего голосов 27: ↑24 и ↓3+21
Комментарии11

Что новые версии UEFI-стандартов нам готовят, часть первая, PI 1.4

Время на прочтение5 мин
Количество просмотров16K
После полугода разработки организация UEFI Forum выложила наконец в открытый доступ документацию по новым стандартам Platform Initialization 1.4, Advanced Configuration and Power Interface 6.0 и Unified Extensible Firmware Interface 2.5, на базе которых сейчас разрабатывается абсолютное большинство прошивок для ПК и серверов.
Обычно между выпуском новых версий стандартов и первыми прошивками на их базе проходит обычно от 4 до 6 месяцев, но уже сейчас можно предсказать с высокой долей вероятности, какие именно новые возможности появятся в UEFI для платформ на базе процессоров Intel Skylake и AMD Falcon Series.
Я решил разделить описание новшеств на 3 части, иначе оно рискует оказаться очень длинным и читать его никто не станет. Если вас интересуют новшества, описанные в стандарте PI 1.4 и мои комментарии к ним — добро пожаловать под кат.
Читать дальше →
Всего голосов 11: ↑10 и ↓1+9
Комментарии7

Реализация погодных эффектов. Осадки

Время на прочтение10 мин
Количество просмотров22K


Задача корректной симуляции погодных эффектов тянется практически с самого основания игровой индустрии. Погода – неотъемлемая часть нашей жизни, а значит, игры без погодных эффектов не совсем полноценны. Именно поэтому редкая игра обходится без хотя бы очень примитивной погодной симуляции. Поскольку задача весьма стара, то имеется множество устаревших решений, которые и сейчас продолжают использоваться, несмотря на очевидно низкую эффективность. И если с обычным туманом всё просто, то реализация осадков вызывает определенные трудности.

Итак, что же такое дождь или снег в реальном мире?
Читать дальше →
Всего голосов 44: ↑44 и ↓0+44
Комментарии11

Разбираемся с UEFI и GPT: установка Windows и Kubuntu на один диск

Время на прочтение4 мин
Количество просмотров606K
Помните те времена, когда BIOS был 16-битным с адресным пространством в 1 Мб, а вся информация о загрузчиках писалась в MBR? На смену уже давно пришли более гибкие технологии: UEFI (замена BIOS), и GPT (замена MBR).

Предыстория: Понадобилось мне недавно на свой домашний десктоп поставить 2 системы, чтобы разграничить окружение. Kubuntu для разработки на Ruby on Rails (ибо работаю удаленно), и Windows для всяких игрушек в свободное время. Хочу заметить, что несколько лет назад это было достаточно просто: один раздел для винды и один раздел для линукса, загрузчик записывался в MBR. Однако, технологии не стоят на месте, и оказалось, что настройка dual boot'а теперь несколько изменилась.
Читать дальше →
Всего голосов 26: ↑23 и ↓3+20
Комментарии42

Мой топ-100 книг по Программированию, Компьютерам и Науке: часть 1

Время на прочтение3 мин
Количество просмотров132K
Недавно сайт Fog Creek взял у меня интервью, и один из вопросов был связан с моими любимыми книгами по программированию, кодированию и разработке программ. Мне этот вопрос запомнился потому, что я давно себя считаю заядлым книжным ботаником. Книжный ботаник я потому, что безумно люблю книги о науке, компьютерах и программировании. Каждые несколько месяцев я уделяю день или два исследованию недавно изданной литературы и покупке наиболее понравившихся экземпляров. Я мог бы вечно разговаривать о своих любимых книгах. Ведь у меня их так много.

Меня настолько заинтересовал вопрос о книгах, что я решил начать новую серию статей на своём сайте catonmat о моих топ-100 книгах о программировании, программном обеспечении, науке, физике, математике и компьютерах. В каждой статье я буду размещать по пять книг, ведь разбивать огромное задачи на маленькие подзадачи — это самый простой способ их решать (GTD — get things done).

Взгляните на мою книжную полку, чтобы убедиться, что я настоящий ботаник:

image
Читать дальше →
Всего голосов 32: ↑27 и ↓5+22
Комментарии26

Защищенный компьютер внутри Micro SD карты

Время на прочтение3 мин
Количество просмотров25K
image

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

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

Это цепляющее название было представлено во второй день ежегодной конференции разработчиков Google I/O.

Project Vault – это полностью безопасный компьютер, разработанный Google ATAP (Advanced Technology and Projects), упакованный в карту MicroSD, которая может быть вставлена в любую систему, будь то ПК или мобильный телефон.
Читать дальше →
Всего голосов 21: ↑20 и ↓1+19
Комментарии18

Что значит робота разработать

Время на прочтение28 мин
Количество просмотров32K
Вы читаете о роботах и программировании и думаете: «Было бы здорово сделать что-то подобное самому!» Теми, кем эта идея овладевает чуть больше просто мыслей смотрят кто и как делал своего робота. Читают статьи, смотрят видео. На картинках все понятно. В видеороликах тоже обычно показываются уже готовые продукты, а также сжато показываются технологии их изготовления. И вроде бы то же всё понятно: отпилил, прикрутил, припаял, соединил, запрограммировал вон на той программе вот этим кодом.

Еще более увлечённые, выбрав интересный и, с первого взгляда, простой вариант, переходят к действию и, зачастую копируя, делают своего первого робота. Это волевое и очень значимое решение — главное начать хоть что-то сделать самому! В процессе изготовления оказывается куча технологических заковырок вплоть до того, что оказывается для заказа/покупки какой-то штукенции, надо узнать как она точно называется. А еще — разъёмы не паяются нормально — и как на видео в одно касание всё получается? Процесс создания нередко затягивается, но настойчивый начинающий робототехник так или иначе добивает результат до какого-то осмысленного первого запуска хотя бы «по прямой».



Потом, когда робот закончен, приходит понимание, почему все делается именно так и именно в такой последовательности. Процесс создания уже можно как-то осознать, формализовать, расписать. Вот с этого момента-то и начинается разработка модели следующего, второго поколения.
Как я разрабатывал своего первого робота...
Всего голосов 28: ↑27 и ↓1+26
Комментарии10

Автоматическая генерация осмысленных уникальных текстов

Время на прочтение6 мин
Количество просмотров96K
Каждый веб-оптимизатор знает, что для того чтобы сайт любили поисковики, он должен содержать уникальные тексты. Причем не абы какие наборы слов, а осмысленные предложения, желательно по теме сайта. Особо это проблема для агрегаторов, которые берут информацию с других сайтов, и интернет-магазинов, где параметры и данные о товарах в целом одинаковые. Поэтому стандартная практика в этой ситуации — заказывать уникальные тексты копирайтерам. Стоимость такого удовольствия от 50 до 300 руб. за 1000 знаков. Если на вашем сайте 10000 страниц, то уникальные тексты быстро становятся значительной статьей расхода.

В этой статье поговорим методах алгоритмической генерации текстов и расскажем о нашем опыте работы с ними.
Читать дальше →
Всего голосов 33: ↑27 и ↓6+21
Комментарии79

Визуализация звука на лампе 6Е1П

Время на прочтение9 мин
Количество просмотров110K
Решил поделиться опытом создания звукового индикатора на лампе 6Е1П. При создании лампового аудио усилителя для наушников было решено визуализировать аудио сигнал. Выбор пал именно на эту советскую лампу. Результатом работы стала маленькая печатная плата размером 30х33 мм. В данной статье приведена схема этой платы и описание алгоритма работы.


Читать дальше →
Всего голосов 67: ↑67 и ↓0+67
Комментарии33

Дайджест интересных материалов из мира Drupal #9

Время на прочтение6 мин
Количество просмотров6.6K
Всем привет!
За месяц у нас накопилось много интересных ссылок для вас. Встречайте девятый выпуск!


По-русски


Весна в русском Drupal-сообществе прошла плодотворно. Ловите десять ссылок на отличные статьи на русском:

  1. В блоге angarsky.ru вышла большая техническая статья «Создание ноды через кастомную форму с использованием модального окна CTools». И хотя этот материал далеко не для новичков, мы с честью открываем им дайджест! Всё очень подробно и грамотно рассказано и показано на реальном коде.
  2. Немного хардкора от того же автора: «Получить программно список обновлений для БД». Эта заметка демонстрирует преимущества открытого фреймфорка Drupal — при желании вы можете сделать всё, что угодно.
  3. Ещё одна практическая статья «Как добавить форму редактирования поля сущности к своей форме» вышла в блоге drupaler.by. Кстати, у Ctools и для полей есть удобные хелперы, чтобы не разбираться с подводными камнями Field API в одиночестве.
  4. Куда ж без андеда и его неповторимого краткого стиля изложения. Модуль Language Domains будем иметь ввиду.
  5. Хотите сделать свой rapidshare c таймером перед скачиванием? Павел Катаев поделился своим модулем Delay Download для этой цели, правда пока что модуль не доступен с drupal.org.
  6. И ещё код: «Как программно редактировать профиль пользователя».
  7. Пётр Лозовицкий рассказал, как переводил сайт с MySQL на PostgreSQL.
  8. Новенькое на сайтах сообщества. На drupal.ru читайте про настройку сервера на основе конфига nginx-джедая Perusio.
  9. На dru.io вышла заметка про любимые Drush-команды Василия Устинова.
  10. Ребята из DrupalSPB.org провели очередной митап (презентации смотрите на страницах докладов) и Global Training Day, за что им большое уважение!

Читать дальше →
Всего голосов 13: ↑10 и ↓3+7
Комментарии9

Как делаются видео с НЛО

Время на прочтение2 мин
Количество просмотров53K
Ещё не так давно снять НЛО было довольно проблематично, но с современными технологиями это можно делать даже в высоком разрешении. Например, так:



Основные этапы:
  1. Трекинг камеры по заданным точкам на видео.
  2. Создание 3D-модели и имитация освещения.
  3. Рендеринг.
  4. Композитинг (компоновка картинки и постобработка), цветокоррекция.

Всё это можно делать с помощью бесплатного и открытого Блендера.

Демонстрация процесса, упакованная в короткое видео:



Далее — более подробно о каждом этапе.
Читать дальше →
Всего голосов 75: ↑72 и ↓3+69
Комментарии50

Краткий Making of Pinup персонажа

Время на прочтение3 мин
Количество просмотров41K


Недавно закончил серию девушек. Не слишком страшных решил сохранить, c одной опишу этапы. На мой взгляд, получился косплей на Pin Up. Для рендера бюста использовал KeyShot. Финал рендерил в Marmoset(программа для реал тайм ингейм привью). Все текстуры готовил под PBR шейдер.

По ссылке можно подробно почитать описание PBR-рендера и его тонкости.
Читать дальше →
Всего голосов 46: ↑43 и ↓3+40
Комментарии20

Информация

В рейтинге
Не участвует
Откуда
Украина
Дата рождения
Зарегистрирован
Активность