Pull to refresh

Comments 86

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

По-моему, те, кто выпускал электронные книги, боялись, что их будут копировать, вот производители и решили по максимуму «защитить» аппарат. И не подумали, что это приведёт к таким последствиям. Или подумали, но решили, что к тому моменту они всё равно никому не будут нужны.
Энергонезависимая память в те годы действительно была дороже, но так, чтоб аж ОС в неё запихивали, не встречал на «пользовательских» девайсах ни разу.

А сейчас что?

Году эдак в 2012 купил читалку PocketBook. Всё было отлично, пока "встроенная" (фактически - вклеенная в разъём) microSD карточка не решила устать - сначала начались странные глюки с перезагрузками, или зависание книжки. Пару раз спасался chkdsk'ом, потом решил таки заменить карточку на свежую, но книжка не загрузилась. Оказалось, прошивка (которая лежит обычными файлами на карте памяти) проверяет ID этой самой карточки, и с помощью этих ID расшифровывает некоторые исполняемые(!) библиотеки (либо восстанавливает указатели на память, в общем, глубоко не лез).

Даже описано в видео.

ЕМНИП эту проблем, у с заменой microSD на ПокетБук, уже победили, написав самописную утилиту для модификации прошивку. Главный гемор при этом, это получить серийный номер целевой microSD, чтобы модифицировать прошивку по эту карту.

Разобрать PocketBook, вытащить карточку, вставить новую, получить ругань загрузчика, посмотреть серийник на экране. На моей было так.

Как вариант - linux + кард-ридер или ещё несколько вариантов, включая разные уровни извращений от Arduino+USB-TTL и разные другие.

Там сначала на карту писался самописный загрузчик, который делал только одну вещь, выводил серийный номер карты. Ручками номер списывался, запускалась утилита модификации прошивки, потом прошивка заливалась на эту самую карту.
Их наследие ещё живо. К примеру у меня имеется не такая уж старая читалка PB626. ОС записана на флешку и привязана к её внутреннему номеру. Чтобы карту достать, нужно разобрать девайс и отпаять металлический экран. А когда карта дохнет(это обычная microSD), то её нельзя так просто поменять.
А в совсем новых моделях как с этим? Не знаете?
Что то определённо изменилось. Многие модели PB включая Era, перепрошивают без разборки на Cool Reader. Как там всё внутри, если честно даже палкой не тыкал.

У меня где-то до сих пор лежит PB902. Отличный огромный экран.

Но он подвисает после нескольких нажатий, что-то там отваливается... Лезть паять BGA не хочу :-\

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

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

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

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

Возможно, опасаются, что тогда пользователи научатся и декодировать все остальные *.SEB'ы. А это значит, что контент тоже будет массово утекать.

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

Судя по всему, там было аналогично с ключом шифрования в DVD-плеерах… И специально сделали, чтобы минимизировать риск утечки ключей, которыми расшифровывается контент.
По идее правильная криптография не боится раскрытия алгоритмов

Это только в сухой теории. На практике, если ваш гаджет должен расшифровывать какой-то файл, ключ для расшифровки должен лежать где-то в прошивке гаджета. И security through obscurity в такой ситуации вполне себе уместная дополнительная защита.

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

В 1999 году было ОЗУ дешевле ПЗУ. Еще один пример из начала века- картриджи Game boy с встроенной батарейкой.
Но удивляет, почему тут сделали так с ОС. Те же КПК на винде научились не терять данные после долгого лежания лишь к середине нулевых. Но в кирпич они от этого не превращались.
Судя по тому, что ОС защищена от копирования, тут, похоже, не просто удешевление.

Это позволяет решить сразу кучу проблем - новая версия ОС накатывается легко, скорость ОЗУ больше флэша, ОЗУ скорее "резко пропадёт", а вот флэш может "течь" кусками. И это без учета цены флэша и ОЗУ. Защита может быть не только "от копирования", но и от залива "не того" в аппарат. Возможно, такой подход позволял использовать отбракованные чипы ОЗУ - просто на сервере имеем БД с битыми ячейками в каждом аппарате. Также, могла быть модель "вы делаете железку и платите с каждой железки за софтину" - без шансов обмануть.

