Как стать автором
Обновить
-2
0

JEE software developer

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

Как определить C и C++-программистов по коду, который они пишут

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

Так уж случилось, что я пишу код для разных IoT-железок, связанных с электричеством, типа зарядных станций автомобилей. Поскольку аппаратных ресурсов, как правило, вполне достаточно, то основным фокусом является не экономия каждого байта и такта процессора, а понятный и надежный код. Поэтому в проекте разрабатывают под Embedded Linux и в качестве основного языка используют C++ в его современном варианте - C++17, активно поглядывая на фичи из стандарта 20-го года и новее.

Иногда запускаются новые проекты на той же платформе, с теми же процессами и с переиспользованием многих уже существующих компонентов, и тогда в эти проекты мы ищем программистов, с учетом вышесказанного - программистов на C++. В embedded, тем не менее, чистый C все еще очень популярен, и нередко собеседоваться на вакансию C++ Developer'а приходят именно сишники. Логика у человека простая: языки, на первый взгляд, довольно близкие, базовый синтаксис одинаков, про ООП кандидат что-то слышал, и значит, основная база уже есть и он сможет легко освоить C++ за 21 день в процессе работы, поэтому можно наплести про "с C++ тоже работал", начать писать на "Си с классами" и все получится.

Но нет, не получится.
Всего голосов 110: ↑86 и ↓24+62
Комментарии404

Рейкастинг в игровых 2D-движках

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

Введение


На мой взгляд, рейкастинг — великолепная концепция, понять которую не так сложно, но качественных ресурсов по ней очень мало. Я расскажу о математике, лежащей в её основе, чтобы вы при желании с лёгкостью могли реализовать её в своих будущих проектах. Постараюсь сделать объяснение как можно более понятным, рассказать о всех тонкостях и проблемах, с которыми вы можете столкнуться. Также мы поговорим об оптимизации и о том, как сильно вам могут помочь пространственные хэш-карты. Ещё я напишу простые интерактивные примеры, с которыми вы сможете поэкспериментировать. Учтите, что демо написаны максимально простым образом, не ожидайте увидеть в них код уровня энтерпрайза — мы изучаем саму концепцию, а не реализацию.
Читать дальше →
Всего голосов 22: ↑22 и ↓0+22
Комментарии0

Nintendo DS: внутреннее устройство, принципы работы и взлом

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

Оригинальная Nintendo DS (Blue edition). Выпущена 21.11.2004 в Америке, 02.12.2004 в Японии и 11.03.2004 в Европе.

Краткое введение


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

CPU


Как и предыдущая портативная консоль Nintendo, эта система основана на большом чипе под названием CPU NTR. «NTR» — это сокращение от «Nitro», кодового имени оригинальной Nintendo DS.

В CPU NTR реализована интересная многопроцессорная архитектура с использованием двух разных процессоров ARM, эта структура была создана ещё до того, как ARM Holdings официально начала выпускать многопроцессорные системы. Поэтому их работу с учётом существовавшего тогда уровня технологий можно считать довольно нестандартной.
Всего голосов 23: ↑23 и ↓0+23
Комментарии2

Туториал по FASM (Windows x32 API/Win32API), «Hello world!»

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

Здесь рассказывается о FASM (ассемблере), WinAPI. И напишем первую программу на FASM под Windows.

Читать далее...
Всего голосов 25: ↑22 и ↓3+19
Комментарии25

Самодельные библиотеки ассемблера FASM

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

Здесь я немного расскажу о библиотеках strnum.inc и myMSVlib.dll, которые я сам сделал. Они могут кому-то пригодится. Я уверен что написал не без ошибок. Все ниже перечисленные функции сохраняют состояние регистров, кроме регистра eFLAGS. Исходный код прилагается. Все функции возвращают значение через EAX.

Строки должны иметь в конце завершающий нуль.

Читать далее
Всего голосов 12: ↑11 и ↓1+10
Комментарии6

Полная история серии Fallout

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

Хоть война никогда не меняется, серия игр Fallout значительно трансформировалась на протяжении последних двух десятилетий. Начав свою жизнь как изометрическая CRPG, корни которой уходят в настольные и бумажные ролевые игры, эта франшиза со временем завоевала весь мир.

Сегодня возвращение к первой игре напрягает — Fallout 1997 года была и остаётся невероятно сложной, бескомпромиссной игрой. Ошибёшься — погибнешь. Примешь неверное решение — погибнешь. Не ошибёшься и не примешь неверное решение — всё равно погибнешь. Это мрачная и серьёзная (по большей части) история, говорящая нам, что жизнь после конца мира в зареве ядерных взрывов действительно жестока.

