2009-02-28

Kernel Mode Linux

Японцы работают:
Почти то, что я хотел: программа работает в kernel mode. Теперь это надо скрестить с верификатором, например, взятым из google native client.

2009-02-23

Советская армия

Я только сейчас заметил, что маятник уже качнулся обратно и часть молодёжи считает, что при социализме всё было хорошо и правильно, а, вероятно, враги всё оболгали. То же и с армией. Тогда, рискуя прослыть врагом, расскажу маленькую историю.
Уже не помню точно в каком году, где-то в конце 80х, призвал меня военкомат на военные учебные сборы на два месяца. Я какого-то хрена пошёл в военкомат, а они взяли и призвали на сборы. Случилось это прямо перед новым годом и меня заставили ещё кучу повесток разнести. Как я потом понял, цель этих сборов была вписать мне в военный билет ещё одну специальность и уже с ней призвать на два года в армию. Но речь не об этом.
Короче, приехали мы в часть "учиться". И должны мы были изучать станцию разработки 50х годов. А военкомат не оформил допуска. В результате нам велели изучать станцию разработки 40х (!!!). Посадили в класс. Принесли чемодан с документацией. Документация была на "синьках". Кто не знает, это такая технология получения бумажных копий, которая была до ксероксов. Она как-то химически делалась, очень бледные бумажки сине-коричневые. Так вот, столько лет синька не живёт! Мы разворачивали листы почти однотонной бумаги, на которых остались лишь следы былых схем и надписей. Ничего не разобрать.
Мы спросили есть ли станция в части. Оказалось что нет, списали последнюю. Потом открыли какую-то комнату, где должна была стоять учебная станция. Панели с дырками из под приборов. Лампочки без лампочек. Паук внутри. Склеп, а не станция.
Приехала комиссия. Нам строго запретили говорить, что у нас нет допуска. Какая-то шишка из приехавших нам объясняла, на что мы должны особенно обратить внимание при полевых учениях. "Вы уже выезжали?" - спросил он нас? "Нет ещё" - кто-то ответил. На следующее утро нас собрали и устроили нам разнос за "длинный язык". Была зима и нас отправили строем куда-то в лес "помёрзнуть". Мы там покидались снежками, извалялись в снегу, что было очень приятно после недель сидения взаперти, на дороге обратно от нас валил пар. "Учения" нам понравились, но больше нас не посылали.
Собственно, ничего интересного там не было. С армией всегда было так: как соприкаснёшься, кругом обман, фальшивка, показуха, идиотизм, ничего не работает. Такого бардака я в гражданском мире не видел. И ещё жрать было нечего. Мы тогда были "партизаны", т.е. офицеры в запасе на учёбе. Никто нас не трогал, да мы уже и взрослые были. Привозили себе пожрать, чай попить, сидели вечером в казарме на матрасах, болтали чай пили. Ей богу, чай. Хоть и вода была непитьевая. Она сырая пахла сероводородом.
Но специальность в военбилет таки вписали. "Научили". Я после зарёкся ходить в военкомат да и в экспедицию свалил, так что призвать им меня не удалось. А то бы ещё пару лет в караулы ходил, охранял бы опечатанные секреты, которые часто вместо печати, если присмотреться, содержали отпечаток 20-копеечной монеты.

2009-02-13

Unix Time = 1234567890

Для желающих отпраздновать наступление 1234567890 unix time, я сделал счётчик: http://tolkov.com/blog/files/unixtime.html

2009-02-12

Кот в обезьяннике