ПЗУ было дешевле, дороже была перезаписываемая энергонезависимая память.

Батарейка в игровых картриджах нужна только для сохранений игрового прогресса. И ПЗУ всегда было дешевле чем ОЗУ, по очевидным причинам. Вот Flash - другое дело.

Да. Для КПК долгое время Flash оставалась редкостью, за исключением отдельных моделей вроде Pocket Viewer.

Принтер HP1020, ЕМНИП, тоже имеет в памяти только начальный загрузчик. Основную прошивку в ОЗУ загружает с ПК.

Логический анализатор Saleae Logic ещё. По сути компания продаёт софт, а девайсы идут в довесок.

Я так понимаю, речь о логических анализаторах на основе кипарисовского чипа FX2LP. Если да - то этот чип в принципе был спроектирован (теми самыми кипарисами) без ПЗУ и основной способ его приведения в рабочее состояние - загрузка кода в ОЗУ через USB. Это по сути очень-очень дешёвое ядро 8051 + GPIO + USB 2.0 PHY. Потому этот чип обрёл популярность в качестве "транслятора" GPIO-USB 2.0. И поэтому он ставится в том числе у Saleae Logic. Это один из самых дешёвых способов прокачать примерно 300 мегабит в секунду из некоторого устройства в ПЭВМ.

Хороший чип, я как раз разбираюсь с его работой по статье из современной электроники за авторством Дмитрия Чекунова. И таки там есть нюансы :)

И грузиться он может кстати с i2c.

А ещё есть книга от Ms windows drivers foundation, где примеры сделаны на этой плате.

HP1020 был нормальным полноценным принтером. А вот Canon LBP810, сделанный на его базе, был убогим, драйвер загружал в него прошивку при включении.

Canon LBP-800/810 поступил в продажу в 1999 году.

В 2003 появилась линейка HP LJ 1010/1012, а в 2005 году уже появился HP LJ 1020.

Если речь идёт про HP LJ 1200, то опять мимо: он появился только в 2001 году.

lbp800 810 по механике это HP laserJet 1100 а вот прошивка своя. Драйвера есть максимум на 7 и самописные под линукс, но чет я не смог их запустить

UFO just landed and posted this here
Именно ROM (масочное ПЗУ или однократно программируемое) при массовой штамповке стоила копейки. Оттого и пихали её везде. В картриджах было как раз оно. В девяностых ещё некоторые кооперативы выпускали картриджи с УФ-ПЗУ, но это уже не так важно. Что же до более дешёвой ОЗУ, то в Денди она тоже была. Были картриджи с батарейкой и поддержкой сохранения.
Flash/EEPROM — уже другая история.
UFO just landed and posted this here

Немного не так. ПЗУ было несколько дешевле, другое дело, что оно было либо с одноразовой записью, с ультрафиолетовым стиранием или с каким-то другим жутко неудобным решением. А вот аналога флеш памяти не было, либо он был очень (космически) дорог.

Чиорт, долго писал ответ, уже понаписали...

Плюс ещё были некоторые особенности работы с ней. На Casio PV сохранение чего-либо во Flash занимало видимые секунды (на которые КПК показывал сообщение типа «Идёт сохранение...» и отправлялся в глубокую задумчивость).
А вот аналога флеш памяти не было, либо он был очень (космически) дорог.