«Я с детства был фанатом постапокалиптической литературы», — рассказывает исполнительный продюсер Fallout (и основатель Interplay) Брайан Фарго. «И Wasteland была первой моей попыткой принести что-то новое в этот жанр. Вскоре после завершения игры Wasteland компания Interplay стала издателем и мы перестали работать на других. Я пытался добиться, чтобы EA лицензировала мне мои права обратно, но этого не удавалось добиться в течение многих лет. Наконец я решил, что мы будем делать собственную постапокалиптическую игру и назовём её Fallout».
Всего голосов 55: ↑54 и ↓1+53
Комментарии133

Конец Золотого Века. История процессоров поколения Intel Pentium III. Часть 2

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

Это вторая часть статьи — история Pentium III оказалась слишком насыщена событиями и уместить их в одну статью, не сделав ее чрезмерно тяжеловесной не получается. Давайте вспомним, что было в первой части:

  • Мы сравнили поздний Pentium II (Deschutes) и ранний Pentium III (Katmai) и почти не нашли отличий.
  • Удивились производительности встроенного видео i810.
  • Вытерли скупую слезу, вспоминая горькую судьбу i820.
  • Искали медь в медных рудниках и не нашли.
  • Рассмотрели весь спектр чипсетов других производителей.
  • Не в последний раз помянули добрым словом i440BX.
  • Нашли компромисс в i815.

А теперь нас ждут новые приключения! На старт, внимание, марш!
Читать дальше →
Всего голосов 54: ↑54 и ↓0+54
Комментарии17

Что означает RISC и CISC?

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

Многие говорят, что разница между RISC и CISC стала несущественной. Так ли это? И если нет, то в чем разница между современными RISC и CISC процессорами?

Компания Apple выпустила процессор Apple Silicon M1, который произвел фурор. Теперь вы можете задаться вопросом, чем он отличается от процессоров Intel и AMD? Вероятно, вы слышали, что M1 — процессор с архитектурой ARM, а ARM — это RISC, в отличие от Intel и AMD.

Если вы читали про разницу между микропроцессорами RISC и CISC, то вы знаете, что множество людей утверждают об отсутствии практической разницы между ними в современном мире. Но так ли это на самом деле?
Читать дальше →
Всего голосов 76: ↑72 и ↓4+68
Комментарии89

Discret 11: краткая история шифрования французского телеканала

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

Я провёл своё детство во Франции, много играл в футбол и слишком долго смотрел телевизор. В 80-х во Франции было три телеканала. Два из них, Antenne 2 и FR3, финансировались государством и были скучными, а TF1 был частным и показывал много японских мультиков. Моё поколение выросло на «Капитане Цубасе», «Святом Сейя», «Капитане Харлоке» и «Грендайзере».

У нас не было ни кабельного, ни Интернета, телесигнал транслировался по воздуху и на крыше каждого дома стояла ловившая волны антенна.

Всё изменилось в 1984 году с появлением четвёртого канала. Canal Plus (Channel Plus) должен был совершить революцию на рынке телеканалов, показывая современные фильмы, спортивные трансляции со всего мира и не имея при этом рекламы. Для удовлетворения амбиций владельцев «Canal» должен был финансироваться ежемесячной абонентской платой подписчиков.

Техническая трудность такой схемы была совершенно понятна. Как гарантировать, что канал смогут смотреть только заплатившие абоненты, если его сигнал транслируется всем? Легко — достаточно закодировать его технологией под названием «Discret 11».
Всего голосов 58: ↑57 и ↓1+56
Комментарии28

Принимаем и декодируем аналоговое ТВ с помощью SDR и Python

Время на прочтение4 мин
Количество просмотров23K
Привет, Хабр.

Сегодня мы продолжим тему SDR-приема и обработки сигналов. Приемом аналогового ТВ я заинтересовался совершенно случайно, после вопроса одного из читателей. Однако это оказалось не так просто, из-за банального отсутствия образцов сигнала — во многих местах аналоговое ТВ уже отключено. Читатель даже прислал запись с RTL-SDR, однако ширина записи у RTL порядка 2МГц, в то время как полоса ТВ-сигнала занимает около 8МГц, и на записи было ничего не понятно. В итоге, тема была надолго заброшена, и наконец, только сейчас, в очередную поездку к родственникам я взял с собой SDRPlay, и настроившись на частоты ТВ-каналов, увидел на экране искомый сигнал.

Небольшая программа на Python, и все работает:



Для тех, кому интересны подробности, продолжение под катом.
Читать дальше →
Всего голосов 26: ↑25 и ↓1+24
Комментарии18

Изучаем С используя GDB

Время на прочтение6 мин
Количество просмотров106K
Перевод статьи Аллана О’Доннелла Learning C with GDB.

Исходя из особенностей таких высокоуровневых языков, как Ruby, Scheme или Haskell, изучение C может быть сложной задачей. В придачу к преодолению таких низкоуровневых особенностей C, как ручное управление памятью и указатели, вы еще должны обходиться без REPL. Как только Вы привыкнете к исследовательскому программированию в REPL, иметь дело с циклом написал-скомпилировал-запустил будет для Вас небольшим разочарованием.

Недавно мне пришло в голову, что я мог бы использовать GDB как псевдо-REPL для C. Я поэкспериментировал, используя GDB как инструмент для изучения языка, а не просто для отладки, и оказалось, что это очень весело.
Читать дальше →
Всего голосов 70: ↑66 и ↓4+62
Комментарии30

Хождение по мукам или долгая история одной попытки восстановления данных

Время на прочтение5 мин
Количество просмотров35K
На дворе стоял 2019 год. В нашу лабораторию поступил не совсем обычный для нашего времени накопитель QUANTUM FIREBALL Plus KA емкостью 9.1Гб. Со слов владельца накопителя отказ случился в далеком 2004 году по вине вышедшего из строя блока питания, который прихватил за собой жесткий диск и другие компоненты ПК. Далее были хождения по различным сервисам с попытками отремонтировать накопитель и восстановить данные, которые не увенчались успехом. Где-то обещали дешево, но так и не решили проблему, где-то слишком дорого и клиент не пожелал восстанавливать данные, но в итоге диск прошел путь через множество сервисных центров. Неоднократно терялся, но благодаря тому, что владелец заблаговременно позаботился о записи информации с различных наклеек на накопителе ему удалось добиться, чтобы именно его жесткий диск был возвращен из некоторых сервисных центров. Хождения не прошли бесследно, на оригинальной плате контроллера остались множественные следы пайки, а также визуально ощущался недостаток SMD элементов (забегая вперед скажу, что это наименьшая из проблем этого накопителя).


Рис. 1 HDD Quantum Fireball Plus KA 9,1Гб
Читать дальше →
Всего голосов 102: ↑102 и ↓0+102
Комментарии107

Память марсохода Opportunity успешно переформатирована

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

Пройдённый путь приближается к дистанции марафонского забега


Команда НАСА переформатировала постоянное запоминающее устройство марсохода «Оппортьюнити» после трёх месяцев, в течение которых приходилось обходиться хранением данных только в энергозависимой оперативной памяти.

20 марта было получено подтверждение, что процедура переформатирования прошла успешно. До этого в этом месяце марсоход переключился на использование обновлённой версии программного обеспечения, которая избегает использования проблемного седьмого банка памяти на борту аппарата.
Читать дальше →
Всего голосов 27: ↑27 и ↓0+27
Комментарии13

Естественный износ головок жесткого диска. Обнаружение и оценка

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

Введение


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

  1. Повреждения головок при аварийном завершении работы диска (залипание на поверхности, неправильный заход на парковку и т.п.).
  2. Повреждения головок при физическом воздействии на диск (падение диска, удар по диску, сильные вибрации во время работы и т.п.).
  3. Повреждения головок при электрическом шоке (сгорел блок питания, скачок напряжения в сети электропитания, переполюсовка при подключении питания (не спрашивайте меня как, разъем каким-то образом умудряются другой стороной забить) на накопитель и т.д.).
  4. Заводской брак.
  5. Естественный износ.
Читать дальше →
Всего голосов 32: ↑32 и ↓0+32
Комментарии45

Учёные восстановили фотографии с полярного метеоспутника 60-х гг

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


50 лет назад скромный американский метеоспутник Nimbus-1 вышел на солнечно-синхронную орбиту недалеко от Арктики и начал делать первые фотографии, которые по сегодняшним меркам выглядят страшновато: это чёрно-белые зернистые снимки. Вслед за первым были запущены ещё шесть метеоспутников серии Nimbus.

Американскому метеорологу Дэвид Галлахер (David Gallaher) в то время было 8 лет, и он даже не подозревал, что спустя полстолетия ему понадобятся фотографии с этих спутников. Их ценность исключительно высока, потому что они зафиксировали состояние морского льда в разных районах Арктики и Антарктики за 17 лет до того, как учёные стали вести официальную хронику состояния льдов.
Читать дальше →
Всего голосов 35: ↑34 и ↓1+33
Комментарии7

