Pull to refresh
196
0
Михаил Бахтерев @mikhanoid

ИММ УрО РАН

Send message

Таблетка от пингвиньего жара своими руками

Reading time12 min
Views26K
Стал я тут недавно 'счастливым' обладателем нетбука на базе Atom N270. Windows XP, естественно для меня, был немедленно выкинут с жёсткого диска и заменён Linux'ом. И всё было хорошо… где-то минут 15, пока процессор (вообще, конечно, все вам скажут, что не процессор, а чипсет, но всякие тесты, вроде кручения бесконечных пустых циклов в bash показали, что именно процессор) не стал чрезмерно горячим в процессе установки всяких разных пакетов (я вообще не понимаю, откуда Intel взяла оценку для TDP N270 в 2.5Вт).

Другая ситуация. У моего знакомого довольно пожилой ноутбук ASUS с достаточно странными настройками ACPI, в таблицах которого записано, что включать throttling нужно при температуре системы в 89 градусов Цельсия, а отрубать систему от критического перегрева при температуре в 81 градус.

Эмс… Вы не сочтите это всё антипиаром ASUS и Intel, ибо (я уверен) на других ноут(нет)буках с другими x86-процессорами вполне появляются схожие проблемы, и этот пост о том, как их решать, а не о том, какие праАативные флагманы IT… И вообще, я фанат ARM'ов… Так что для меня, что Intel, что AMD — одинаковое x86-зло… Но просто факт остаётся фактом. В некоторых старых моделях ноутбуков от ASUS кривые таблицы ACPI, а Atom'ы греются.

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

Проблема только в том, что стандартные рецепты манипулирования только лишь power-уровнями процессора в Linux (при помощи подсистемы cpufreq), которые раздаются на всех форумах направо и налево, недостаточно эффективны. Тот же Atom ощутимо греется находясь и в самом 'экономном' режиме, а моему знакомому в работе периодически нужна высокая производительность процессора, однако не ценой отключения по критической температуре. И при этом сброс процессора его ноутбука в 'экономный' режим при повышении температуры от перегрева не спасал.

В общем, проблемы надо как-то решать. Собственно вот, где-то на троечку с плюсом их решить получилось, решение описываю ниже с некоторыми подробностями, о которых редко пишут на user-форумах Linux (и вообще, я даже и сам не понял, откуда я всё это решение раздобыл :).

Читать дальше →
Total votes 122: ↑100 and ↓22+78
Comments55

К вопросу о борьбе со списыванием

Reading time3 min
Views2.3K
Я так понимаю, тут есть преподаватели, ведущие практики всевозможные. Вот, делюсь с ними (выставляю на обсуждение) педагогической мыслью :) Все мы знаем, как сложно победить тягу студента к списыванию и копированию различных решений из интернета (кстати, это совсем даже не плохо — в повседневной практике, например, программирования копипаст является полезным инструментом, но он должен быть разумным). Ниже описан способ хоть какого-то противодействия бездумному копипасту при помощи систем контроля версий.

Читать дальше →
Total votes 74: ↑51 and ↓23+28
Comments146

К вопросу об идентификаторах

Reading time4 min
Views633
Разрабатываем мы язык тут потихоньку. И кроме огромного количества синтаксических и семантических вопросов приходится решать и вопросы интерфейсные (так их можно назвать): насколько секси выглядит код, насколько быстро человек врубается в написанное и так далее. Так вот один из таких вопросов — это вопрос о том, из каких символов позволить составлять программисту идентификаторы, и делать ли их case sensitive. Вопрос нетривиальный, и вот почему:
Читать дальше →
Total votes 8: ↑4 and ↓40
Comments10

О хабрарейтингах

Reading time1 min
Views423
Может быть, НЛО заметит и прочитает?.. и воплотит? Так вот, есть рейтинги. И люди ставят плюсы и минусы другим людям. Но согласитесь, рейтинг (-2 = +1024 -1026) совсем отличается от рейтинга (-2 = +0 -2). Тык вот, в воспитательных целях и для повышения качества самооценки на основе хабрарейтинга, неплохо было бы показывать не просто разницу в голосах, но ещё и количества +ов и -ов.
Total votes 73: ↑37 and ↓36+1
Comments28

Одна модель заработка на свободной и открытой информации

