Стенограмма доклада про Фантом-ОС, сделанного Дмитрием Завалишиным на ADD-2010

Аннотация

Дмитрий Завалишин рассказал о текущем состоянии в разработке своего любимого детища — оригинальной операционной системы PhantomOS, близкой по концепции Microsoft Singularity, но при этом open-source (опубликована большая часть исходных кодов этой операционной системы).

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

Стенограмма

Стенограмму по видеозаписи записал Стас Фомин.

Как сделать так, чтобы реально было хорошо? В том смысле, что все существующее на сегодня программное обеспечение делается по принципу «Давайте возьмем то, что было, ну и как-то это все подточим, улучшим, подвинем здесь, подправим тут», и в итоге, все что у нас есть на сегодня, это legacy-legacy-legacy, какое-то старье, которое развивалось, развивалось, развивалось, и в итоге, оно все такими наслоениями, и очень сложная и тяжелая…

Я вот пользуюсь компьютерами двадцать пять лет, вы знаете, они с тех пор, в тех с которых я начинал, в них было две дискетки по 160Кб, и 48Кб оперативной памяти. Так вот, вы знаете, оно загружалось быстрее, чем то, что у меня сейчас есть, а функционально я примерно тоже самое с ней и делаю, я программы пишу на ней, редактирую какие-то тексты, и электронную почту читаю. А при этом процессор и память изменились, господи боже… я даже подсчитать-то не могу… Пять порядков, шесть порядков — куда все это проваливается? Это проваливается ровно туда, весь софт, который сегодня сделан, он сделан по принципу исторического развития, чего-то такого старого, страшного и несчастного.

«Фантом» родился по-принципу — давайте подумаем, о том, что оно было, и давайте, попробуем, сделаем с нуля, не возьмем ядро Линукса, не будем брать Яву, при всей моей любви к ней, не будем развивать существующее, стартанем с чистого листа.

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

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

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

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

Читать

Разработка под андроид, не на Java

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

Android — пусть и не идеальная, но для прагматического разработчика самая лучшая мобильная платформа для open source проектов. Но все приложения бегут под Dalvik VM, так что вам любом случае придётся иметь дело с окружением Java.

Читать

Финский стартап делает рекомендательный «поисковик будущего»

Автор: Юрий Ильин
Опубликовано 25.04.2011 в блоге автора (rss)

Финский стартап Futureful хочет показать нам будущее и «дать нам то, что мы хотим, до того, как мы поймём, что хотим этого». Futureful разрабатывают предложение для iPad, которое будет собирать со всей Сети для пользователя персонализированную выдачу, не заставляя его долго и печально «дрессировывать» программу на предмет того, что ему нужно, а что нет. Программа должна делать это сама – хотя бы до определённой степени.

«Система предиктивного выявления Futureful анализирует релевантные потоки информации, чтобы вычислить возможное развитие событий вокруг вас. Мы используем комбинацию личностных, социальных и контекстных фильтров, чтобы выяснить интересы, влияния и намерения, и предоставить вам наиболее интересные и вдохновляющие начальные точки для дальнейшего исследования…» – говорится на сайте Futureful.

В разделе Vision есть ряд дельных замечаний по поводу «человекоцентричного интернета»: в частности, создатели Futureful считают, что это технология должна адаптироваться к людям, а не наоборот, и что весь информационный шум, которым наш мозг перегружается ежедневно и ежечасно, можно и нужно переработать во что-то более полезное и значимое.

Читать

Иран создаёт «свой интернет» – мусульманский

Автор: Виктор Ласло
Опубликовано 18.04.2011 в блоге «Компьютерры»

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

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

Читать

Стандарту FTP исполнилось 40 лет

Один из ключевых протоколов интернета FTP (file transfer protocol) в субботу отметил свой 40-летний юбилей. Студент Массачусетского технологического института Абхай Бушан (Abhay Bushan) опубликовал первые спецификации RFC 114 16 апреля 1971 года, задолго до появления HTTP и даже за три года до TCP (RFC 793)!

Простой стандарт для копирования файлов с годами начал поддерживать более сложные модели контроля, совместимости и безопасности (сейчас существуют различные расширения). Удивительно, но и спустя четыре десятилетия FTP нельзя назвать устаревшим и он до сих пор довольно широко используется. Даже с технологиями P2P старичок выдерживает конкуренцию. Чего стоит одна только функция FXP, принятая в 1985 году, с помощью которой по FTP можно копировать напрямую файлы с одного удалённого сервера на другой. Для своего времени это было очень круто.

