LINUX.ORG.RU

Дмитрий Завалишин рассказал о себе, своих взглядах на софт и, конечно, об ОС «Фантом»

 , ,


1

2

В Компьютерре-онлайн опубликовано интервью с Дмитрием Завалишиным - создателем ядра операционной системы «Фантом», в которой программы работают «вечно», программировать можно без учёта сохранения данных, а программы легко обмениваются сложными объектными структурами.

Из интересных подробностей:

  • Ядро «Фантома» уже практически готово, частично реализована графическая среда.
  • Под «Фантомом» будет запускаться код, написанный для Unix или Linux, но его придётся модифицировать (к примеру, из-за отсутствия XWindow).
  • Завалишин не любит GPL и считает, что «если уж отдавать, то не ставить условий».
  • Если всё пойдёт по плану, то в «Фантоме» можно будет реализовать интерфейс, где значок программы и её окно - это один и тот же объект, а окна можно будет чуть ли не отправлять по электронной почте.

Тех, кто осилит прочесть все 50 тысяч знаков ждут всякие бонусы в виде баек про времена ЕС ЭВМ и рассказа о том, как в DZ делают системы датчиков для «Мосводоканала».

>>> Интервью



Проверено: anonymous_incognito ()
Последнее исправление: anonymous_incognito (всего исправлений: 1)

Ответ на: комментарий от ahonimous

судя по отзывам, 2010 перегружена свистелками. Нам очень долгое время хватало 2005 + ReSharper. 2008 использовали на паре внутренних проектов.

Dark_SavanT ★★★★★
()
Ответ на: комментарий от Dark_SavanT

> Ну нет у меня лишних 1.5 мегабайт на железке для libstdc++ и прочего.

для libstdc++

Бгг. Вот и выросло, блин, поколение...

tailgunner ★★★★★
()
Ответ на: комментарий от Dark_SavanT

> Как показывает практика, C хватает и на ядро ОС, и на компилятор, и на туеву хучу всякой гуйни

А раньше практика показывала, что для этого хватает Ассемблера.

с игрушками.

Суини почитай.

tailgunner ★★★★★
()
Ответ на: комментарий от Dark_SavanT

> Как показывает практика, C хватает и на ядро ОС, и на компилятор, и на туеву хучу всякой гуйни с игрушками.

эта же практика показывает, что для этого на С пишутся костыли в виде релиализации того же ООП, в результате приходится обвязываться макросами и использовать многометровые библиотеки вроде glib

ahonimous
()
Ответ на: комментарий от tailgunner

А нахрена спрашивается C++ без его стандартной библиотеки. На C будет проще написать, тем более, что текущие задачи не требуют адской сложности систем.

Dark_SavanT ★★★★★
()
Ответ на: комментарий от tailgunner

>> А что такое «жизненно необходим»? Я вот не знаю системных задач, для которых Си было бы достаточно.

А раньше практика показывала, что для этого хватает Ассемблера.

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

А, ну да, забыл, «Толсто!!!111».

Суини почитай.

Можно немного подробнее? конкретное название статьи/книги?

Dark_SavanT ★★★★★
()
Ответ на: комментарий от Dark_SavanT

> А нахрена спрашивается C++ без его стандартной библиотеки.

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

tailgunner ★★★★★
()
Ответ на: комментарий от ahonimous

> эта же практика показывает, что для этого на С пишутся костыли в виде релиализации того же ООП, в результате приходится обвязываться макросами и использовать многометровые библиотеки вроде glib

с такими настроениями, use power of Java, Luke!

Dark_SavanT ★★★★★
()
Ответ на: комментарий от Dark_SavanT

>> А раньше практика показывала, что для этого хватает Ассемблера.

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

Прикинь, у Си - тоже (например, никто не пишет GUI на чистом Си - его оборачивают чем-то вроде GObject, и компиляторы на Си тоже уже не пишут - даже GCC уходит на Си++). Си

Суини почитай.

Можно немного подробнее? конкретное название статьи/книги?

Кажется, это: http://www.st.cs.uni-saarland.de/edu/seminare/2005/advanced-fp/docs/sweeny.pdf

tailgunner ★★★★★
()
Ответ на: комментарий от Dark_SavanT

> с такими настроениями, use power of Java, Luke!

не дерзи, если не хочешь признать, что на С пишут костыли( glib, gtk etc. ) для «эмуляции» ООП и ФП, а также используют для этого вложенные километровые макросы - просто промолчи

ahonimous
()
Ответ на: комментарий от tailgunner

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