Дарвину посвящается.
Некоторые не верят в эволюцию, поскольку она оскорбляет их чувства. Ежедневный взгляд в зеркало эти чувства не оскорбляет. "Ничего общего!" - говорит человек, поправляет галстук, садится в машину и едет на работу. "Я думаю, что нам надо сделать так...", говорит он на совещании. "Почему?" - интересуется будущий исполнитель. "Я так считаю." - отвечает он. "Но зачем?" -занудствует подчинённый. "Мне кажется, что это очевидно." - говорит своё веское слово начальник. Такая серьёзная человеческая деятельность, интеллектуальная, просто пропасть разделяет нас от обезьян. На самом деле, человек ничего не думал и тем более ничего не считал. Он не умеет. Он сказал то, что ему казалось. Т.е. выплыло на вершину сознания по необъяснимым внутренним причинам. Скорее всего в сознании осталось, что так делать правильно. Либо так сделал конкурент и нам тоже надо, либо так учили в вузе, либо так делали в том месте, где начальник начинал свой трудовой путь. Штампы "так никто не делает", "все так делают" - типичны для примитивных обществ и высших животных, ибо позволяют не совершать грубых ошибок. Таков простой ответ на вопрос "Почему именно так?". Если мы спросим "Зачем ему это надо?", исходя, например, из соображения, что некоторые вещи можно и лучше не делать совсем, то ответ будет в инстинктивном поведении. Человеку надо для карьеры - это типичный человеческий ответ. "А зачем карьера?" - при таком вопросе посмотрят на спросившего странно. Ибо мы вторглись в область инстинктов. Известен "основной инстинкт". Два инстинкта. Пожрать и размножиться. Это понятно. Но у человека, как общественного (а, точнее, стадно-стайного животного) есть ещё третий: самоутверждение. Опять таки, человеческий и потому неточный термин. Точнее было бы что-то типа рейтингования. Обратите внимание - почти вся основная деятельность человека подчинена этому. Почти все развлечения связаны с соревнованием, т.е. с рейтингом. Смысл большей части всех художественных произведений можно описать так: "Сначала все думали что у героя низкий рейтинг, а у него оказался ого-го какой". Стайные инстинкты заставляют становится вожаком, становится партнёршей вожака, правой рукой вожака, и прочее и прочее. Это ты так пишешь от собственного низкого рейтинга - возразит мне читатель, обидевшись, и тем самым подтвердит сказанное (независимо от истинности утверждения о моём рейтинге!). Так вот, пока мы никуда не ушли от животных. Большая часть людей вообще не мыслят, по моему мнению, а лишь повторяют слышанное. Повседневная деятельность определяется этими тремя инстинктами и простыми заимствованными паттернами. Проанализируйте собственное поведение. Зачем я это сказал, сделал, почему я обиделся, почему впал в депрессию. Сделал - что бы показать, чтобы доказать, что я достоин более высокой оценки, а обиделся - потому, что меня оценили ниже, чем я стОю. Дисбаланс внешней оценки и внутренней вызывает действия, как осознанные, так и неосознанные. И наконец, четвертый инстинкт - любопытство и чувство прекрасного. Мы получаем удовольствие от пейзажа, от музыки, хотя, кажется, никакой пользы в этом нет ни для само-взаимо-оценки, ни для размножения. И от любопытства - одни сплошные проблемы. А задевает и тащит - что там дальше, на следующей странице, за горизонтом? У животных любопытство тоже есть! Пустите себе в дом молодого соседского кота! Он пока всё не обнюхает, и все комнаты не обойдёт, даже едой не интересуется! Я думаю, это программа на будущее. Надо интересоваться, чтобы развиваться, чтобы переходить в новые места. Этот инстинкт работает на выживание не столько особи, сколько вида. Коты, кстати, индивидуалисты. Они не охотятся стаями, они, наоборот, делят территорию. Интересна, какова бы была цивилизация, произошедшая от котов? Я иногда чувствую себя котом. В том смысле, что с детства не люблю игры в рейтинги, и люблю строгое авторство работы, готов защищать свой код, свою территорию, не люблю когда в нём оставляют следы другие. Потому на работе чувствую себя котом в обезьяннике. Стояли звери около двери... Это про меня. Но я отвлёкся. Человек - настолько животное, что странно, как в этом можно сомневаться. Единственный непонятный момент состоит в том, почему он всё-таки не совсем животное. У человека есть язык, позволяющий передавать знания и навыки, они накапливаются, переживают своих авторов и последующих носителей. Цивилизация формирует новый уровень всепланетного многоклеточного организма, который имеет другую природу, другую энергетику, и значительно более долгую жизнь. Почему он возник? Выскажу догадку - из за конкуренции с себе подобными. Обычно животные выживают в борьбе с природой и другими видами. А человек, как супер-хищник, десятки тысяч лет боролся с другими такими-же. Поэтому его эволюция не остановилась, а пошла дальше и зашла значительно дальше, чем этого требовал животный образ жизни. Когда-нибудь человек изобретёт интеллект искусственный, и он, вырвавшись в космос, расширит уже свои, не наши, возможности. Надеюсь, что он будет обладать любопытством, но не уверен, насколько ему нужно наше непрерывное рейтингование. Но пока этого нет, можно спокойно и уверенно считать своё вечернее сидение перед телевизором вершиной эволюции, либо "венцом творения", что уж совсем сомнительно, ибо эволюция, в отличие от бога, не разумна. Так, наконец, о Дарвине. Предлагаю выпить по этому поводу хорошего вина - парадоксального напитка неизвестного животным, но возвращающего нас в животный мир! Споры о его книге делят человечество на тех, кто уверен и тех, кому интересно, тех, кого уважаю и тех, кого ненавижу. За него!

