Linux и САПР
Просматривая в Интернете материалы электронной конференции для разработчиков и пользователей САПР (http://www.netale.net/cgi-bin/mb/CAD-systema/), я наткнулся на просьбу подсказать названия CAD-систем для Linux и их адреса в Интернете. Проблема показалась мне интересной и заслуживающей внимания, потому что она плохо освещена в наших компьютерных изданиях. Пришлось провести небольшое Интернет-иссследование на тему «Linux и CAD», результаты которого и легли в основу статьи. Для пользователей САПР (здесь и далее вместо CAD используется отечественная аббревиатура САПР), не знакомых с операционной системой Linux, в начале статьи приведена небольшая историческая справка. Данные материалы в сокращенном варианте размещены на сайте GrapInfo: http://www.graphinfo.da.ru/
В 1984 году Ричард Столлмен завершил свою работу в MIT и начал писать программы для проекта GNU — версии операционной системы UNIX, базирующейся на идее свободного программного обеспечения. В 1985 году он основал фонд свободного программного обеспечения FSF (Free Software Foundation) (http://www.fsf.org/). В 1991 году в рамках проекта GNU, начатого Столлменом, Линус Торвальдс (Linus Torvalds) создал UNIX-совместимое ядро, которое он назвал Linux. В течение 1992 года ядро Linux было объединено с незавершенной системой GNU в полноценную операционную систему.
В силу сложившихся обстоятельств широко используемая сегодня версия системы GNU/Linux чаще известна как Linux, и многие пользователи не подозревают, насколько глубока ее связь с Проектом GNU (http://www.gnu.org/).
Как бы там ни было, система была отдана в распоряжение мирового сообщества на уровне исходных текстов для совершенствования и развития. Современные версии Linux являются результатом коллективного творчества и включают различные элементы, созданные многими индивидуумами и группами программистов.
Исходный код Linux можно загрузить бесплатно по сети Интернет либо купить коммерческие дистрибутивные версии различных производителей. Многие компании (Red Hat, Suse, Debian, Caldera, Corel и т.п.) создали дистрибутивные наборы Linux-компонентов и Linux-программных приложений с добавлением автоматических процедур инсталляции и других дружественных для пользователя возможностей, представляющие, как правило, значительно более удовлетворительное решение для домашнего или коммерческого использования. Свободная версия ориентирована скорее на хакера — компьютерного профессионала (здесь слово «хакер» следует понимать в трактовке Ричарда Столлмена — «тот, кто любит программировать и получает от этого удовольствие»). Тем не менее некоторые коммерческие версии часто предлагаются свободно для загрузки по Интернету или в качестве CD-приложений в компьютерных журналах или книгах. С коммерческой версией вы получаете расширенную документацию, дополнительные программы поддержки или приложения и услуги поддержки.
Как и все UNIX-системы, Linux может обслуживать много пользователей и решать много задач одновременно. Она высокопроизводительна, эффективна, стабильна, надежна и расширяема, требует меньше компьютерных ресурсов, чем другие системы. Linux — очень устойчивая операционная система. В последнее время обозреватели ставят ее по этому показателю на один уровень с UNIX и выше NT. Если NT работает только на процессорах x86 и Alpha, то Linux — на x86, Alpha, Power PC, SPARC, Motorola 68k, и этот список наверняка можно продолжить.
В настоящее время некоторые главные производители PC предлагают модели с предустановленной Linux. Среди них IBM, Dell и Hewlett-Packard, Compaq/Digital, Dell, Intergraph, SGI. Однако их разработки предлагаются пока главным образом для рынка сетевых решений и в качестве Интернет-сервера. Существует также множество фирм, ориентированных на работу с индивидуальными пользователями, которые предоставляют аппаратное, программное обеспечение для Linux и оказывают сервисные услуги по установке и сопровождению Linux.
Первая и самая главная, с точки зрения пользователя, проблема Linux — недостаток прикладного программного обеспечения — в настоящее время успешно решается. Кроме множества свободно распространяемых прикладных программ, появляются программы для коммерческого использования.
Существуют различные графические оболочки для Linux, а также то, что сейчас принято называть «офисным» программным обеспечением: то есть необходимые большинству пользователей прикладные программы (текстовый и графический редактор, электронные таблицы, системы управления базами данных, программы доступа к Интернету, почтовые программы и др.). Некоторые производители программного обеспечения, особенно те, кто чувствует угрозу монополии Microsoft, предлагает версии Linux и версии своих продуктов под Linux, продолжая разрабатывать продукты для Windows. Например, Corel выпустила Corel Linux и Linux-версию WordPerfect, готовит к выпуску Linux-версию Corel PhotoPaint; Sun Microsystems купила немецкую компанию, которая разработала офисный пакет для Linux, названный StarOffice, и теперь предлагает его для свободной загрузки. Есть еще множество других достойных примеров.
На рынке САПР некоторые компании уже предложили Linux-версии своих продуктов, а другие заявляют, что находятся в стадии исследований или разработки таковых (Pro/Engineer, SolidWorks и др.). Компания SolidWorks перенесла программное обеспечение SolidWorks Java Viewer на Linux. Spatial Technology, разработчик широко используемого ядра твердотельного моделирования ACIS, анонсировала в мае 1999 года версию ядра, написанного для Linux, которое облегчает различным САПР переход на Linux. Bentley разработала академическую версию MicroStation для Linux.
Перед тем как известная компания Visio, разработчик пакета для подготовки диаграмм c одноименным названием и САПР IntelliCAD, стала действующим подразделением Microsoft, она сделала исходный код IntelliCAD открытым. Для дальнейшего развития и поддержки IntelliCAD был создан консорциум IntelliCAD Technology Consortium (http://www.intellicad.org/). В настоящее время на форуме IntelliCAD Technology Consortium между разработчиками и пользователями IntelliCAD ведется оживленная дискуссия о необходимости создания Linux-версии этой системы.
Но все-таки, «монстры» — разработчики САПР не спешат, делая свой бизнес на Windows NT-версиях своих систем. Более оперативны малоизвестные, особенно в нашей стране, компании. В таблице приведены некоторые ссылки на разработки САПР под Linux.
Уровни сложности и функциональности САПР, приведенных в таблице, изменяются в широких пределах, и о промышленном применении некоторых из них говорить еще рано. Например, в полностью свободном (в соответствии с проектом GNU) САПР FREEdraft пока еще не реализованы некоторые простейшие функции оформления чертежей. В то же время разработчики LinuxCAD 2000 говорят о полной замене функций AutoCAD в своей системе. САПР машиностроительного проектирования VariCAD позволяет вычерчивать сложные, насыщенные чертежи, проектировать как простейшие 3D-модели, так и сложные (до нескольких тысяч деталей) сборки. При этом VariCAD на платформе Linux требует значительно меньших аппаратных ресурсов (рис. 2, 3, 4), чем на платформе Windows NT. При этом стоимость системы примерно на порядок ниже стоимости аналогичных по функциональным возможностям САПР под Windows NT.
Сложные 2D-чертежи и простые 3D-сборки требуют при работе с VariCAD компьютер 486/66 или выше (рекомендуется Pentium) с 16 Mбайт (Windows 95, Linux) или 24 Mбайт (Windows NT) RAM, 30 Mбайт дискового пространства, 1 Mбайт графическая карта (2 Mбайт рекомендуется для 3D).
Сборочные чертежи и среднего размера сборки требуют при работе с VariCAD Pentium-120 или выше, с 32 Mбайт (Windows 95, Linux) или 64 Mбайт (Windows NT) RAM, 30 Mбайт дискового пространства, 2 Mбайт видеопамяти (рекомендуется: 8 Mбайт, чип Permedia 2 для вращения в реальном времени).
Сложные многокомпонентные сборки (тысячи деталей) требуют при работе с VariCAD Pentium-200 (рекомендуется Pentium II) с 64 Mбайт (Windows 95, Linux) или 128 Mбайт (Windows NT) RAM, 30 Mбайт дискового пространства, 8 (16-32) Mбайт видеопамяти, чип Permedia 2 (3), ATI Rage 128, Riva TNT 2 для вращения в реальном времени.
Какие же выводы можно сделать в результате проведенного исследования?
В свое время прошла быстрая миграция высокотехнологичных САПР с платформы UNIX на платформу Windows NT. Это стало возможным, когда более дешевые PC достигли производительности RISC-станций, работающих под UNIX, и Windows NT смогла поддерживать большие размеры памяти и мощные графические платы. Сейчас уже стало ясно, что NT не так стабильна и расширяема, как UNIX, и не менее сложна в поддержке. Основной причиной к миграции на NT была не только значительно более низкая стоимость аппаратных средств, но и чрезмерная стоимость лицензий UNIX. Теперь, когда Linux предлагает те же функциональное назначение и устойчивость и даже меньшую стоимость, чем NT, ситуация меняется. В настоящее время в связи с переходом от Windows NT к Windows 2000 многие компании стоят перед проблемой выбора. Если Linux удастся серьезно потеснить Windows на рынке операционных систем, вопрос о появлении Linux-версий высокотехнологичных САПР будет решен однозначно и в короткие сроки.
Готовы ли предприятия — пользователи САПР к такому повороту событий?
В статье использованы материалы Интернет-источников
«САПР и графика» 9'2000