За сорок лет FTP сумел устоять перед многочисленными конкурентами, в том числе fsp, scp, rsync, uucp, WAIS, gopher и ftpmail, хотя некоторые из них превосходили FTP по ряду параметров и имели лучший интерфейс.

На смену оригинальному RFC 114 пришёл стандарт RFC 765 (июнь 1980), а затем RFC 959 (октябрь 1985), который действует до сих пор с учётом дополнений, которые касаются поддержки IPv6 и SSL/TLS.

Читать

Взлом EasyFinance.ru, к вопросу о черных программистах

Сегодня пользователи EasyFinance.ru получили на email сообщение о взломе системы. В качестве доказательства злоумышленники прикладывают список пользователей с указанием первой части email адресов (до собачки) и названий кошельков в системе. Сам факт письма на электропочту, известную только EasyFinance, говорит о том, что у сервиса существуют проблемы с конфиденциальностью данных пользователей.
Главное требование взломщиков — это полное закрытие сервиса. Однако мотивация этого требования не совсем понятна. Текст письма больше похож на крик уволенного или просто обиженного сотрудника компании. Если это и вправду так, то возможно этот сотрудник имеет доступ к данным пользователей и сейчас ими шантажирует владельцев сервиса.

Читать

Эти бесчисленные парадигмы, концепции, инструменты и фреймворки

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

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

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

Читать

Команда dd и все, что с ней связано

В UNIX системах есть одна очень древняя команда, которая называется dd. Она предназначена для того, чтобы что-то куда-то копировать побайтово. На первый взгляд — ничего выдающегося, но если рассмотреть все возможности этого универсального инструмента, то можно выполнять довольно сложные операции без привлечения дополнительного ПО, например: выполнять резервную копию MBR, создавать дампы данных с различных накопителей, зеркалировать носители информации, восстанавливать из резервной копии данные на носители и многое другое, а, при совмещении возможностей dd и поддержке криптографических алгоритмов ядра Linux, можно даже создавать зашифрованные файлы, содержащие в себе целую файловую систему.
Опять же, в заметке я опишу самые часто используемые примеры использования команды, которые очень облегчают работу в UNIX системах.

Начну с небольшого примера, наглядно иллюстрирующего основные параметры команды:

# dd if=/dev/urandom of=/dev/null bs=100M count=5

Параметры:

  • if: указывает на источник, т.е. на то, откуда копируем. Указывается файл, который может быть как обычным файлом, так и файлом устройства.
  • of: указывает на файл назначения. То же самое, писать можем как в обычный файл, так и напрямую в устройство.
  • bs: количество байт, которые будут записаны за раз. Можно представлять этот аргумент как размер куска данные, которые будут записаны или прочитаны, а количество кусков регулируется уже следующим параметром.
  • count: как раз то число, которое указывает: сколько кусочков будет скопировано.

Читать

Черные разработчики: уволенные программисты возвращаются… с дьявольским кодом

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

Пройдемся же по аллее славы светлых разработчиков (или просто компьютершиков с хорошими способностями), которые перешли на темную сторону силы.

Читать

Оптимизируем процесс работы в консоли

Все привыкли редактировать текст в текстовых редакторах, блокнотах, веб-формах и т.д. В процессе набора текста мы пользуемся привычными стрелками, кнопками «End» и «Home», более опытные зажимают «Ctrl» и стрелками шагают по словам (что, кстати, не всегда работает). И при переходе на консоль мы ориентируемся на те же самые правила, даже не зная, что bash предлагает очень удобные средства и комбинации клавиш, которые очень упрощают работу и минимизируют количество операций для выполнения задачи. К тому же, в bash есть удобные средства работы с историей, масса различных подстановок и других интересных функций. Самые часто используемые мной и любым опытным администратором я и опишу в этой статье.

Для того, чтобы все, описанное мной, заработало, не нужно ничего до устанавливать, не нужно писать скрипты, конфиги и прочие дополнения: все эти средства работают абсолютно одинаково в большинстве современных интерпретаторах bash, работающих на любой UNIX системе.
Мой педагогический опыт говорит о том, что практика — лучший способ понять, полюбить и привыкнуть к новым функциям, поэтому я не стал рисовать голые таблицы, а сделал повествование, и рекомендую в процессе чтения статьи открыть консоль и пробовать все, чем еще не пользовались, руками.

Читать