Ни одна из перечисленных трёх идей не является новой. Самая старая из них -- вытесняющая многозадачность -- существовала уже в конце 1950-х, когда, собственно, и появились первые операционные системы, а не примитивные программы-мониторы, лишь помогавшие оператору пропускать через машину поток заданий. Над микроядерностью думали в 1960-х, но практического применения идея не нашла как из-за высоких накладных расходов по сравнению с монолитными ядрами, так и из-за отсутствия принципиальных преимуществ (да, преимущества есть, но они не носят принципиального характера и вполне компенсируются недостатками, ну а что выгоднее в конкретной ситуации -- это уже другой вопрос). Наконец, первой мне известной _коммерческой_ системой виртуальных машин стала IBM VM/370, первая версия которой была выпущена в 1972 году (естественно, разработка была начата раньше, в конце 1960-х). Кстати говоря, с её советским клоном СВМ ЕС мне пришлось довольно долго работать, и она вполне шустро функционировала даже на несчастной ЕС-1035 с быстродействием в 2-3 миллиона операций в секунду и объёмом ОЗУ аж в 3 мегабайта, ну а на ЕС-1130 (около 7 млн. оп/с и 16 мегабайт) так просто летала.
Что же касается Си++, то, конечно, он развился сильно, особенно если сравнивать с чистым Си, но какое отношение это имеет к осям?
|