В 1999-м? Да навалом было флеша, в любой материнке уже использовались флешки вместо УФ ПЗУ (пример, Win32.CIH), в гаджетах также массово применялась флеш-память, в том числе и в качестве сменных носителей — карточки Compact Flash, MMC и иже с ними. Винда уже умела в Mass Storage, хотя USB-флешки ещё не появились, но уже были mp3-плейеры. Стоимость флеш-памяти можно прикинуть по стоимости плейера Diamond Rio, выпущенного в 1998-м году. Версия с 32Мб памяти стоила 200 баксов, версия с 64Мб — 250. Учитывая стоимость КПК, флеш там был вполне себе экономически оправдан (это ещё не считая доступность 1.8" жестких дисков!), поэтому подобная схема работы даже по меркам 1999 года откровенно кривая.

Ну как бы да, дешевле. Все машинки на Windows Mobile до v.5 были сделанны аналогичным образом.

А заодно и Palm до PalmOne, Psion, практически все электронные органайзеры и ещё куча всего…

Во-во. Более того, в тех же Palm-ах таки было ПЗУ для начальной загрузки. Но только в дорогих моделях это был EEPROM, в бюджетных m-серии - однократно программируемое.

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

Может это защита от кражи девайса, чтобы вор не мог переустановить ос.

А так защита девайса от установки стороннего софта, конторой, которая наваривает с продаже железа, это какой-то странный кейс.

Может там можно было сломать железо изнутри и поэтому просто ограничивали шаловливость, чтобы не париться с гарантией?

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

Может это защита от кражи девайса, чтобы вор не мог переустановить ос.

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

Вот, что такое "запланированное устаревание", а не эти ваши замедления старых iPhone.

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

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

бояться судов.

Скорее, сложность в самой реализации на поздних версиях яОси.

Предпоследняя версия iOS обычно ломается.

Меня лучший друг который год пытается убедить снова попробовать айфон...

Ооооо! Узнаю паттер "прожженный" на первой фотке слева. JawBreaker был игран, и судя по всему далеко не один раз.

Красивые фотографии, лучше подумай о том, через несколько версий windows: вы не можете зайти в компьютер, а если можете зайти, то не можете установить новые программы с подпиской, рассчитанные на время использования или ваш email сервер не соответствует какой либо политике конфиденциальности или поддержка почтового адреса на сервере соответствующем политике конфиденциальности Windows услуга оказываямая только в демокраси странах, а у вас цифровой паспорт допускающий право использовать ПЭВМ есть и прочая ?

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

услуга оказываямая только в демокраси странах, а у вас цифровой паспорт допускающий право использовать ПЭВМ есть и прочая

Нисколько не хочу сейчас говорить о политике, но если реально до такого дойдёт, то, скорее всего, ваш девайс просто выдаст ошибку с текстом вроде «This unit has been permanently disabled due to sanctions...».

В случае комикса… а системные часы у роботов тоже залочены от вмешательства или синхронизируются с внешним источником?


Вообще вспоминается вот серия Safehold Дэвида Вебера, там возникла необходимость у PICA(андроид-аватара куда можно временно грузить сознание а потом интегрировать с оригиналом) ломать встроенный таймер, который сбрасывал память через определенное время (что незаконно, но тем кто делал — было глубоко пофиг на незаконность)

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

а системные часы у роботов тоже залочены от вмешательства?

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

...оба КПК я немедленно продал

Как?!! Я не понимаю!!!

Увидев плату с микросхемами-каплями как в китайском органайзере, остатки энтузиазма, чтобы выпаивать Flash, реверсить и патчить прошивку для процессора неизвестной архитектуры, я окончательно растерял. А держать в коллекции два кирпича решительно не хотелось. Можно, конечно, оставить как напоминание, что усомниться в том, что DRM приносит конечным пользователям только вред, могут лишь сами правообладатели. Но уже не хотелось.

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

А Вам безмерное уважение за попытку оживить ЭТО. Достойно!

У меня возник тот же вопрос, как у предыдущего автора, но видно с другим поддтекстом.
Как можно быстро продать 2 экземпляра ни на что не годного хлама? Да расходы на логистику должны быть на порядок больше цены.

В данном случае просто нашёл того, кто искал данную модель КПК.

… так и ходили они от одного разочарованного человека к другому

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

Был бы он менее закрытым, нормального софта под него было бы куда больше.

Скорее всего, но тогда для КПК вообще сильно много софта не было ещё, и вскоре после его выхода появились КПК с Windows Mobile, у которых было больше памяти, мощные процессоры и цветные экраны. Это было их смертью, а так же смертью пальмов и псионов.

У пальм и Зышщтов была своя, верная им аудитория. Те, кому был нужен КПК, работающий неделями от батареек. Ни один WM-аппарат, за исключением реликтов вроде HP 300LX или Philips Nino (но это даже Windows CE, а не WM/PPC), так не мог. Для Palm/Psion тоже были гигабайты софта. И, самое главное, условно свободно распространяемые SDK.
Для этого же не было ничего.

UPD: я как раз вспоминал чуть выше Casio Pocket Viewer. У него тоже была своя неповторимая ОС и процессор архитектуры X86, но на осколках тематических сайтов можно найти немалое количество софта под данные устройства. Потому что SDK и документация были в открытом доступе.
А у того же Psion была отличная совместимость благодаря их OPL-коду.
У пальм и Зышщтов была своя, верная им аудитория. Те, кому был нужен КПК, работающий неделями от батареек.

А все равно у них не было шансов в сравнении с виндовыми КПК. Дело банально в софте. Я программировал под пальмы, и знаете, ИМХО, это один из самых неудобных для программиста девайсов, с которыми я сталкивался. Не знаю, как в пятой, а третья пальмОС не имела даже файловой системы. Ну т.е. там было какое-то подобие, по духу ближе к массивам записей, и низкоуровневый апи для работы с ним, но это было хуже, чем в MS DOS. И вот на этом я пытался писать автоматизацию менеджеров по продажам. А потом нам дали винмобайлы… а там не то, что нормальная ФС, там эмбеддед-версия СУБД MS SQL доступна была.
Удивительно, буквально месяц назад на авито думал купить такой аппарат. Уж больно кошерно выглядит.

Но после вашей статьи понял, что хорошо, что не сделал этого. Устройство схемотехнически классное. С точки зрения софта, беда бедовая.
К слову, в PocketBook наследие этого тоже присутствует. Я чуть выше даже кинул ссыль на ваш пост.
UFO just landed and posted this here

Хотел было поехидничать, что-де больше и не получится, а поди ж ты: компания ещё жива!

Ууу, Franklin eBookMan, моя первая электронная книга! Удивительный девайс. Прочел на ней сотню книг, наверное. Потом была Сонька PRS-500, на ней десятки книг, а последняя купленая книжка амазон, эх, лежит почти без дела.

Этот зеленоватый экран, эта страшненька подсветка франклина...

… но самыми актуальными для этого в те времена были КПК Sony Clié с их колёсиком прокрутки.

У самого был Соньковский КПК, сделанный по лицензии Пальмы. Чёткий цветной экран, высокая скорость работы, долго играющий аккумулятор. Лучший КПК из всех, что я имел.

Детёныши залили минералкой.

Эхх. Хороший аппарат (был). У самого есть раскладушка их с PalmOS и цветным экраном.

У меня с финансами тогда было худо, я и Franklin брал восстановленый, подешевле. Остался у одной бывшей он. Потом была сонька и еще планшет Barnes & Noble в качестве читалки.

Остался у одной бывшей он.
Карту памяти-то хоть перед отдачей вытащили?

Нет, уходя уходи... :)

