Войти в систему

Home
    - Создать дневник
    - Написать в дневник
       - Подробный режим

LJ.Rossia.org
    - Новости сайта
    - Общие настройки
    - Sitemap
    - Оплата
    - ljr-fif

Редактировать...
    - Настройки
    - Список друзей
    - Дневник
    - Картинки
    - Пароль
    - Вид дневника

Сообщества

Настроить S2

Помощь
    - Забыли пароль?
    - FAQ
    - Тех. поддержка



Пишет alksnis ([info]alksnis)
@ 2009-02-09 10:27:00


Previous Entry  Add to memories!  Tell a Friend!  Next Entry
Безработных российских программистов направят создавать отечественную операционную систему
Как пишет "Независимая газета", в четверг в Кремле состоится первое заседание образованного при президенте РФ Совета по развитию информационного общества. Среди предлагаемых к обсуждению вопросов будет ситуация в IT-отрасли в связи с кризисом.

Одним из путей преодоления кризиса видится организация общественных работ для безработных IT-специалистов. В 30-е годы прошлого века в Германии безработных направляли на строительство дорог, у нас предлагается направить безработных программистов на создание отечественной операционной системы. 

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

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

Кстати, именно реализация масштабных инфраструктурных проектов в условиях кризиса считается и в Китае, и в США приоритетными путями его преодоления и поэтому они сейчас их планируют и реализуют.  Мы же, как всегда, "впереди планеты всей" -  у нас считается главным антрикризисным мероприятием раздать бюджетные деньги "своим" банкам, которые их успешно осваивают, переводя на Запад.


(Читать комментарии) - (Добавить комментарий)


[info]vovkodav@lj
2009-02-09 12:32 (ссылка)
вот и не понял... где мы с вами разошлись... :)? то что текстовый редактор может быть системным ресурсом - факт (если речь ведем о пищущей машинке), так и медиаплеер может быть таким же (если будем говорить о видеомагнитофоне или видиеплеере)... :) но на мой взгляд это достаточно вырожденные случаи узкоспециализированных устройств, где прикладная часть жестко интегрирована в интерфейс самой ОС... в них и другие вещи по другому построены... там часто нет вообще необходимости "грузиться" поскольку имеем заранее предопределенный набор железа и жестко определенный функционал... - включил и готово... а для универсальных ОС сбор и активация перифирии - это одна из самых главных, базовых функций..
так что я не совсем понял критику.... :)

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]realurix@lj
2009-02-09 14:30 (ссылка)
> вот и не понял... где мы с вами разошлись... :)?
Вы используете по УМОЛЧАНИЮ определение ОС общего назначения, универсальную, а я использую определение ОС пригодное и для контроллеров, управляющих, например, микроволновкой или карбюратором. Мое понимание шире и точнее.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]vovkodav@lj
2009-02-10 04:16 (ссылка)
не совсем так... это не более чем вопрос принятых соглашений...
"Мое понимание шире и точнее" - это круто заявлено... прямо на уровне как минимум признанного авторитета, как минимум федерального уровня... :)
По-вашему, так любая прикладная программа может считаться частью ОС???
Вообще-то, на мой взгляд, правильно считать (и по крайней мере раньше так считалось), что ОС - это промежуточный слой программного обеспечения, который обеспечивает независимость программ прикладного уровня от конкретного железа и создает для них определенную операционную среду...
ОС вообще не является обязательным компонентом программного комплекса... Поэтому когда вы говорите, что в микроволновке есть только ОС - это скорее "ложь", чем "правда" - потому что наверное правильнее сказать, что там есть прикладная программа, которая умеет сама (напрямую, без промежуточного слоя) работать с железом...

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]realurix@lj
2009-02-10 07:03 (ссылка)
> это круто заявлено...
Если признать, что ГЛАВНАЯ управляющая программа "железяки" удовлетворяет признакам универсальной ОС, то тогда контроллеры, скажем микроволновки, не управляются такой программой. Там вообще нет ОС, нет распределения ресурсов и т.д. В общем, простые "железяки" полностью выпадают из под действия теории операционных систем. Но это не так.

