IT в России и мире в реалиях мирового кризиса

1,401,079 8,469
 

Фильтр
Александр Орефков
 
Слушатель
Карма: -0.09
Регистрация: 29.07.2014
Сообщений: 214
Читатели: 0
Цитата: Поверонов от 17.03.2016 12:33:18Уточню. Использование открытого кода возможно ( компиляция и применение ) без ограничений, но и продать такой скомпилированный код как продукт становится невозможным так он всем доступен бесплатно, поэтому продают поддержку - пример mySQL. А вот доработать ( изменить код и добавить свой ) и продать лицензия запрещает, так как требует публикации такого измененного кода как тоже открытого. Поэтому брать свободный код как основу для развития своего коммерческого продукта бесперспективно - можно погореть в судебном иске. Западные фирмы этого тщательно избегают. Это однако не мешает им использовать свободные программы ( скомпилированный открытый код ) в составе своих пакетов, но со ссылкой на их независимую загрузку пользователем по отдельной лицензии.
При поставках "железа" продается только "железо", а свободный софт добавляется как бесплатное функциональное наполнение.

Еще раз говорю - никто не запрещает ПРОДАВАТЬ продукты на основе опенсорсных решений.
Более того, многие опенсорсные продукты разрешают их использование в коммерческих продуктах без открытия кода.
Возможно, у вас в голове не укладывается, как можно платить деньги за программу, которую можно просто скачать исходники и скомпилить самому, но такая бизнес-модель существует и даже работает. 
  • +0.00 / 0
  • АУ
Lapsha
 
Слушатель
Карма: -2.16
Регистрация: 10.01.2016
Сообщений: 356
Читатели: 0
Цитата: Поверонов от 17.03.2016 09:25:28Так пишут open-source. Таких сайтов полно. Каждый может сделать свой fork и доделать, если есть что. Но за open-source НЕ ПЛАТЯТ. Это хобби.


Распространенное заблуждение.

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

Проекты OSS нередко используются IT монстрами для подкладывания каки конкурентам.


Цитата: Цитата: Поверонов от 16.03.2016 20:25:28Фирмы не могут продавать продукты на его основе. Только поддержку. На этом пути множество программеров может лишиться своего куска с маслом. А пока им безработица не грозит. В школах всё хуже с математикой.


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

Парсеры Xerces и Xalan где только не ипользуются! Как и Apache WEB сервер и т.д. и т.п.
  • +0.00 / 0
  • АУ
Lapsha
 
Слушатель
Карма: -2.16
Регистрация: 10.01.2016
Сообщений: 356
Читатели: 0
Цитата: adolfus от 16.03.2016 23:30:39Вы наверное из прошлого? Какая такая IDA? Она умеет потоки и защищенный режим x86_64?


Она все умеет. Отличная тулза.

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

Правда, все радости только за денюжку. Более штуки баков за копию. Плюс полная поддержка - несколько тысяч в год. Что могут позволить себе конторы, не гении-одиночки.
Отредактировано: Lapsha - 17 мар 2016 23:28:10
  • +0.01 / 1
  • АУ
adolfus
 
Слушатель
Карма: +18.98
Регистрация: 12.02.2010
Сообщений: 12,011
Читатели: 2
Цитата: Lapsha от 17.03.2016 20:26:51Она все умеет. Отличная тулза.

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

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

Тем не менее, спрошу -- без интерактивного взаимодействия эта Ваша ИДА умеет именовать вызовы к библиотекам, установленным в системе, и передаваемые параметры, если для библиотек есть хидеры?
  • +0.00 / 0
  • АУ
Valery
 
russia
St.Petersburg
55 лет
Слушатель
Карма: +2.32
Регистрация: 01.11.2008
Сообщений: 332
Читатели: 0
Цитата: adolfus от 17.03.2016 23:24:07Тем не менее, спрошу -- без интерактивного взаимодействия эта Ваша ИДА умеет именовать вызовы к библиотекам, установленным в системе, и передаваемые параметры, если для библиотек есть хидеры?

В большинстве случаев сможет.
Я нашел только одну операционную систему, с которой IDA не дружит - OpenVMS. Ну а для попробовать - торренты есть...
Но инструмент интересный. Я им даже прошивку навигатора Garmin препарировал...
Но главное - использование процессора на 100%. И вот тут кроме ассемблера С и Фортран с Коболом годятся (ну и еще ...).
Ну а практика моя показала, что переписывание кода с C++ на обычный С давало прирост производительности до 20%.
Ну а на счет сравнения CGI и Java по производительности я просто промолчу. Ну и требования по ресурсам...
  • +0.02 / 2
  • АУ