Reading time5 min
Views763
В тексте рассматривается возможный положительный ответ на вопрос о том, можно ли напрямую заработать на создании новых данных (в широком смысле: музыка, книги, ПО), а не при помощи donations, концертов, техподдержки и прочих сопутствующих услуг. При этом модель строится в условиях авторского бесправия, то есть, от модели требуется работоспособность в условиях, когда автор не защищён никакими репрессивными механизмами со стороны государства.

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

Читать дальше →
Total votes 9: ↑6 and ↓3+3
Comments41

Удивительная страна Oz, или как принять данные при помощи send

Reading time15 min
Views1.9K
Довольно давно, собирая информацию по средствам параллельного программирования, наткнулся я на элегантный (другими словами сложно описать ощущения) язык Oz http://www.mozart-oz.org. Язык тогда показался мне достойным того, чтобы представить его Habraсообществу. И вот, у меня появилось время и причины это сделать.

Oz — мультипарадигменный язык программирования. Набор базовых абстракций в языке необычный и позволяет, например, написать отправляющую информацию процедуру send так, что при её помощи можно будет так же и получать данные. И без всякого подвоха вроде:

send(socket; buffer; flag) = (if (flag == RECV) (recv(socket; buffer)) or (realsend(socket; buffer))).

Речь идёт именно о том, что отправка и получение данных осуществляются одной и той же последовательностью операций виртуальной машины Oz. Естественно, достигается это за счёт особых абстракций для работы с данными и с параллельными процессами. Описанию этих абстракций и посвящён этот текст, потому как на мой взгляд — они неплохо позволяют почувствовать особенности Oz. Конечно, Oz больше, чем изложенное ниже, но, как мне кажется, тайна хитрого send — материал подходящий для первого знакомства с этим языком и для получения от него удовольствия.

Итак...
Total votes 40: ↑38 and ↓2+36
Comments14

действительно ли Linux не готов к desktopу?

Reading time6 min
Views2.4K
Недавно на OSNews появилась ссылка на linuxfonts.narod.ru/why.linux.is.not.ready.for.the.desktop.html. И на OSNews она отрекомендована не как просто holywarный флейм, а как обоснованный список причин, почему Linux не готов к использованию на desktopах. Пошёл я читать, значит. И первая мысль, которая возникла: феерическая (ну, вы сами знаете, что) игра фактами, по большей части не имеющая отношения к реальности. Автор запретил материал копировать, поэтому буду по пунктам его бить далее.

Читать дальше →
Total votes 68: ↑45 and ↓23+22
Comments362

вот почему мы (в основном) такие негативщики?

Reading time1 min
Views446
Вопрос вызван к жизни вот этим комментарием habrahabr.ru/blogs/popular_science/59885/#comment_1628726. Проблема в том, что излишне часто мне приходится сталкиваться с таким вот отношением к жизни и научно-техническому процессу. Почему русскому учёному/инженеру проще поплеваться на wikipedia вместо того, чтобы пойти да исправить информацию? И, ведь, не только с wikipedia так. Многие нетривиальные начинания встречают яростную интеллектуальную атаку со стороны специалистов. Просто чудовищные интеллектуальные силы тратятся отечественным научно-техническим сообществом на то, чтобы доказать, почему нечто работать не будет, а не на то, чтобы придумать, как идею воплотить в жизнь. Ну… Или хотя бы подкорректировать wikipedia. Так почему мы такие?
Total votes 30: ↑22 and ↓8+14
Comments14

Pogoplug: подключаем жёсткий диск к интернету

Reading time1 min
Views2.2K
Наткнулся вот на занимательный девайс — http://www.pogoplug.com/. Умеет он только одно: подключать ваш USB HD к интернету. А дальше через webсервис pogoplugа (который, естественно, снабжён всяким API) вы можете получать доступ к вашим файлам через http, вне зависимости от используемой OS. Понятно, что узким местом во всей этой архитектуре являются 1. Безопасность. 2. pogoplugжный webсервер.

C 2. нам обещают бороться тем, что если серверы вдруг навсегда отпадут по какой-то причине, то исходники pogoplug будут опубликованы (даже указано, где именно — на sf.net)

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

Вобщем, очередной шаг навстречу cloudcomputingу сделан: человека всё меньше привязывает к конкретному компьютеру, и всё больше к непонятно где обитающим сервисам в internetе. Только вот весьма непонятно и интересно: а что будет, если в pogoplug воткнуть usbперчатки-грелки?
Total votes 6: ↑4 and ↓2+2
Comments5