Блин, я тебе про одно, ты мне совершенно про другое. Если язык не даёт мне решающего преимущества в удобстве разработки, но даёт кучу неочевидного геморроя(см. выше, я про C++ малость почитал, мне хватило), нафиг такой язык с пляжу. Таким преимуществом могла бы быть libstdc++, но нет для неё полтора мегабайта(не помню уже точно, сколько, но ЕМНИП где-то так), нету, а без неё(STL в частности) C++ как-то неохота использовать.

Dark_SavanT ★★★★★
()
Ответ на: комментарий от anonymous

>Зачем это нужно если есть упс+гибернация?

Именно. В целом мне проблема кажется сильно раздутой.

anonymous
()
Ответ на: комментарий от Dark_SavanT

> Если язык не даёт мне решающего преимущества в удобстве разработки

Опять двадцать пять... какое удобство является «решающим»?

я про C++ малость почитал, мне хватило

Понятно. Почитал акробата Александреску и испугался. В общем, было от чего...

tailgunner ★★★★★
()
Ответ на: комментарий от kronosqu

>Нужно чтобы быстро запускать программы

Никакой разницы в скорости загрузки с нуля не будет. И там (Фантом) и там (после гибернации) вся информация будет считываться с диска.

anonymous
()
Ответ на: комментарий от ahonimous

> не дерзи, если не хочешь признать, что на С пишут костыли( glib, gtk etc. ) для «эмуляции» ООП и ФП, а также используют для этого вложенные километровые макросы - просто промолчи

Слушай, да, ты чо такой дерзкий, на понт берешь?

glib, gtk не ковырял, мне они сейчас не нужны. Если эти костыли пишут(ты VFS в ядре ещё забыл и еще многое), значит это кому-то нужно и кому-то удобно. Если нравится обьектный подход, иди фтыкать на Haiku, они ОС и юзерленд на плюсах фигачат и выходит неплохо.

С ФП почти не сталкивался. Hello world на хаскеле и эрланге не в счёт.

Dark_SavanT ★★★★★
()
Ответ на: комментарий от tailgunner

> Мне никогда особо не нравился CL. Ты меня с кем-то путаешь :)

да - перепутал, просто часто тебя видел в темах про CL

ahonimous
()
Ответ на: комментарий от Napilnik

>>То есть можно достучаться до чужих данных (с учётом желания того, кому они принадлежат, их вам отдать, конечно - в этом смысле «Фантом» система очень защищённая), но если две программы желают обменяться данными, то это можно сделать очень дёшево, очень эффективно и с произвольной степенью сложности.

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


Верно. История безопасности ОС учит нас тому, что любую систему можно поиметь. Но Фантом можно будет поиметь вдоль и поперёк всего через одну дырку (извиняюсь за каламбур).

anonymous
()
Ответ на: комментарий от tailgunner

> Почитал акробата Александреску и испугался. В общем, было от чего...

Не только, был ещё Саттер с «Решение сложных задач на C++». Скорее именно после неё я решил для себя, что с C++ овчинка не стоит выделки и забил на дальнейшее изучение.

Опять двадцать пять... какое удобство является «решающим»?

STL, в частности такие мелочи как map, hash, iterators, работа с строками. Ясен хрен, что это можно сделать руками, но мне влом. А при отсутствии что там, что там этих вещей, мне C привычнее.

Dark_SavanT ★★★★★
()
Ответ на: комментарий от Dark_SavanT

> Слушай, да, ты чо такой дерзкий, на понт берешь?

смешно

Если эти костыли пишут(ты VFS в ядре ещё забыл и еще многое), значит это кому-то нужно и кому-то удобно


спасибо, кэп, но от того костыли не перестают быть костылями

Если нравится обьектный подход, иди фтыкать на Haiku, они ОС и юзерленд на плюсах фигачат и выходит неплохо.


как бы в линуксе КДЕ есть - зачем далеко ходить

ahonimous
()
Ответ на: комментарий от anonymous

>Но интересно — а что у товарища с сетевой прозрачностью? Вот есть у меня программа-документ-хрен-поймет-что-там-это-такое. Сделано дома, на x86_64. А у друга, скажем, ноут на ARM, и я непременно желаю с ним этим документом поделиться. А желательно - реалтаймового коллаборатива и прочего адового угара содомии, тащемта.

Это всё жабья машина возьмёт на себя, насколько я понимаю.

anonymous
()
Ответ на: комментарий от r