Lapsha
 
Слушатель
Карма: -2.16
Регистрация: 10.01.2016
Сообщений: 356
Читатели: 0
Цитата: adolfus от 17.03.2016 23:24:07Для тех осей, которые перечислены в педивикии рядом с ней, есть куда более крутые отладчики. Как бесплатные, так и за деньги.

Как можно употреблять сравнительные степени, если нет опыта работы с обсуждаемым хренью вообще?


Насколько более крутые те отладчики? И в каком именно месте они круче?

А те отладчики могут залезть внутрь USB конроллера? А покопаться в софте видеоускорителя и подебагить его? А в BIOS (полный, не только CMOS)? И еще много гитик. А полностью контролировать содержимое регистров проца и его pipеline (конвейер команд)? Не думаю, что в мире есть много людей, знающих все ее фичи и умеющих их грамотно пользовать.

IDA больше для embedded programming (системнoe программирование, кажись). И крутости у нее - складывать некуда.
Цитата: Цитата: adolfus от 17.03.2016 10:24:07В дизасемблере не бывает встроенных отладчиков, наоборот -- это отладчики содержат дизассемблер -- он его часть.


Здорово! Смотреть на описание реально существующей тулзы и отрицать ее существование.

IDA еще и декомпайлер для очень многих языков и их версий. 
Цитата: Цитата: adolfus от 17.03.2016 10:24:07Тем не менее, спрошу -- без интерактивного взаимодействия эта Ваша ИДА умеет именовать вызовы к библиотекам, установленным в системе, и передаваемые параметры, если для библиотек есть хидеры?


Выше ответили.
Отредактировано: Lapsha - 18 мар 2016 07:50:01
  • +0.00 / 0
  • АУ
Lapsha
 
Слушатель
Карма: -2.16
Регистрация: 10.01.2016
Сообщений: 356
Читатели: 0
Цитата: Valery от 18.03.2016 00:02:36Ну а практика моя показала, что переписывание кода с C++ на обычный С давало прирост производительности до 20%.

Это еще отличный результат для плюсов.

Очевидно, что язык с большим числом абстракций будет менее эффективен в бинарном виде. Он эффективнее либо в скорости разработки, либо в надежности, либо в некоей их комбинации.
А ассемблер, небось, еще круче по сравнению с С. В процентах не копенгаген. Только запаришься на нем писать даже среднего размеров код. О большом и говорить не хочется. 
Цитата: Цитата: Valery от 17.03.2016 11:02:36Ну а на счет сравнения CGI и Java по производительности я просто промолчу. Ну и требования по ресурсам...


Их сравнивать только и исключительно по производительности (а не по полному набору качеств) - примерно то же, что сравнивать обычные серийные авто с тачками, сделанными на заказ и с ручной регулировкой, ручной отделкой, ручной полировкой (William, Dimora etc.). Последние безусловно круче и шустрее, однако возят людей оба вида машинок примерно одинаково. Т.е. делают именно то, для чего машинки и предназначены. Ну, не одинаково, конечно, но разница в ценах никак не оправдывает этой разницы в качествах.

А ресурсы сейчас - 3 копейки за тонну.
  • +0.01 / 1
  • АУ
Valery
 
russia
St.Petersburg
55 лет
Слушатель
Карма: +2.32
Регистрация: 01.11.2008
Сообщений: 332
Читатели: 0
Цитата: Lapsha от 18.03.2016 04:48:31Это еще отличный результат для плюсов.

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

Я бы поправил немного...
Абстракции в какой-то мере можно и на ассемблере реализовать. Но вся проблема именно в человеке. Если программист понимает, как работает его программа на реальном железе (включая регистры процессора и прямой доступ к памяти...), то он на любом языке программирования будет писать достаточно эффективные программы, не увлекаясь "красивостями".
Да и ассемблер разный бывает. До сих пор офигеваю от ассемблера VAX (для DEC Alpha он в свое время стал языком высокого уровня...).
Кстати, до сих пор дома стоит AlphaServer DS10 c OpenVMS. Просто ради того, чтобы иногда посмотреть, как писать надо. Ну и листинги операционки мне доступны. Кстати, пример отлично документированного кода.
  • +0.00 / 0
  • АУ
adolfus
 
Слушатель
Карма: +18.98
Регистрация: 12.02.2010
Сообщений: 12,011
Читатели: 2
Цитата: Lapsha от 18.03.2016 04:31:44Выше ответили.

Лови исполняемый модуль. Пропусти через ИДУ и выдай нам тут исходник.

$ base64 foo.gz


Скрытый текст

$ md5sum foo