> ОС - это промежуточный слой программного обеспечения, который обеспечивает независимость программ прикладного уровня от конкретного железа и создает для них определенную операционную среду...
Тем самым Вы отказываете ОС в существовании. Основная функция ОС - распределение ресурсов "железа" для исполнения задач прикладного уровня со всей спецификой, присущей именно задачам системного уровня. Под ресурсами понимается все, вплоть до процессорного времени. А у Вас это лишь промежуточный слой. Как это сделано в Windows. Через что она и страдает.

Возьмем, например, треды. Это попытка реализации распределенного управления задачами. Т.е., функция распределения ресурсов для задачи частично выносится из ядра в прикладной уровнеь. Тем самым нарушается принцип единоначалия. Это мне напоминает автобус, который несется по шоссе и в котором водитель разрешает пассажирам сделать подгазовку, переключить скорость или руль покрутить, чтобы ямку объехать. Далеко такой автобус не уедет. Треды - это костыль, призванный исправить тяжесть системного вызова fork, стратегия исполнения которого не менялась с 60-х годов прошлого века. Вместо костылей надо менять стратегию управления ресурсами. Но этого не делается.

> ОС вообще не является обязательным компонентом программного комплекса...
Система лишенная главной управляющей программы. Неуправляемая система - это не очень новое. Как такое работает, знаете? Один пример известен - Windows.

> правильнее сказать, что там есть прикладная программа, которая умеет сама (напрямую, без промежуточного слоя) работать с железом...
Ну тогда Вам надо объяснить ненужность операционной системы таким командам, как Беркли. Обьясняйте. Когда они примут вашу точку зрения к исполнению, я тоже соглашусь.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]vovkodav@lj
2009-02-10 08:11 (ссылка)
1. "Если признать, что ГЛАВНАЯ управляющая программа "железяки" удовлетворяет признакам универсальной ОС, то тогда контроллеры, скажем микроволновки, не управляются такой программой. Там вообще нет ОС, нет распределения ресурсов и т.д. В общем, простые "железяки" полностью выпадают из под действия теории операционных систем. Но это не так." - а эта что за теория такая? :) если не секрет? не подскажете кто автор и кем она признана? кто вообще сказал, что ОС - это обязательно? есть программа и все... калькулятор М3-34 и прочие обходились... первые персоналки тоже могли обойтись... для этого был встроенный бейсик (это не операционная система)... :)

2. Ничего не отказываю.. Извините, но приходится цитировать самого себя "создает для них определенную операционную среду"... Вы возьмите классику почитайте... Петя Нортон "Операционная система MS-DOS 3.30".. Петя реальный авторитет и раскладывает все по полочкам..
У ОС не одна функция - их много... Но есть основные... и вообще откуда ноги пошли... это сейчас, когда вычислительные ресурсы стоят дешево и можно напихать всякого говна никто не спросит, а нахрена это нужно (потому что не особо принципиально будет это в памяти 15К или 1Г), а раньше было несколько не так и как-то пытались разобраться что и зачем нужно и какие должны быть функции у того или иного софта...

Всегда есть необходимость искать компромис между тем что вынесено в операционную систему и что оставлено на прикладном уровне... Граница очень сильно размыта... Можно нарисовать кучу схем построения и архитектур ПО и все они будут в какой-то мере справедливы. Конкретная задача может очень сильно сказаться на качестве применения той или иной модели..
Можно рисовать ЯДРО, СИСТЕМНОЕ ОКРУЖЕНИЕ (включая драйвера, системные библиотеки и пр..), СИСТЕМНЫЕ УТИЛИТЫ (сервисные программы и пр.), ПРИКЛАДНЫЕ ПРОГРАММНЫЕ СРЕДЫ (СУБД, интерпретаторы, эмуляторы и пр), ПРИКЛАДНОЕ ПО (решающее конкретную пользовательскую задачу)...

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

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