Кстати, нашел вчера на облаке у себя старую папку EbookMan Desktop Manager со старого компа. Полазил, вспомнил, что там шахматы какие-то были и другие игры. Насколько я помню, каждая книга создавалась как отдельное приложение. Т.е. брался текст, как-то через менеджер создавалась программа "Название_книги.seb". И в перечне было куча "программ"-книг. Хотя может что-то и путаю я, файлы датированы 2002 годом.

Насколько я помню, каждая книга создавалась как отдельное приложение. Т.е. брался текст, как-то через менеджер создавалась программа «Название_книги.seb».
Как это тут реализовано, мне неведомо. Зато помню, что на пальме была прога, которая перегоняла текстовики с книгами в *.prc. Внутри был сам текст и простенькая прога-просмотрщик.

Тяжёлый случай. Можно было бы на контроллер дисплея прицепить RP2040 - но нет, дисплей тоже не без недостатков, дохнет только так. Кроме как на полку вместо статуэтки, применений не вижу.

А производитель живой, и одну модель с однобитным дисплеем до сих пор производит.

Относительно VeriFone SC5000, насколько я помню, исполняемый код мог храниться и во флеше. А особенность с потерей информации при разряде "часовой" батарейки - это для защиты критичных данных (в первую очередь - ключей).

В старых версиях всё было именно на RAM-диске. И при разряде батарейки надо было ещё и перезалить ОС.

Sign up to leave a comment.