использование очень длинных ассиметричных ключей в ssh

Reading time2 min
Views1.7K
Привет, $username. Если вы примерно такой же криптоманьяк, что и я, то наверняка не ограничитесь регенерацией /etc/ssh/moduli, и вам захочется большего. Например, использовать для авторизации dsa-ключи длиннее 1024iB. Но проблема в том, что ssh-keygen из пакета OpenSSH, которым вооружено большинство UNIX'оидов, не хочет генерировать такие ключи. Причина такого поведения непонятна, man'ы отыслают на документ FIPS 186-2, в котором ничего толком не сказано, и ссылок на толковые объяснение сего ограничения нет. Поэтому, причин не попробовать понаступать на всякие криптограбли с длинными dsa-ключами нет. Осталось только сгенерировать такой ключ. Сделать это просто, но если не хочется тратить время на всякие ковырялки, то с методом можно ознакомиться под hubracut'ом

Читать дальше →
Total votes 8: ↑8 and ↓0+8
Comments17

time management и bash

Reading time1 min
Views3K
Иногда весьма мелкие мелочи дают весьма ощутимый эффект. Настолько ощутимые, что ощущения заставили установить Firefox и поделится этим с общественностью. С недавних пор начал использовать такой PS1:

PS1='\D{%H.%M} \u@\h \w\n\$ '

Или с раскраской:

PS1='\[\033[02;34m\]\D{%H.%M} \u@\h\[\033[00m\] \w\n\$ '

В итоге, мозг начинает получать информацию о том, сколько времени и на какую именно активность тратится в ходе работы. Что очень помогает (imho, даже на чисто подсознательном уровне) более эффективно распределять своё время. И, что ценно при таком подходе к делу, отслеживание времени не отвлекает от производства. В отличии от специализированных решений в виде красивого web-2.0 или очаровательного GUI, где нужно своими же руками осознанно следить за собой. Кроме того, можно сразу видеть много строчек с информацией своей активности и вести журнал сессии без проблем. Вобщем вот.

P.S. Это, кстати, одна из тех фишечек, которая возможна только в command-line интерфейсе. И непонятно, почему сторонники WIMP и CL не соберутся как-нибудь и не выберут из обоих подходов всё самое лучше, и не смешают всё в удобных пропорциях?

P.P.S. Для новичков в bash: PS1 лучше всего задавать в $HOME/.bashrc

habracut с картинкой
Total votes 22: ↑19 and ↓3+16
Comments26

А почему собственно WIMP удобен?

Reading time1 min
Views532
На самом деле это небольшой недостаток Habra'а. Я помню о том, что тут был представлен блог, в котором предлагалось публиковать вопросы к общественности на некоторых условиях, но не помню ни его названия, ни его автора, чтобы блог отыскать… Поэтому, пишу в личный, может быть, кто ссылку даст на то замечательное предложение.

Итак. Вопросы к знатокам пользовательских интерфейсов: почему же так удобен WIMP? Или же он на самом деле не так удобен, потому что люди с радостью пользуются HTML-страницами в качестве интерфейсов к всевозможным приложениям? Почему? Существует ли в природе сравнительный анализ отличный от вечного WIMP vs. Command Line?

Вот. Если наберу достаточно материала по теме обещаю написать статью, как и предлагалось в утерянном мной блоге.

UPD: блог нашёлся.
Total votes 26: ↑18 and ↓8+10
Comments18

небольшое размышлялово на тему интеллектуальной собственности

Reading time1 min
Views620
Вот опять тут вещают, о том, как пираты наносят ущерб, о том, как страдают бедные актёры, актрисы, программисты… Блин. Но если thepiratesbay.org — это реальность, и если копию фильма от туда скачивают 100 000 человек, то что побуждает издателей продавать копии фильма по $29.95? Брали бы, да продавали бы сразу по цене $2995000. Пользователи бы скидывались и выкупали бы право на распространение в своей сети. И на дорогих адвокатов с распространителями бы тратится не пришлось… Но нет… Мозг капиталиста логике не подвластен. Он будет продавать по $29.95 и кричать на каждом углу о том, какие thepiratesbay — коммунисты, и поэтому недостойны жизни на планете Земля.
Total votes 22: ↑5 and ↓17-12
Comments9

Как квантовые физики PageRank считали

