Рост компьютерных и информационных технологий за сравнительно недолгое время, прошедшее с момента появления первых компьютеров (конец 1940х гг.) был невероятно стремительным и пока не проявляет никакой тенденции к замедлению. Считается, что каждые 10 лет происходит полная смена технологий в этих областях. В результате невероятно большое число аппаратных и программных технологий и платформ, которые, казалось бы, еще недавно были самыми передовыми и повсеместно используемыми, в настоящее время осталось лишь в памяти тех, кому с ними пришлось работать. Новые поколения разработчиков программного обеспечения, как правило, не знают даже техники и технологий десятилетней давности (а если и знают, то только из специальных ВУЗовских курсов), поскольку состояние дел в области компьютерных и информационных технологий успело полностью поменяться несколько раз за эти годы. Такие стремительные изменения, кстати, делают весьма неустойчивым компьютерный бизнес: на наших глазах многие фирмы-производители оборудования или программного обеспечения, имевшие, казалось бы, сверхустойчивое положение на рынке, в считанные годы проигрывали конкуренцию и иногда полностью исчезали, а на их месте появлялись новые "звезды". Так, к примеру, всего несколько лет назад произошло с одной из крупнейших в компьютерном мире фирмой DEC,долгие годы в значительной мере определявшей пути развития вычислительной техники и программного обеспечения, и сумевшей построить вполне самобытную "цивилизацию" компьютерных и программных решений - фирмы уже больше не существует, а про ее супербрэнды PDP, VAX и соответствующее программное обеспечение помнят весьма немногие. Учитывая все сказанное, представляется практически нецелесообразным давать сколько-нибудь подробный обзор аппаратных и программных архитектур, имеющихся в настоящее время - их срок жизни весьма мал. Ограничимся поэтому лишь весьма схематическим изложением основных платформ, с которыми приходится иметь дело современному разработчику. Весьма условно можно классифицировать основные встречающиеся в наше время аппаратные платформы следующим образом.
· Платформы на базе процессоров Intel и их аналогов ( AMD ).
· Высокопроизводительные сервера и рабочие станции SUN (на базе процессоров SunSparc ).
· Высокопроизводительные сервера HP (на базе RISC -процессоров).
· Платформы Apple.
Архитектура процессора: RISC или CISC?
В 80-х годах прошлого века была предложена архитектура процессора с сокращенным набором машинных команд ( RISC - Reduced Instruction Set Computer ). Дейв Паттерсон и Карло Секуин сформулировали четыре основных принципа архитектуры RISC:
1. Любая операция должна выполняться за один такт, вне зависимости от ее типа.
2. Система команд должна содержать минимальное количество наиболее часто используемых простейших инструкций одинаковой длины.
3. Операции обработки данных реализуются только в формате "регистр-регистр" (операнды выбираются из оперативных регистров процессора, и результат операции записывается также в регистр; а обмен между оперативными регистрами и памятью выполняется только с помощью команд чтения/записи).
4. Состав системы команд должен быть "удобен" для компиляции операторов языков высокого уровня
Создатели RISC -процессоров взяли набор из очень простых наиболее часто используемых команд, которые выполняются быстро, и объединили его с такими технологиями, как конвейерная обработка. В результате получился процессор, который имеет лучшую производительность для большинства приложений и теоретически стоит меньше, поскольку сам он небольшой и его производство обходится дешевле. По аналогии процессоры традиционной архитектуры стали называть CISC - Complex Instruction Set Computer.
В список основных поставщиков RISC -систем входят компании Hewlett-Packard (PA-RISC), Sun Microsystems Computers (SPARC), Digital Equipment (Alpha), Silicon Graphics - модуль MIPS (R210000) и союз IBM и Motorola (PowerPC).
С другой стороны, семейство Pentium компании Intel продолжает реализацию более традиционной вычислительной архитектуры с полным набором машинных команд (CISC). CISC -процессоры содержат в сотни раз больше команд, чем RISC -процессоры, и используют от 8 до 12 способов адресации памяти по сравнению с 2-3 способами в RISC.Однако технические различия между RISCи CISC в последние годы становятся все менее четкими, особенно в том, что касается общей производительности систем. Однаархитектура заимствует хорошие идеи у другой. Раньше RISC -процессоры определялись как микропроцессоры с количеством команд меньше 128, сейчас же они имеют 200 команд - сравните с набором из 300 и более команд в CISC.Сегодня CISC -процессоры используют конвейеризацию и другие современные технологии. Оба лагеря применяют большую кэш-память для повышения производительности.
Основные программные платформы можно классифицировать условно следующим образом:
· Платформы Microsoft (Windows NT/XP/...)
· Платформы на базе Unix.В последнее время среди версий Unix наиболее популярен Linux разных модификаций. К версиям Unixотносятся и системы Solaris (для платформ Sun),а также весьма своеобразный "гибрид" Unix и Windows для платформ Apple - Mac OS.
Следует отметить, что операционные системы Unix и созданный вокруг них универсум программных продуктов, идей и технологий, являются одними из едва ли не самых "долгоживущих" в мире программного обеспечения. Первая система Unix,практически ничем принципиально не отличающаяся от ее современных "клонов"