Никто не говорит про ненужность ОС... ОС позволяет очень сильно экономить ресурсы разработки, потому что если бы ее не было, то под каждое устройство приходилось бы писать все заново - а это неправильно - это трата ресурсов в пустую... поэтому и появились ОС как универсальные инструменты управления сложными железяками (их ресурсами)

Но Ваше понимание, что ОС - это главная управляющая программа для любой для железяки - это очень сильный примитив не выдерживающий никакой критики (ребята из Беркли вас бы не поняли)...

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

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]realurix@lj
2009-02-11 13:28 (ссылка)
> кто вообще сказал, что ОС - это обязательно?
Алан Тьюринг. Это напрямую следует из понятия "автомат".

> Операционная система MS-DOS 3.30
Помнится мне, что только начиная с версии 3.1 MSDOS стал называться операционной системой. До этого это был "монитор DOS", что более правильно отражает суть. Монитор тоже можно рассматривать как главную управляющую программу, но вот на роль полнофункциональной универсальной ОС он не тянет.

> Граница очень сильно размыта...
Так же, как и между "железом" и "софтом". Что не умеет делать "железо", то компенсируют "софтом".

> Не бывает абсолютно универсальной операционной системы...
Согласен.

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

> то под каждое устройство приходилось бы писать все заново - а это неправильно
Согласен. Но причина в том, что сейчас программируется СИНТАКСИС, а не СЕМАНТИКА. Если программировать будете СЕМАНТИКУ, то такие проблемы сразу же исчезают. А вот перекладывать семантику на синтаксис, а потом обратно... Тут и потерять можно что-то. И это "что-то" не мелочь, а очень и очень большие потери. Фактически, 98-99% работы программистов уже ранее выполнена другими программистами, но они ее продолжают повторять снова и снова. Сизифов труд, так его ити нехорошо... КПД - ноль целых и сколько-то там десятых или сотых...

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

> Во многих контроллерах для промышленной автоматики нет такого понятия вообще...
Тогда там нет автоматов и машины Тьюринга. У молотка, например, или у шурупа, точно нет. А вот у станков с ЧПУ уже есть.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]vovkodav@lj
2009-02-12 05:05 (ссылка)
вынужден в корне не согласиться... :)

1. Из понятия "автомат" совершенно ничего не следует... ОС - это класс программного обеспечения... вот так уж принято считать..

2. Совершенно ошибаетесь... MS-DOS... DOS - это дисковая операционная система... честно говоря, что вы понимаете под словом "монитор" совершенно непонятно..

3. Между железом и софтом - очень понятная и резкая граница.. никто ничего не компенсирует.. софт ничего не может компенсировать, он только умеет приводить железо в предопределенное состояние... Любое современное устройство - это все равно конечный автомат... софт всего лишь закладывает логику изменения состояний... но то, чего не предусмотрено железом он сделать никак не может.

4. Совершенно не заблуждаюсь... я в теме уже лет 25... :) есть разные задачи и совершенно разные устройства... и есть определенный оптимум... Универсальные монстр и нужен для универсального железа... одна из самых основных функций ОС это как раз и есть - связать универсальным образом практически любой комплект железа...
вы вообще говорите о вещах совершенно не связанных с ОС... общие библиотеки функций - это отдельная тема... Работу ОС обеспечивает только не большая часть... Другой вопрос, что практика показала целесообразность стандартизации и удобство, если часть наиболее употребимых библиотечных функций будут поставляться вместе с ОС... Но идеологически, массовое включение в состав ОС библиотек функций - это очень спорный вопрос... Берутся библиотеки на все случаи жизни и получается хренова туча гигабайт кода, который на вашей машине будет использоваться менее 10%, а к этим библиотекам суются всякие утилиты для их использования и настройки, которые тоже будут вами использованы на 10%... а потом со всей этой хренью мы пытаемся взлететь..

