Здравствуйте, Pavel Dvorkin, Вы писали:
PD>Я не случайно этот вопрос задал.
PD>Ясно, что в MS-DOS она либо не могла быть вообще решена, либо пришлось бы писать какую-то собственную настройку распараллеливания.
Эмм, распараллеливание в MS-DOS — это какой-то оксюморон. Эта ОС принципиально не умеет работать на многоядерном ЦПУ; а на одном ядре параллелить CPU-bound задачи — бессмыслица.
Верх параллельности под MS-DOS — это какой-нибудь fastback, который параллелил IO с компрессией.
PD>А в какой-то момент она смогла быть решенной. Не в NT4 Server, так в 2008 Server или раньше, это и впрямь неважно.
Брр. Какие-то непонятные прыжки от MS DOS к NT4, и потом — к 2008 Server.
С точки зрения задачи "распознавание цифирь на фото" NT4 от 2008 Server или там 10 Server ничем не отличаются.
Скорее можно говорить о том, какое железо для этого потребно, и от него уже плясать в выборе операционки.
PD>И только тогда бизнес смог бы поставить эту задачу.
Когда "тогда"? Задача была в некотором смысле всегда. Просто её решение было до какого-то момента недоступно
PD>Вопрос — как бизнес узнал, что уже можно и, главное, как определил цену ?
Очень просто он определил цену. Вот смотри: у нас есть, скажем, работающая (с 1990го года) система допуска народа на парковку. Система называется "сторож с кнопкой и списком номеров".
У этой системы есть эксплуатационная себестоимость — зарплаты четырёх сторожей, плюс налоги, плюс сборы, плюс отопление будки в зимний период. X рублей в год.
Бизнес говорит "а давайте тётеньку вытащим, автомат засунем". Сколько будет стоить эксплуатация распознавалки, которая будет эмулировать нажатие на кнопку? Допустим, некоторый Y рублей в год. Пока, ессессно, неизвестный — мы ж ещё даже не знаем, что там будет за железка, сколько их, и т.п. Когда инженер станет предлагать железку, мы сможем посчитать стоимость для неё электроэнергии, кондиционирования, обслуживания специалистом, и амортизацию. Но пока пишем в блокнотик просто Y.
Теперь — для запуска этой системы нам нужно потратить Z, который складывается из
— стоимости железок (камер, проводов, столбов, серверов) Z0
— стоимости разработки программы Z1
— стоимости инженерных работ по прокладке проводов, привинчивания камер, вкапывания столбов Z2.
Из общих соображений бизнес хочет, чтобы это новшество окупилось за время T.
Отсюда сразу имеем неравенство: 0 < Z/(X-Y) <= (T-T0), где T0 — это срок реализации проекта. Из которого следует, что Z <= (T-T0) * (X-Y).
В частности, Z0+Z1 <= (T-T0) * (X-Y) — Z2.
Даём задачу инженерам — они предлагают варианты. Если ни один из вариантов по Z0, Z1, T0, и Y не укладывается в неравенство — значит, проект не имеет экономического смысла, и мы его закрываем. Довольные тем, как быстро мы убедились в его нереализуемости.
Если есть разные варианты — смотрим, какой из них окупается быстрее, и выбираем его.
Это — уровень детского сада; реальные бизнес-уравнения несколько сложнее (иначе бы все программисты были бы уже мега-магнатами). В частности, нужно учитывать внутренние и внешние риски. Но пока достаточно и такого приближения.
PD>Задача тут могла быть любая. Например, серьезную обработку картинки вряд ли можно было делать в CP/M на 64 Кбайтах, а в MS-DOS уже можно.
Смотря какой картинки, и какую обработку. Распознавалки цифр на конвертах внедрили, емнип, в 1960х. Специализированную распознавалку регистрационных номеров, рассчитанную на невраждебных пользователей, можно построить с минимумом памяти и вычислительной мощности. Применяемые сейчас были разработаны для ГИБДД, где нужно работать с враждебно настроенным "пользователем" и минимизировать ошибки.
PD>Или другой пример, не из программирования. Деревянные и каменные мосты умели делать в глубокой древности, и не бизнес. А вот металлические мосты появились в конце 18 века. Как бизнес определил стоимость постройки.
Точно так же. Это же азы проектного планирования.
PD>Инженеров спрашивать нельзя о стоимости. по твоим правилам — они должны потом выбрать технические средства
Инженеров можно и нужно спрашивать о стоимости. Делаем именно так — спрашиваем "сколько будет стоить металлический мост". И пока такой мост обходился дороже каменного, никому и в голову не приходило строить металлические мосты. Или даже так — говорим "нужен мост, который бы соединял берега в таком-то месте, на шесть полос в каждую сторону". И инженеры соревнуются, предлагая свои проекты. Кто-то — каменные, кто-то — металлические, кто-то — железобетонные. У всех у них разные Y, Z, и T0. Бизнес смотрит на них и выбирает устраивающий его вариант.