88aa7d9e52fce930c9afd63d45a21817  foo
Отредактировано: adolfus - 19 мар 2016 04:27:29
  • +0.00 / 0
  • АУ
Lapsha
 
Слушатель
Карма: -2.16
Регистрация: 10.01.2016
Сообщений: 356
Читатели: 0
Цитата: adolfus от 19.03.2016 00:40:46Лови исполняемый модуль. Пропусти через ИДУ и выдай нам тут исходник.


Прошу прощения (если успели прочесть пост до исправления): перепутал с LightElf.


Я сейчас дома (уже дома: тяпница все же, чо там на работе высиживать?), а дома у меня нет IDA. Нет и на служебном лаптопе. На работе есть у некоторых товарищей в моей группе, попробую им закинуть в понедельник. Я все больше вожу руками последнюю эпоху. 
Отредактировано: Lapsha - 19 мар 2016 04:10:21
  • +0.00 / 0
  • АУ
TAU
 
Слушатель
Карма: +53.40
Регистрация: 24.07.2008
Сообщений: 4,227
Читатели: 0
Цитата: Lapsha от 18.03.2016 04:31:44IDA больше для embedded programming (системнoe программирование, кажись)

Креститесь! 
embedded programming - программирование встроенных систем (в автомобили, снаряды, стиральные машины...).
  • +0.02 / 2
  • АУ
adolfus
 
Слушатель
Карма: +18.98
Регистрация: 12.02.2010
Сообщений: 12,011
Читатели: 2
Цитата: Valery от 18.03.2016 23:32:26До сих пор офигеваю от ассемблера VAX (для DEC Alpha он в свое время стал языком высокого уровня...).

Макроассемблера. Ассемблер в чистом виде был тоже по своему красив - такой регулярности в адресации ни до, ни после не было.
После того, как закончилось мое распределение, институт, куда я попал после вуза, решил отправить пару молодых физиков-экспериментаторов на курсы по программированию, чтобы мы могли работать с КАМАК и остальной подручной шнягой, типа ДВК и Э60. Курсы были с отрывом по 4 пары 5 дней в неделю в течение 8-и месяцев, плюс месяц на курсовую работу -- сечас ассемблер + си + ОС в профильном вузе вдвое меньше времени  читают.  Контупер -- СМ1700. Памяти приложению 2 Мбайта, диск с фиксированными головками ~600 Мбайт размером с хороший дубовый письменный стол. Операционка вроде называлась VMS -- не помню точно. Цветной графический терминал. Вместо символа доллара в наборе ASCII была копейка -- кружок с четырьмя рожками. Кстати, куда более стильный, чем этот самый долар.


  • +0.01 / 1
  • АУ
Lapsha
 
Слушатель
Карма: -2.16
Регистрация: 10.01.2016
Сообщений: 356
Читатели: 0
Цитата: TAU от 19.03.2016 01:01:59Креститесь! 
embedded programming - программирование встроенных систем (в автомобили, снаряды, стиральные машины...).

Именно так. И все эти системы имеют софт. "Прошивку", как говорят в России. А также процессоры и операционку (уже не все).

И доля embedded software в обычных персоналках тоже нехилая: графические ускорители, BIOS, всевозможные драйверы, контроллеры и т.п.
  • +0.00 / 0
  • АУ
adolfus
 
Слушатель
Карма: +18.98
Регистрация: 12.02.2010
Сообщений: 12,011
Читатели: 2
Цитата: Lapsha от 19.03.2016 01:20:08Именно так. И все эти системы имеют софт. "Прошивку", как говорят в России. А также процессоры и операционку (уже не все).

И доля embedded software в обычных персоналках тоже нехилая: графические ускорители, BIOS, всевозможные драйверы, контроллеры и т.п.

embedded -- это QNX и VxWorks?
  • +0.00 / 0
  • АУ
Lapsha
 
Слушатель
Карма: -2.16
Регистрация: 10.01.2016
Сообщений: 356
Читатели: 0
Цитата: adolfus от 19.03.2016 01:29:06embedded -- это QNX и VxWorks?

Это операционки реального времени для использования в embedded systems. Сами по себе они не embedded.
  • +0.00 / 0
  • АУ
TAU
 
Слушатель
Карма: +53.40
Регистрация: 24.07.2008
Сообщений: 4,227
Читатели: 0
Цитата: Valery от 18.03.2016 23:32:261. До сих пор офигеваю от ассемблера VAX (для DEC Alpha он в свое время стал языком высокого уровня...).
2. Кстати, до сих пор дома стоит AlphaServer DS10 c OpenVMS. Просто ради того, чтобы иногда посмотреть, как писать надо. Ну и листинги операционки мне доступны. Кстати, пример отлично документированного кода.