5. Семантика, синтаксис - все это, извините хрень... не нужно забывать, что программируется в первую очередь функционал, процесс... Процессы могут быть универсальными, а могут быть заточенными - эргономичными... Простой пример... В учетных системах есть понятие операции: приход, продажа, внутреннее перемещение, списание и т.д... структура практически одинаковая и работать с ними можно на уровне универсальных процедур.. И как правило, все и поддерживают именно такой подход к реализации, потому что программистам так проще... а то, что если сделать заточенные процедуры для людей, которые непосредственно с ними работают, - и это даст прирост производительности у каждого в 10% - это никого не колебет... потому что можно сделать и так, а копаться в деталях - влом... сейчас вообще часто пропадает понятие оптимизации кода - это осталось только в промышленных контроллерах, там где быстрые процессы в реальном времени...

6. "ОС - это главная управляющая программа для любой для железяки" - это не аксиома, это упрощение для чайников, которым просто надо объяснить, что компьютеру обязательно нужна ОС и без нее он работать не будет... То что электроника - это не только писюки, ноутбуки и серваки - остается за кадром..

7. Я не знаю, сколько вам лет (я не к тому что я старый и очень умный, а вы зеленый), но похоже, что вы не застали времена программируемых калькуляторов...
Вам вообще знакомо понятие "конечного автомата"?? Автоматы вообще могут быть механические...
Шарманка кстати, классический пример программируемого автомата...:) там есть и железо и софт, но нет операционной системы... Что касается станков с ЧПУ... С первым из них, я познакомился в 1985 году... тогда у них тоже не было никакой операционной системы... они выполняли непосредственно код с перфоленты, на которой были запрограммированы движения резца...

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

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]realurix@lj
2009-02-12 07:07 (ссылка)
> Из понятия "автомат" совершенно ничего не следует...
Если рассматривать непосредственно сам автомат, то да. А если рассматривать автомат, эмулирующий некий другой автомат? Никто ведь на автомат не накладывал ограничений на эмуляцию. ОС - это автомат, эмулирующий некую вычислительную среду.

> что вы понимаете под словом "монитор" совершенно непонятно..
Только то, что понимали IBM и Microsoft в первых писюках.

> то, чего не предусмотрено железом он сделать никак не может.
То, чего не предусмотрено софтом, железо тоже сделать не сможет.

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

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

> С первым из них, я познакомился в 1985 году...
В 1985 году у меня уже были закончены разработки двух управляющих контроллеров на i80C85 и i80C51, которые годом раньше уже работали в изделиях. А первую программу я написал где-то в 1970 году.

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

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]vovkodav@lj
2009-02-12 07:30 (ссылка)
1. у вас все автоматы - это компьютеры... :) компьютер - это частный случай автомата, а не наоборот... ОС - это не автомат, это класс программного обеспечения.. если у вас только не своя какая-то терминология... тут уже был один, который постоянно гнал чушь, а говорил, что его неправильно поняли... и даже приводил определения из википедии... так что, что такое ОС мы потом слегка разобрались...

2. Так приведите определение... мне вот как-то понятие "монитора", близкое к вашему пониманию у них не встречалось...

3. "То, чего не предусмотрено софтом, железо тоже сделать не сможет." - фигня...:) самый простой пример железо может умереть... :) еще раз софт только отражает логику перехода железа из одного состояния в другое... и никак иначе... :)

4. сам по себе автомат никому не нужен... автомат нужен для выполнения какой-то функции, так что это вы ставите все с ног на голову..

5. Вот... не повезло Вам из эры линеек, сразу в эру компьютеров - отсюда и путаница... :)

6. "двух управляющих контроллеров на i80C85 и i80C51" - опа... ну и интересно? какая операционная система была представлена в микропрограммном коде, который в них исполнялся?

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

(Ответить) (Уровень выше)


(Читать комментарии) -