История «мягких» (гибких) накопителей

Время на прочтение9 мин
Количество просмотров40K
Сегодня для хранения информации мы используем HDD, SSD, SD-карты, USB-флэшки. Уже намного реже мы вставляем в ноутбуки лазерные диски. У меня лично дома ни одного устройства, поддерживающего этот носитель, нет.

Многие из нас давно не видели аудио и видеокассет, бобин с магнитными плёнками, дискет, и тем более перфокарт и перфолент. Эти носители, некоторые из которых известны ещё с XVIII века, почти исчезли.

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


Всего голосов 38: ↑38 и ↓0+38
Комментарии144

Анатомия накопителей: жёсткие диски

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

Он магнитный. Он электрический. Он фотонный. Нет, это не новое супергеройское трио из вселенной Marvel. Речь идёт о хранении наших драгоценных цифровых данных. Нам нужно где-то их хранить, надёжно и стабильно, чтобы мы могли иметь к ним доступ и изменять за мгновение ока. Забудьте о Железном человеке и Торе — мы говорим о жёстких дисках!

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

You spin me right round, baby


Механический накопитель на жёстких дисках (hard disk drive, HDD) был стандартом систем хранения для компьютеров по всему миру в течение более 30 лет, но лежащие в его основе технологии намного старше.

Первый коммерческий HDD компания IBM выпустила в 1956 году, его ёмкость составляла аж 3,75 МБ. И в целом, за все эти годы общая структура накопителя не сильно изменилась. В нём по-прежнему есть диски, которые используют для хранения данных намагниченность, и есть устройства для чтения/записи этих данных. Изменился же, и очень сильно, объём данных, который можно на них хранить.

В 1987 году можно было купить HDD на 20 МБ примерно за 350 долларов; сегодня за такие же деньги можно купить 14 ТБ: в 700 000 раз больший объём.

Мы рассмотрим устройство не совсем такого размера, но тоже достойное по современным меркам: 3,5-дюймовый HDD Seagate Barracuda 3 TB, в частности, модель ST3000DM001, печально известную своим высоким процентом сбоев и вызванных этим юридических процессов. Изучаемый нами накопитель уже мёртв, поэтому это будет больше похоже на аутопсию, чем на урок анатомии.
Всего голосов 45: ↑44 и ↓1+43
Комментарии26

Линус Торвальдс сравнил жёсткие диски с Сатаной

Время на прочтение1 мин
Количество просмотров152K
Линус Торвальдс известен как человек, который не стесняется высказывать своё мнение в категорической форме. Год назад он назвал разработчиков SUSE Linux «идиотами» за их подход к обеспечению безопасности ОС, совсем недавно он показал палец компании Nvidia.

На прошлой неделе Линус провёл сессию вопросов и ответов с читателеями Slashdot и тоже рассказал много интересного. Например, высказался категорически против использования HDD в персональном компьютере. Сам Торвальдс пользуется ноутбуками и настольными ПК исключительно с SSD.
Читать дальше →
Всего голосов 99: ↑73 и ↓26+47
Комментарии393

Эра дискет закончилась в декабре 2015

Время на прочтение2 мин
Количество просмотров52K
image 2500 дискет (3,5") или примерно 3,5 Гб. Норвегия. 2015 год.
Массовое производство дискет прекратилось в 2010 году. Но как оказалось некоторым приходится работать с дискетами почти каждый день.
Викинг Программист Finn Espen Gundersen из солнечной Норвегии рассказал на своем сайте зачем норвежские доктора получают по обычной почте каждый месяц по одной 3,5" дискете от норвежского правительства (Norwegian Directorate of Health). Финн Гундерсен работает в небольшой IT-компании, работающей по контракту министерства здравоохранения Норвегии.
Читать дальше →
Всего голосов 53: ↑51 и ↓2+49
Комментарии206

Кручу-верчу, запутать хочу. Разбираемся в линейках HDD

Время на прочтение11 мин
Количество просмотров236K
Привет, гиктаймс!

Сегодня у нас необычный материал, статья-ликбез: выбираем правильные HDD в зависимости от предполагаемых сценариев использования. Дело в том, что производители наплодили целую кучу разных линеек, и, если не следить за темой регулярно, через год-полтора можно легко забыть, какая серия к чему относится, зачем нужна и чем отличается.
Читать дальше →
Всего голосов 61: ↑58 и ↓3+55
Комментарии33
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Бээр-Шева, Хадаром, Израиль
Зарегистрирован
Активность