2009-02-11

И там аварии...

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

2009-02-02

Google как русский орфографический словарь...

... уже не работает и ещё не работает. Уже не работает, поскольку опечаток проиндексировано столько, что найдутся все варианты, а счётчика количества найденого нет (кстати, нет поскольку распределённоая гугловская база не знает столько в ней записей). А ещё не работает, поскольку словарь не встроен в систему индексации, а надо бы. Первый раз я прокололся с "липосакцией", которая находится и в неправильных вариантах. А вот ещё замечательное слово, выбирай что нравится: http://www.google.com/search?q=помошник http://www.google.com/search?q=помошьник http://www.google.com/search?q=помощник http://www.google.com/search?q=помощьник И наконец шедевр: http://www.google.com/search?q=помощьник+рукаводителя Или это по украински?

2009-01-25

Липосакция

Все новости уже отписались от том, что Стив Балмер объявил о сокращениях. Я, честно говоря, ожидал другого. У многих было мнение, что Микрософт большой и непотопляемый, и я ожидал, что руководство попробует поиграть на этом, тем более, что это выглядит незначительным в финансовом отношении (особенно если сравнить с попыткой купить Яху). А объявление о сокращениях, такое прямолинейное ("уволим 5000" - слишком административно и кругло, явно с потолка взятая цифра), проделало брешь в этом непотопляемом образе, заявив, что мы тоже тонем, будем сбрасывать народ за борт. Немудрено, что акции упали.
Сброс лишнего веса - вещь неплохая, но это желательно делать постоянными упражнениями, а не разовой операцией. Известно, что вес быстро набирается снова. Да и шрамы остаются.

2009-01-21

Буквы на холсте

Иногда на канвасе нужен текст. Хотя бы оси на графике подписать. Стандарт ещё никто не поддерживает. В Firefox есть что-то своё, что больше нигде не работает. Я попробовал наложить сверху div c абсолютными координатами, геморойно и плохо. Как покрутишь zoom, так всё разъезжается. Хотелось бы, чтобы прямо внутри канваса работало. Можно сделать bitmap с буквами и его копировать кусочками, но надо делать bitmap прозрачный, с антиалиасингом и alpha-channel. Проще всего сделать векторный фонт, воспользовавшись старыми программами для перьевых графопостроителей. Я уже сел было делать, как нашёл готовый. Вот, здесь пример, что у меня получилось.
Оказалось, что в бете IE8 нет канваса. Позор. IE8 идёт в баню.

2009-01-20

Гурация