Reading time1 min
Views976
А я всегда говорил, что есть связь между теорией алгоритмов и физикой. Вот, первые подтверждения от профессионалов. Группа учёных предложила смотреть на PageRank как на волновую функцию в потенциале, который определяется разностью входящих и исходящих ссылок на страницу. Учитывая это, и применяя простую алгебраическую магию над исходной формулой для PageRank, математики приходят к уравнению типа уравнения Шрёдингера, решением которого является функция PageRank. Человечеству это, кроме осознания удивительных взаимосвязей в природе, даёт ещё и возможность вычислять PageRank (не точно, похоже, а только приблизительно) в три раза быстрее, чем существующим итеративным методом.

Статья доступна здесь: arxiv.org/abs/0807.4325
Читать дальше →
Total votes 84: ↑72 and ↓12+60
Comments39

swfdec plugin для проигрывания flash

Reading time1 min
Views935
Если судить по количеству вопросов о том, как смотреть flash в 64-битном linux, и по тому, что обычно в качестве решения предлагается установить чего-нибудь вроде netscape plugin wrapper, включить поддержку 32-битных приложений в ядре, а так же установить linux32, чтобы использовать flashplayer от Adobe. То можно сделать вывод о том, что 'мужики-то и не знают'.

Читать дальше →
Total votes 6: ↑6 and ↓0+6
Comments12

Вы всё-ещё не любите изобретать велосипеды? Тогда Antec идёт к Вам

Reading time1 min
Views633
Это действительно к вопросу об изобретательстве велосипедов. Казалось бы, что новое можно предложить в области корпусов для персональных компьютеров? Многое перепробовали, даже корпуса совмещённые с мониторами. Однако… Antec таки изобрела очередной довольно интересный велосипед.



Подробности можно почитать и посмотреть здесь:

http://www.ixbt.com/news/hard/index.shtml?10/57/95
Total votes 10: ↑6 and ↓4+2
Comments4

A списки todo действительно работают.

Reading time2 min
Views2.2K
Когда по неким причинам в жизни я стал раздолбаем и несобранной сущностью, то использование списков todo действительно помогло собраться. Спасибо хабралюдям за рекомендацию. Однако, мои todo отличаются от стандартных и описанных ранее, вполне возможно, что описание того, как я их веду поможет разработчикам соответсвующего софта, ну, или другим людям побыстрее найти оптимальную для себя форму их ведения.

Читать дальше →
Total votes 38: ↑35 and ↓3+32
Comments73

Haskell

Reading time1 min
Views1.7K
Вот существует такая категория людей — любители программировать на Haskell. И всё с ними хорошо и замечательно, но мучает меня такое обстятельство, что я совершенно их не понимаю :).

То есть да, Haskell, монады, всё круто, сложно, разминка для мозгов, куча неявных правил и ленивых вычислений. Можно мерятся пузами в искусстве писать стрелочки и bind'ы. И так далее. Но вот от чего уши встают дыбом? Так это от того, что эти люди неожиданно начинают заявлять, что все их программки в одну строчку делаются исключительно средствами языка. Вот что тут странно. Куда пропадает из этого рассуждения мысль о том, что этот самый Haskell требует нешуточного такого runtime для своей работы: ядро Linux, например, плюс ещё сверху процедуры развёртки/свёртки lambda-графов, не считая, сборщика мусора.

Конечно, естественно, когда у вас есть ядро Linux, Apache, runtime и монада IO, наполовину написанная на Си, то web-приложение на Haskell можно написать в три строчки.

Но можно ли его считать написанным исключительно на Haskell? Неужели Haskell настолько развивает абстрактное мышление, что высококлассные программисты на нём забывают о таких 'мелочах', как остальная экосистема?

Вот этого я не понимаю… Хм. Или я не понимаю чего-то другого? Того же великого Дао, скрытого за этими самыми монадами и оператором bind? Или там понимать нечего и всё является чистой воды выпендрёжем?

Эх. Проблема в том, что мы живём в век дезинформации, мнений авторитетов и сверхспециализации.
Total votes 24: ↑21 and ↓3+18
Comments85

Information

Rating
Does not participate
Location
Екатеринбург, Свердловская обл., Россия
Registered
Activity

Specialization

Backend Developer, Научный сотрудник
Applied math
System Programming
Machine learning
Compilers
Scheme
C
Assembler
Linux
Clojure
Haskell