>К стати да - больше всего портят себе данные не враги вроде пропадания света а сами программы. А учитывая что он на этой задумке хочет «легкой передачи данных» - я себе представляю - видеопроигрыватель родил артефакт на экране - решается форматированием диска:)

В точку. Проблема с электропитанием явно надуманная и легко решается UPS'ом, а вот баги в программах - это штука неизбежная. А уж в неперегружаемых программах...

anonymous
()
Ответ на: комментарий от ahonimous

> смешно

Ты первый начал.

спасибо, кэп, но от того костыли не перестают быть костылями

Тебя раздражает само наличие костылей? Так вперёд, напиши так, чтобы ту же функциональность выполняли прямые библиотеки с правильными апи. Тебе только спасибо скажут.

Dark_SavanT ★★★★★
()
Ответ на: комментарий от Dark_SavanT

> Тебя раздражает само наличие костылей?

мне все-равно - я ими не пользуюсь

Так вперёд, напиши так, чтобы ту же функциональность выполняли прямые библиотеки с правильными апи


уже пишу очередной велосипед, в ближайшее время перенесу все на sourceforge

ahonimous
()
Ответ на: комментарий от tailgunner

> например, никто не пишет GUI на чистом Си

Логично, ибо неудобно. Мне GUI на C писать не приходилось, обходился либо C#+winforms(gtk#) либо QT с биндингами к чему-нибудь типа python или ruby.

Dark_SavanT ★★★★★
()
Ответ на: комментарий от ahonimous

> уже пишу очередной велосипед, в ближайшее время перенесу все на sourceforge

не забудь анонсировать на ЛОРе и слешдоте, а то годный флейм пропадёт.

мне все-равно - я ими не пользуюсь

Аналогично, только меня это почему-то не раздражает.

Dark_SavanT ★★★★★
()
Ответ на: комментарий от Dark_SavanT

> не забудь анонсировать на ЛОРе и слешдоте, а то годный флейм пропадёт.

обязательно

Аналогично, только меня это почему-то не раздражает.


я высказывал раздражение? я просто указал, что С не хватает для всех задач - ты стал спорить, в итоге согласился, но свел все к тому, что меня это якобы разражает

ahonimous
()
Ответ на: комментарий от ahonimous

> я просто указал, что С не хватает для всех задач - ты стал спорить

Возможностей C принципиально не хватает для того, чтобы написать игру? или их принципиально не хватает для того, чтобы написать GUI? Сейчас ты свёл возможности языка к удобству разработки. я это понял как то, что тебя это раздражает.

Инструмент надо выбирать под задачу и ограничения. Если мне вдруг понадобится написать гуёвое приложение в условиях ограниченных ресурсов, я возьму C и _возможно_ GTK(а скорее что-нибудь вроде microwindows, а то и чистые DirectFB/Xlib), но если вопрос о ресурсах не будет стоять, то я скорее возьму python, C#, Java или еще что-нть подобное, но никак не C++ и не С.

Dark_SavanT ★★★★★
()
Ответ на: комментарий от simple_best_world_web_master

>Надо будет решить проблему падения, что ее вызывает, а не лечить «сломалось - перезагрузи машину» - мы все знаем, к каким результатам это приводит

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

anonymous
()
Ответ на: комментарий от simple_best_world_web_master

>Ну поставь кеширование записи и коммиты раз в час, в чем проблема? Если что-то произойдет, то будет состояние на «час назад», проблемы то?

Правильно, потеря часа работы. Я лично свои рабочие файлы чаще сохраняю.

anonymous
()
Ответ на: комментарий от Dark_SavanT

> Возможностей C принципиально не хватает для того, чтобы написать игру?

ну не зря же написали glib по сути на препроцессоре - значит средств самого С таки да не хватает

Если мне вдруг понадобится написать гуёвое приложение в условиях ограниченных ресурсов, я возьму C и _возможно_ GTK


я уже писал тут - C++-й программист возьмет FLTK и получит 150Кб статично слинкованный бинарник, а отличие от твоего GTK - который за собой потянет десятки мегабайт библиотек и их ресурсов в условиях ограниченных ресурсов (с)

ahonimous
()
Ответ на: комментарий от ahonimous

ключевое слово «возможно». GTK я привёл только как первый пришедший в голову пример тулкита работающего с C. FLTK - это C++.

FLTK и получит 150Кб статично слинкованный бинарник

и в 90% случаев потянет за собой ещё и libstdc++, про который я уже писал.

Dark_SavanT ★★★★★
()
Ответ на: комментарий от Dark_SavanT