Народ восторженно радуется новому президенту. Но мы люди опытные. Мы перестройку пережили! Мы заранее ничему радоваться не будем!!! :-(

2009-01-19

Виста номер 7

Решил сегодня попробовать посмотреть на W7. Ставить на рабочую машину не хочется, ставить второй операционкой - будут проблемы с доменом. Ставить на домашнюю - совсем не хочется. Нашёл старый ноут со сдохшей батареей. Решил попробовать. Первые впечатления:
  • Инсталляция прошла вполне нормально. Легко поменять партиции при установке, а потом всё поставить. Никаких лишних вопросов. Удобно.
  • Ноут не новый, Dell D600. Система не нашла драйверов ни для проводной сети, ни для беспроводной, ни для для звуковой карточки. Что за ёклмн! Драйвера от Висты должны подходить к W7. На сайте Dell ничего нет. И XP и Ubuntu на этот ноут ставятся без проблем.
  • Разрешение экрана поставилось по умолчанию 1024x768, хотя родное будет где-то 1400x, но поставилось с clear-type, что смотрелось очень мерзко. Поменял без проблем, как только нашёл где. Непонятно, почему сразу не поставить нормальное.
  • UI выглядит живым, нет "тормозного" вистовского ощущения. Может потому, что аэро не запустилось.
  • Приятно пустой экран. Ни лишних кнопок, ни лишних панелей. Забыл посмотреть, можно ли, наконец, убрать с экрана корзину. (Знаю, что через реестр можно.)
  • Какие-то "Libraries" вместо некоторых папок. Не понял чем libraries отличаются от folders.
  • Цвета те же, сине-зелёные переливы. С ходу не нашёл, как выключить фоновую картинку. Можно поменять, но выключить на ровный цвет - не нашёл. Проглядел, наверное, кнопку.
  • Теперь в task manager есть сервисы. Но размер занимаемой ими памяти посмотреть нельзя.
  • В management console есть некая "performance". Интересная информация, но почему так далеко?
  • Проверить на совместимость программ не смог из за отсутствия сети. Может завтра, перетащу через usb-ключ, хотя без сети - бессмысленно.
Короче, я понял: новые винды - это квест! Надо пройти по лабиринту и найти, где спрятаны привычные установки. После чего игрока переводят на новый уровень и он должен найти драйверы. Третий уровень - самый сложный: надо найти ключ.

2009-01-14

HyperSpace, система instant-off.

Phoenix Technologies HyperSpace - одна из обещаных "instant-on" систем для ноутбуков. Я её сегодня скачал и попробовал на стареньком ноутбуке. Не впечатлило совершенно. Долго ставилось, с тремя или четыремя перезагрузками и крашем инсталлера посередине. Создало дополнительную 3-х гиговую партицию на диске и в неё всё записало. В результате получилось что-то не очень понятное с точки зрения загрузчика. Я думал будет меню с выбором. По умолчанию грузит себя, предлагает нажать кнопку для перезагрузки в "windows". Hyperspace грузится не мгновенно, но быстрее windows. Секунд за десять. UI несколько странный и жутко медленный. Видеоплейера нет, есть только браузер, который почему-то открывается не на полный экран, а на часть его, с большим отступом, причём максимизации окна нет, хотя F12 в FireFox работает. Слева часть экрана занимает бесполезное меню. Но главное, такой скорости прокрутки экрана я не видел давненько, со времён Доса. Фактически экран перерисовывается в новом состоянии, а не прокручивается. Тормоза жуткие. Это не instant-on. Это instant-off. Сделано из Линукса, с минимумом драйверов, потому и акселератор графики не работает. Но за это предлагается платить то ли 40 то ли 60 баксов! Нет, совсем не впечатляет. Завтра сделаю uninstall. Тут, кстати, есть ревью.

2009-01-12

Нет OS для нетбука.

Читаю по утрам Engadget черех их RSS. Занятно для интересующихся современным hi-tech-ком, т.е. игрушками. В частности, почитал про VAIO-P и подумал, что надо посмотреть на Windows7. Хотя windows, любая, тяжела для подобной машинки. Нужно что-то попроще, помгновеннее. Я сразу даже не заметил режима instant-on. Оказывается в компьютер втроен некий софт, который позволяет вызвать кнопкой сразу после включения соневское меню с плейером или браузером, причём мгновенно, причём это работает и после загрузки Windows. Вот это, наверное, самое интересное! И как же это работает? Думаю, что одна из самых нужных фич для netos должна называться instant-on. В прошлом году многие наобещали подобного, но пока ничего не слышно. P.S. Кстати, VAIO-P - интересная железка, по пропорциям похожа на мой старый Pictire Book, но существенно мощнее и коммуникабельнее (WiFi, BT, 3G, GPS).

2009-01-06

Как это было. Рождественская сказка.

Две тысячи лет назад (а может и тысячу, как думают некоторые) та часть человечества, которая в результате породила европейскую цивилизацию, была относительно компактной и немногочисленной по современным меркам. Да, далёкие племена тоже были, но были либо позже побеждены или ассимилировали, так, что события их культуры в истории не сохранились. А сохраниться за тысячелетия и до сих пор волновать умы могло лишь нечто очень серьёзное, например крах единого мира и начало тысячелетней вражды народов и религий.
Короче, жило было такое небольшое царство, лидировало в тогдашнем миропорядке, состояло в некотором родстве с соседними правителями. Правила в нём старая уважаемая царская династия, настолько великая и властная, что признавалась всеми равной богам, и, цари-императоры её, собственно, так богами и величались. Простая и понятная религия - вера в государя на земле. И был у них крест - родовой символ. Но как это нередко бывает с династиями, вдруг пришёл ей конец. Нет прямого наследника. Кто же будет богом? Возникла обычная в этих сферах династическая склока. Наверняка нашёлся традиционный в подобных склоках старший брат усопшего властителя со своими сыновьями. Но это совсем не то. Нужен прямой сын бога. 
И сын нашёлся. Но несколько необычный. Видите ли, какое дело. Было в древнем мире такое право первой ночи. До средних веков сохранилось. Бог имел привилегию лишить девушку невинности. Это не считалось грехом или изменой. Бог всё-таки. Иногда происходило зачатие. Непорочное.
Наверняка подобное происхождение кандидата на престол породило немало споров. Сын, но как бы не вполне официальный. Наверняка в молодости он был отослан путешествовать в далёкие края, по прочим европейским родственникам. Кои, в принципе, могли рассчитывать на особое к себе отношение в случае победы кандидата, а потому могли и прислать гонцов заявить о своей поддержке. С севера пришли волхвы. (Говорят, правда, что они пришли засвидетельствовать почтение при рождении, но когда именно - вопрос сложный.)
Борьба разгорелась не на шутку. У каждой стороны - свои доводы и своя поддержка. Но как-то получилось, что наш кандидат эти выборы выиграл и сел таки на трон своего символа, получив при этом крещении своё второе родовое имя - христ, то есть крест. Будучи неординарным человеком (иначе не выиграл бы), проводил реформы, выгнал торговцев из храмов, создал новый, реформированный, вариант своей религии, завёл учеников. Которым рассказывал, в числе прочего, всякие истории о путешествиях в удивительные северные страны, где зимой можно ходить по воде "яко по суху", где умеют с помощью огня и пары горшков "превращать воду в вино", и где пекут такие огромные караваи хлеба, что семью хлебами можно накормить всех гостей.
Но проигравшие не дремали. Наверняка, всех недовольных реформами удалось объединить, заручиться поддержкой других зарубежных властителей, недовольных, что кто-то получил привилегии, поддержав "самозванца". Всё, что им надо было - уничтожить оппонента физически. Нет человека - нет проблемы. Что и удалось в конце концов. Сын божий был пойман и публично казнен. 
Мира миру это не принесло. Мир поделился. И религии поделились. И языки смешались. Одни признали христа богом, другие - нет. Те, из соседей, кто поддержал христа и заставил свои народы признать его богом, объявили что он был последним богом. Династия кончилась. Были бог отец и бог сын. Никакого другого бога нет и не будет. Кто-то пытался освобождать "гроб господень" и мстить за казнь. Потом, с ходом времени, новые проблемы заслонили старые споры.
Но всё равно, столетия проходят, а загадочная и уже непонятная история продолжает волновать умы. И умы эти плодят сказку за сказкой, наслаивая их на реальные события, так что многие уже и не верят, что реальные события действительно были.

2009-01-05

Итоги прошедшего года

Снова пришла пора подвести очередные традиционные итоги года в жанре персонального performance review. В целом год был скорее хорошим, чем плохим, хотя я так и не сделал никаких решительных шагов. Но не будем нарушать традиционный порядок. Первый раз в жизни: 1. Что-то ничего такого сразу не припоминаю. Это в первый раз. 2. Кстати, бросил считать холестерин. Наконец-то: 1. Получил GC. Уже почти собрался судиться, как вдруг наверху издали указ об ограничении времени, которое может занимать проверка благонадёжности. Раньше они искали компромат пока не найдут, и отсутствие оного, похоже, означало дальнейший поиск. А теперь сказали, что если за полгода не найдут, то можно давать GC, а если потом что-то найдут, то можно и с GC расстрелять. Субъективное ощущение таково, что отменили крепостное право. Теперь я работаю на того же самого барина, но уже как свободный человек. 2. Обкатал GC, съездив в Россию. Я уже писал об этом. Дома. Всё хорошо. Дети учатся, жена работает, дом стоит. Работа. 1. Деградирую... Работа в Компании привела к появлению аллергии на код. Стоит только открыть окно с кодом, как всё начинает болеть и чесаться. Пытаюсь немного писать что-то дома, чтобы совсем не потерять квалификацию. А дома я пишу совсем по-другому, как раньше, и это мне нравится! 2. Как-то вдруг оказалось, что абсолютно все новые продукты нашей Компании можно совершенно спокойно игнорировать. Даже удивительно. Откроешь что-нибудь новое, как-то всё или криво, или неудобно, или не нужно. Обычно оказывается что есть более приятные аналоги, часто открытые. Либо старая версия продукта бъёт новый по удобству и достаточна по функциональности. Операционкой пользуюсь пока, да, но старенькой, и только в силу привычки. И это остался единственный продукт нашей Компании на домашней машине! (Кстати, это плохо. Уже пара магазинов накрылась, про которые я однажды подумал, что покупать там стало нечего. Как бы Компания не накрылась. Слухи ходят разные.) Поездки года. Почти забытая поездка на Мауи, затем поездка в Россию, и вынужденное автомобильное путешествие из Сан-Франциско до Сиэтла, которое ещё более неожиданно понравилось. Кстати, оказалось, что во многих гостинницах - бесплатный WiFi, а там где его нет, ловится пиццерия через дорогу. Пару лет назад этого ещё не было. Неожиданность года. Обама, таки да, победил. Уж не знаю, приятная неожиданность или нет, поживём - увидим, но наблюдая по телевизору предвыборные игры, я немножко болел за него. Покупка года. HDTV 40-дюймовый телевизор и Blue-ray плеер. Давно собирался проапгрейдить телевизор, за несколько лет цены на них упали до приемлемого уровня. "Planet Earth" в high definition смотрится просто замечательно! Забавно, но утверждается, что внутри Sony-ского телевизора Linux. И к телевизору ещё даётся блок для подключения к интернету, YouTube смотреть, там тоже Linux. И в Blue Ray плеере, полагаю, тоже. Современная техника уже подключается к интернету просто вся. 8 разъёмов сетевого коммутатора не хватает для домашней сети! Надо 16-канальный покупать. Мелочь года. Netbooks - я купил себе MSI, а сын купил себе Acer. Очень недурственные маленькие компьютеры. И недорого. Пожелание года. Во первых, будьте здоровы. Во вторых, будьте свободны. Остальное - суета.

2009-01-01

Yellowstone

Кальдеру потряхивает последнее время. Я сделал timeline, показывающий толчки более 1 балла за последние 7 дней. Для просмотра нужен браузер поддерживающий canvas, т.е. Firefox, Safari или Chrome.

2008-12-29

Сам писи!

Микрософт завесил все станции метро (BART) в Сан-Франциско вот такой рекламой. Которая, как обычно, является "достойным ответом" на придуманное другими. Рекламная серия предлагает мне сказать "I'm a PC". Какой я вам писи! И не мак, и не грамофон, и не тостер! I'm human. А за PC ответишь...

2008-12-24

SFO

Только что приехали из Сан-Франциско. Небольшая трехдневная поездка превратилась в недельное приключение. Сама поездка была небезынтересной. Три дня впечатлений. Но когда мы, уставшие и довольные, приехали в аэропорт, оказалось, что обратный рейс был отменён по случаю непогоды в Сиэтле. Нам дали талон в гостиницу и перенесли рейс на "завтра", что поначалу вызвало у нас даже некоторый интерес: ещё один день, задаром. Но когда его отменили снова и перенесли рейс уже на четверг, т.е. на день после рождественских праздников, причём, по прогнозам это могло оказаться не последним переносом рейса, это вызвало у нас просто шок. К тому же бесплатных гостиниц больше не предлагалось. Ещё оказалось, что поезда тоже не ходят, автобусы не ходят, и вообще ничего никуда не ходит, короче, "делайте, что хотите". А хотели мы домой. Дома выпал снег! В кои веки! И мы сомневались, сомневались, но решились поехать сами! Прогноз погоды обещал один день без осадков, что давало шанс удачно проехать. Взяли машину, купили цепи на колёса, и поехали. Оказалось даже чуть легче, чем я ожидал. Местность обитаемая, множество гостинниц и заправок. Цепи пришлось надеть дважды. На перевале после озера Шаста и около Портланда. У последнего был самый противный участок с пробкой, в которой мы ползли очень долго. Пробка была из за нечищенной и заледеневшей дороги. Но в целом дорога была довольно хорошая. Всего ехали два дня, проехали порядка 800 миль за 16 часов, из них часа 3 потеряли в Портланде. Такое вот приключение. Мне даже понравилось. А дома снег! Никогда не видел столько снега в этих краях. Жаль скоро растает. P.S. SFO - международный код аэропорта С-Ф.

2008-12-12

Google chrome & native client

Ко всеобщему удивлению, Chome вышел из беты. Все были готовы, что бета будет длиться вечно, как у gmail. Но, понятно, что компо-продАвцы не хотят пред-устанавливать бету на enterprise, а потому пришлось срочно зарелизить. Хотя качество вполне достойно первой версии. RSS, autofill, extensions (включая adblock), native linux and mac versions обещаны. Не слишком заметно произошло появление ещё одного любопытного проекта: native client. Как я понял из анонса, это addon, дающий возможность запускать native code, т.е. программу в машинных кодах из браузера. Все сразу закричали ActiveX и были в корне неправы. В данном случае native code не сможет сделать ничего плохого, в отличие от Active-X, который может всё, из за предварительной верификации кода. Статический анализ кода - вещь популярная (см. например Midori), но готовых решений я пока не видел. Предполагается, что код не будет иметь возможности обращаться к платформе, но сможет работать с предоставленными ему интерфейсами браузера. Поэтому он будет независим от операционной системы, а зависим только от вида процессора. С точки зрения Web-а, это примерно как адобовский flash, только, возможно, быстрее (хотя сравнимо, я полагаю, с будущей 10 версией, если там LLVM). Но реальный смысл появляется, если рассмотреть браузер как платформу. Если запустить браузер поверх некоего мини-ядра, получается полная платформа, которая может запускать приложения, причём работающие с нормальной скоростью. Вот вам и Google OS. Второй смысл этой штуки - это серверные приложение в "облаке". Сейчас у них поддерживаются только Python и Ruby, а с этой штукой добавляется куча нормальных компилируемых языков. Изолированный код легко перемещать и копировать в облаке. Почему мне всё это понравилось? Во первых, потому, что я всегда считал, что модель безопасности должна исходить из ограничения того, что может сделать компонент кода, а не абстрактного "юзера". Я доверяю себе, как "юзеру", но я не доверяю конкретному компоненту кода. А сейчас код, откуда бы он не появился, автоматически может сделать всё, что может сделать "юзер". Во вторых, это может привести к появлению бинарного выполняемого формата, который имеет чётко описанный внешний интерфейс, и в то же время независим от операционной системы. Что давно, уже лет двадцать, ждёт всё прогрессивное человечество. По поводу статического анализа, это непросто в современной архитектуре, где данные и программы перемешаны в памяти. В байт-коде это значительно проще, но хорошие оптимизирующие компиляторы байт-кода, во первых сложны, во вторых, медленны и не защищены от ошибок. Многие, в результате, предпочитают проверять сгенерированный код, особенно если в него добавить некоторые подсказки, (интересующиеся могут погуглить "typed assembler"). Анализатор дизассемблирует код и проверяет все инструкции восстанавливая логику программы, проверяя типы всех операндов, допустимые смещения и т.д. Любой код, который может сделать что-то не то, не будет допущен до выполнения. А сделать можно многое, например, изменить адрес возврата из стека, что выглядит в точности как целочисленное присваивание локальной переменной. Анализатор должен определить не выполняя программы, что по этому смещению нет переменной, а расположен адрес возврата. И многое другое.