ЗЫ: Несмотря на то, что 99.9 % мобильников имеют ядро ARM — легального и доступного способа загрузить свое нативное, а тем более низкоуровневое ПО в большинстве случаев нет.
(хотя, судя по постам на хабре, в РФ вполне легально, но также труднодоступно)
Если отключить свистелки и перделки (симуляция звука затвора) то затвор вполне себе слышен.
Т.к. площадь матрицы маленькая, то затвор получается достаточно простой и надежный.
При слабой освещенности он не используется (используется электронный) хоть и щелкает открываясь примерно на 1 секунду.
Диафрагму слышно при переводе объектива с темного объекта на яркий (и обратно тоже).
«системщина на x86» практически у всех под рукой, а вот, нестандартные железки с ARM хоть и есть почти у всех, но единообразного доступа к загрузке своего ПО они не имеют.
Да и аппаратно они сильно отличаются. Просто так «Hello World!» не напишешь — видео ведь разное (если вообще есть).
Полностью согласен. Любая теория должна закрепляться практикой.
Практика — это возможность обратной связи. Обратная связь позволяет устранить неправильное понимание реальности.
Для простоты реализации практических действий не следует сильно углубляться в теорию, а также применять сложные для использования на начальном этапе инструменты.
А для обучения пользованием такими инструментами как grub все-равно нужно рассказать про принцип его работы и показать простейшие практические примеры.
Собственно, здесь рассказано как запускается загрузчик, ну и приведен пример простейшей заглушки вместо загрузчика.
Я не пользуюсь функциями BIOS, также как и, почти, не пишу программы для PC.
BIOS я упомянул как почти неизбежного посредника для загрузки ОС, а также из-за простейшей реализации вывода текста на экран. (это я знаю из ВУЗ-овской теории)
Про железо — вы меня неправильно поняли. С ним на PC я дело не имел. Разве что только с UART через стандартный API.
С железом я имел дело в других железках (микроконтроллеры и сигнальные процессоры), где проще и быстрее работать напрямую. ОС и абстракции прикрутились потом, по причине необходимости многозадачности (иногда самописные, иногда готовые, но тогда нужно писать еще и драйверы).
Но это совсем другое железо и серьезные ОС для PC я представляю слишком издалека. Мне неведома виртуальная память и ее менеджеры и т.п. Мне проще начинать почти с нуля.
Потому, как для новичка, мне очень нравится статья, т.к. лично мне пока все понятно.
До уровня абстракции мне далеко, мне проще работать с железом напрямую. Да и до железа мне далеко.
Для того чтобы пощупать все это на практике — нужно начинать с простого и самописного. Считаю что «Hello World» — лучшее начало.
(На PC я писал только простенькие программки, а с железом, ОС и абстракцией я знаком в другой сфере. Там все по-другому ввиду больших аппаратных ограничений).
Судя по всему — вы знакомы со всем этим. Я — нет. Мне будет совершенно непонятно что делают всякие там готовые гипервизоры и т.п.
Без понимания принципов работы я не смогу написать эффективную операционную систему.
Операционная система — это не какая-нибудь прога на высокоуровневом языке, где натаскал кнопок на форму, и готово.
Я обязан иметь низкоуровневое представление о железе, о BIOS или, там, EFI, который тоже является Basic IO Sistem, и т.п.
Понятно, что в дальнейшем следует использовать некоторые обкатанные готовые решения, но если сходу начинать с этого, то приходим к полному непониманию принципов работы операционной системы.
Про дисковод тут написано для того, чтобы было понятно почему именно 512 байт. Дорожки и сектора сейчас виртуальные и эмулируются для совместимости и единообразия.
Начало цикла статей очень хорошее, все очень хорошо понятно, да еще можно самому попробовать не отходя от кассы.
У мыльниц есть и затвор и диафрагма, механические.
Без них чрезвычайно сложно совместить приемлемую чувствительность, скорость считывания с матрицы и съемку при ярком освещении.
Лично ремонтировал вдавленные или залитые объективы различных мыльниц — все там есть.
>никакой активной обработки ни в случае silverlight ни в приведённом
В приведенных примерах, действительно, нет никакой обработки.
Однако гугл все же пытается улучшить восприятие за счет инерционности перемещения по карте, анимации рамочек при зуме (вынужденная замена плавному зуму), и временной заменой тайлами с низким разрешением при быстрой прокрутке карты (чтоб хоть что-то отобразить, но резкость меняется не плавно, от этого неприятное мигание квадратов).
Т.е. плавное увеличение и уменьшение это не активная обработка? А плавное увеличение резкости?
Реализация из топика на порядки приятнее работает чем приведенные вами примеры.
Сильно сомневаюсь что на данный момент возможно реализовать такую плавность на JS.
Лучше уж по мозговым волнам.)
На природе я сильно обрастаю т.к. желания хватает только на чистку зубов и купание в прохладной воде.
По мне, так вполне нормально в статье написано, без лишней сухости.
Но это мелочи.
(хотя, судя по постам на хабре, в РФ вполне легально, но также труднодоступно)
Т.к. площадь матрицы маленькая, то затвор получается достаточно простой и надежный.
При слабой освещенности он не используется (используется электронный) хоть и щелкает открываясь примерно на 1 секунду.
Диафрагму слышно при переводе объектива с темного объекта на яркий (и обратно тоже).
Да и аппаратно они сильно отличаются. Просто так «Hello World!» не напишешь — видео ведь разное (если вообще есть).
Практика — это возможность обратной связи. Обратная связь позволяет устранить неправильное понимание реальности.
Для простоты реализации практических действий не следует сильно углубляться в теорию, а также применять сложные для использования на начальном этапе инструменты.
А для обучения пользованием такими инструментами как grub все-равно нужно рассказать про принцип его работы и показать простейшие практические примеры.
Собственно, здесь рассказано как запускается загрузчик, ну и приведен пример простейшей заглушки вместо загрузчика.
BIOS я упомянул как почти неизбежного посредника для загрузки ОС, а также из-за простейшей реализации вывода текста на экран. (это я знаю из ВУЗ-овской теории)
Про железо — вы меня неправильно поняли. С ним на PC я дело не имел. Разве что только с UART через стандартный API.
С железом я имел дело в других железках (микроконтроллеры и сигнальные процессоры), где проще и быстрее работать напрямую. ОС и абстракции прикрутились потом, по причине необходимости многозадачности (иногда самописные, иногда готовые, но тогда нужно писать еще и драйверы).
Но это совсем другое железо и серьезные ОС для PC я представляю слишком издалека. Мне неведома виртуальная память и ее менеджеры и т.п. Мне проще начинать почти с нуля.
Потому, как для новичка, мне очень нравится статья, т.к. лично мне пока все понятно.
Для того чтобы пощупать все это на практике — нужно начинать с простого и самописного. Считаю что «Hello World» — лучшее начало.
(На PC я писал только простенькие программки, а с железом, ОС и абстракцией я знаком в другой сфере. Там все по-другому ввиду больших аппаратных ограничений).
Без понимания принципов работы я не смогу написать эффективную операционную систему.
Операционная система — это не какая-нибудь прога на высокоуровневом языке, где натаскал кнопок на форму, и готово.
Я обязан иметь низкоуровневое представление о железе, о BIOS или, там, EFI, который тоже является Basic IO Sistem, и т.п.
Понятно, что в дальнейшем следует использовать некоторые обкатанные готовые решения, но если сходу начинать с этого, то приходим к полному непониманию принципов работы операционной системы.
«Высота птичьего полета» без азов не позволит сделать «лабораторную работу» самостоятельно и сознательно без тупого copy-paste из статьи.
Авторы правильно сделали что начали с «Hello World!», а не с многозадачности и всякого там IO.
Начало цикла статей очень хорошее, все очень хорошо понятно, да еще можно самому попробовать не отходя от кассы.
Без них чрезвычайно сложно совместить приемлемую чувствительность, скорость считывания с матрицы и съемку при ярком освещении.
Лично ремонтировал вдавленные или залитые объективы различных мыльниц — все там есть.
Вон, самсунг немного справа на высоком здании остался.
В приведенных примерах, действительно, нет никакой обработки.
Однако гугл все же пытается улучшить восприятие за счет инерционности перемещения по карте, анимации рамочек при зуме (вынужденная замена плавному зуму), и временной заменой тайлами с низким разрешением при быстрой прокрутке карты (чтоб хоть что-то отобразить, но резкость меняется не плавно, от этого неприятное мигание квадратов).
Реализация из топика на порядки приятнее работает чем приведенные вами примеры.
Сильно сомневаюсь что на данный момент возможно реализовать такую плавность на JS.