> и в 90% случаев потянет за собой ещё и libstdc++, про который я уже писал.

неа - FLTK не требуется libstdc++, при этом FLTK значительно быстрее GTK( и других аналогов ) и ест намного меньше памяти

ahonimous
()
Ответ на: комментарий от Dark_SavanT

> ИМХО вполне сравнимо.

это вообще разные вещи, если что ;)

ahonimous
()
Ответ на: комментарий от ahonimous

на GTK свет клином не сошёлся, можно использовать хоть XLib/XCB, это будет ещё экономичнее.

то, что FLTK не тянет за собой libstdc++, не означает того, что это не тянет приложение, а без libstdc++ только и остаётся что C с классами, в этом случае выбор языка уже дело вкуса.

Dark_SavanT ★★★★★
()
Ответ на: комментарий от Dark_SavanT

> на GTK свет клином не сошёлся, можно использовать хоть XLib/XCB, это будет ещё экономичнее

опять же это разные вещи

а без libstdc++ только и остаётся что C с классами, в этом случае выбор языка уже дело вкуса.


и как ты будешь пользоваться классами из-под С?

ahonimous
()
Ответ на: комментарий от ArsenShnurkov

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

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

Были расчеты, которые показывают, что SSD хватает на 50 лет непрерывной записи со скоростью интерфейса передачи данных.

То, что раньше работало по другому и твои знания устарели - это твоя проблема.

Были маркетинговые пеар-тесты, которые разводили лохов на «256 GB PCIe SSD». Если твоё понимание сути вещей устарело - это твои проблемы.

anonymous
()
Ответ на: комментарий от ArsenShnurkov

>> на синтезированных тестах все круто

проблема твоего довода в том, что я лично тестировал на реальной системе


Это лишь показатель неполноты твоих тестов.

anonymous
()
Ответ на: комментарий от ahonimous

> и как ты будешь пользоваться классами из-под С?

Тонко, молодец. Я имел в виду то, что «голый» C++ меня не прикалывает. см. выше, что я Tailgunner'у писал.

на GTK свет клином не сошёлся, можно использовать хоть XLib/XCB, это будет ещё экономичнее

опять же это разные вещи

ну извиняй, я не силен в написании GUI под linux. Я вообще-то не говорил, что XLib - это граф. тулкит, я говорил о том, что какое-либо из этих средств можно использовать для написания GUI большей или меньшей степени корявости. с xlib/XCF - это ощутимо проблематичнее.

Ответь лучше на вопрос - нахрена мне использовать плюсы, которые я толком не знаю, для задач, которые нормально решаются на C, с которым у меня опыта побольше?

Dark_SavanT ★★★★★
()
Ответ на: комментарий от Dark_SavanT

> меня не прикалывает

нахрена мне использовать

с которым у меня



мы обсуждаем твое личное мнение? или давай все-таки сойдемся, что С++ тут ничем не хуже С, но каждый пусть выбирает по вкусу?

ahonimous
()
Ответ на: комментарий от ahonimous

>давай все-таки сойдемся, что С++ тут ничем не хуже С

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

Dark_SavanT ★★★★★
()
Ответ на: комментарий от ahonimous

> мы обсуждаем твое личное мнение?

Миллионы мух не могут ошибаться? Можешь считать меня ниасилятором плюсов.

Dark_SavanT ★★★★★
()
Ответ на: комментарий от Dark_SavanT

> Плюсы хуже своей общей упоротостью

разруха она в головах

По-минимуму - читай Страуструпа, Александреску и Саттера


прочитал давно

их книжки у меня отбили всё желание использовать такие штуки как исключения и шаблоны.


как бы никто и не заставляет, я сам не использую исключения - а шаблоны по-минимуму, но С++ это еще и классы, строгая проверка типов, STL и пр.

ahonimous
()
Ответ на: комментарий от Dark_SavanT

> Миллионы мух не могут ошибаться?

в последнее время я наблюдаю миллион людей, которые повторяют эту фразу

ahonimous
()
Ответ на: комментарий от simple_best_world_web_master

Замедлит конечно. Можно и дверью яйца прищемить, но зачем? А это классический пример такой ситуации.

вот и у меня вопрос зачем на уровне архитектуры ОС такое говно гарадить?!

erfea ★★★★★
()

Еще одно животное в зоопарке?

error
()
Ответ на: комментарий от Averrin

Посему предрекаю этому топику скорую и безболезненную смерть :)

fractaler ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.