1. В каком смысле "высокого уровня"? Появилась переносимость? Возможность не писать в терминах команд процессора? Аналог iAPX432?
2. Напишите, пожалуйста, в личку )
  • +0.00 / 0
  • АУ
TAU
 
Слушатель
Карма: +53.40
Регистрация: 24.07.2008
Сообщений: 4,227
Читатели: 0
Цитата: adolfus от 19.03.2016 01:29:06embedded -- это QNX и VxWorks?

Посмотрите еще
Багет 3.0
RTOS
LynxOS
Nucleus
Естественно, что ежели эти ОС РВ применяются во встраиваемых системах, они становятся embedded.
Да, и во многих местах фактически пишут собственные в некотором смысле ОС РВ...
Отредактировано: TAU - 20 мар 2016 04:23:01
  • +0.00 / 0
  • АУ
adolfus
 
Слушатель
Карма: +18.98
Регистрация: 12.02.2010
Сообщений: 12,011
Читатели: 2
Цитата: TAU от 20.03.2016 01:21:27Посмотрите еще
Багет 3.0
RTOS
LynxOS
Nucleus
Естественно, что ежели эти ОС РВ применяются во встраиваемых системах, они становятся embedded.
Да, и во многих местах фактически пишут собственные в некотором смысле ОС РВ...

Если это та RTOS, которая 32, то этот вообще смех -- у нее даже нормальной файловой системы нет. Монолитное ядро тридцатилетней давности, напяленное на i686. С гордостью везде говорят и пишут, что передают управление пользовательскому обработчику прерываний за сто наносекунд. Системный АПИ у нее при этом -- умереть не встать -- win32. Такт у шины PCI, кстати, 15 нс. За 7 тактов CLK передать управление пользовательскому обработчику? Одно переключение регистрового и системного контекстов занимает втрое, если не больше. А до этого еще нужно пообщаться с устройствами, чтобы выяснить, кто же из них дернул стоп-кран.

 
  • +0.00 / 0
  • АУ
Valery
 
russia
St.Petersburg
55 лет
Слушатель
Карма: +2.32
Регистрация: 01.11.2008
Сообщений: 332
Читатели: 0
Цитата: TAU от 20.03.2016 01:12:291. В каком смысле "высокого уровня"? Появилась переносимость? Возможность не писать в терминах команд процессора? Аналог iAPX432?
2. Напишите, пожалуйста, в личку )

Для операционных систем OpenVMS для Alpha и Itanium штатно устанавливается Macro-32 с некоторыми расширениями для 64-х разрядных операций. Исходники Macro-32, ранее написанные для VAX обычно просто компилируются. Для нестандартных случаев  есть мануал по портированию.
Оригинальный Macro-64 для процессора Alpha доступен только в составе "OpenVMS Vreeware V4" (у меня есть оригинальные CD). Позже его убрали. Для Itanium ничего подобного не видел. Похоже, даже компилятор С/C++ для него идет от Intel с мелкими изменениями.
Больше всего меня поразило, как в свое время покойный DEC решил проблему миграции от PDP-11 и далее.
VAX имел режим двоичной совместимости процессора с PDP (специальный режим процессора). И даже если конкретный процессор не поддерживал какой-либо команды процессора, то по прерыванию происходила эмуляция неподдерживаемой инструкции. Не бысрто, но работало.
Для Alpha был написан двоичный многопроходный полукомпилятор, полутранслятор VEST. Вполне "кушал" даже самомодифицирующийся код VAX. и вполне шустро исполнял. При этом писал какие-то логи и позволял устраивать повторную перекомпиляцию с учетом этих логов.
С Itanium такого нет.
Впрочем, покойный DEC столько всего интересного сделал...
После работы с их техникой я и нормальных кластерных решений больше не видел...
  • +0.00 / 0
  • АУ
TAU
 
Слушатель
Карма: +53.40
Регистрация: 24.07.2008
Сообщений: 4,227
Читатели: 0
Цитата: Valery от 21.03.2016 01:12:31Впрочем, покойный DEC столько всего интересного сделал...

Да уж... Помню, научившесь "на хорошем" и не представляя себе, как люди могут извращаться, сколь удивительными стали затем поделки других производителей...
P.S. А я был членом "Digital Credit Union" в Штатах в 2000 году - вот хоть так к славе DEC примазаться пришлось) 
  • +0.00 / 0
  • АУ
Сейчас на ветке: 4, Модераторов: 0, Пользователей: 1, Гостей: 1, Ботов: 2
 
baddym