Кіріспе

Presentation Manager (PM) — IBM және Microsoft 1988 жылдың соңында өздерінің OS/2 операциялық жүйесінің 1.1 нұсқасында ұсынған графикалық пайдаланушы интерфейсі (GUI).

Тарих

Microsoft 1981 жылы графикалық пайдаланушы интерфейсін (GUI) әзірлеуді бастады. Ол IBM-ді де GUI қажет екеніне көндіргеннен кейін, 1987-1988 жылдары Microsoft пен IBM-нің Hursley Lab бірлесіп Presentation Manager (PM; Winthorn кодовый аты) құрды. Ол Microsoft Windows және IBM-нің негізгі графикалық жүйесінің (GDDM) аралық нұсқасы болды. Windows сияқты, ол хабарламаларға негізделген, көптеген хабарламалар тіпті бірдей болды, бірақ бірнеше маңызды айырмашылықтар да болды. Presentation Manager пайдаланушы үшін алдағы Windows 2.0-ға өте ұқсас болу үшін жасалса да, және PM қолданбасының құрылымы Windows қолданбасының құрылымына жақын болса да, Windows-пен бастапқы код үйлесімділігі мақсат емес еді. Microsoft үшін Presentation Manager-ді әзірлеу Windows дизайнындағы кейбір қателерді түзету мүмкіндігі болды. Екі компания Presentation Manager мен Windows 2.0 шамамен бірдей болады деп мәлімдеді. Windows пен PM арасындағы ең маңызды айырмашылықтардың бірі координаттар жүйесі болды. Windows-та 0,0 координаты жоғарғы сол жақ бұрышта орналасса, PM-де төменгі сол жақ бұрышта болды. Тағы бір айырмашылық – барлық сурет салу операциялары Windows-тағы құрылғы контексіне (DC) бағытталды. PM-де де DC қолданылды, бірақ презентациялық кеңістік (PS) деп аталатын қосымша абстракция деңгейі болды. OS/2-де графикалық бағдарламалау интерфейсінде (GPI) одан да қуатты сурет салу функциялары болды. Кейбір GPI тұжырымдары (мысалы, көру түрлендірулері) кейіннен Windows NT-ге енгізілді. OS/2 бағдарламалау моделі таза деп есептелді, себебі терезе процедурасын, WinMain-ді және стандартты емес функцияның кіріспесі мен қорытындысын ашық түрде экспорттау қажеттілігі болмады.

Қос жол

IBM мен Microsoft-тың бөлінуіне ең көп сілтеме жасалатын себептердің бірі – Presentation Manager мен Windows арасындағы API-лердің өзгешелігі болды, бұл, әдетте, IBM-нің ықпалымен болған. Бастапқыда Presentation Manager Windows GUI кодына негізделген және пропорционалды шрифттерді қолдау сияқты, көбінесе алдын ала дамылған мүмкіндіктерге ие болды (бұл мүмкіндік Windows-та тек 1990 жылы пайда болды). Өзгешеліктердің бірі – (0,0) координатасының орналасуына қатысты: Windows-та ол сол жақ жоғарғы бұрышта, ал Presentation Manager-де сол жақ төменгі бұрышта (декарт координаталарындағыдай) орналасқан. Іс жүзінде, GUI бағдарламасын екінші жүйеде жұмыс істеуі үшін қайта құрастыру мүмкін болмады, бірақ бір кезде автоматтандырылған бастапқы кодты түрлендіру құралы ұсынылған болатын. Екі компания да пайдаланушылардың OS/2 жүйесіне көшетініне үміттенді. 1990 жылы Windows 3.0 нұсқасы кең көлемде сатыла бастады, ал Microsoft OS/2-ге деген қызығушылығын жоғалта бастады, себебі OS/2 нарығындағы қызығушылық тіпті бұрыннан Windows-қа қарағанда әлдеқайда төмен болды. Компаниялар тарап кетті, ал IBM барлық келешектегі дамуды өз мойнына алды. Microsoft OS/2 3.0-ды алды және оны Windows NT деп атады, соның салдарынан ол Presentation Manager-дің кейбір ерекшеліктерін мұра етті. IBM Presentation Manager-ді дамытуды жалғастырды. OS/2-нің кейінгі нұсқаларында және ArcaOS сияқты туындыларында ол Workplace Shell объектіге бағытталған интерфейсінің негізі ретінде пайдаланылды. GUI қабаты жүйенің қалған бөліктерімен тығыз байланысты, бірақ OS/2-нің кейбір бөліктерін мәтіндік консольден немесе X терезесінен іске қосуға болады, сондай-ақ OS/2-ні Presentation Manager-сыз командалық қатарға жүктеуге болады (мысалы, TSHELL арқылы).

Unix- тің презентация менеджері

1980-ші жылдардың соңында Hewlett Packard және Microsoft компаниялары X11 терезелік жүйесінде жұмыс істейтін Unix жүйелері үшін Presentation Manager-ді іске асыру бойынша ынтымақтастықта жұмыс істеді. Бұл порт екі бөлек бағдарламалық құралдан тұрды: CXI (Common X Interface) деп аталатын құралдар жиынтығы, терезе менеджері және стильдік нұсқаулық, сондай-ақ Unix үшін Presentation Manager API-ның PM/X деп аталатын нұсқасы. CXI және PM/X екеуі де Unix жүйелері үшін OSF-тің (Ашық бағдарламалық қамтамасыз ету қоры) жаңа пайдаланушы интерфейсі стандарты ретінде қарастырылу үшін ұсынылды, ол кейін Motif болып дамыды. OSF ақырында CXI-ды таңдады, бірақ PM/X орнына Digital Equipment Corporation-ның XUI API-ін пайдаланды. Motif-тің шығарылымынан кейін Microsoft және HP PM/X-ті дамытуды біраз уақытқа дейін жалғастырды, Microsoft бұл өнімді OS/2 және SCO-ның Unix өнімдеріне бірыңғай пайдаланушы интерфейсін енгізу мақсатында SCO-мен бірлескен әзірлеме стратегиясына енгізді, бірақ ақырында одан бас тартылды.

Техникалық мәліметтер

PM ортақ пайдаланушы интерфейсі конвенцияларын сақтайды. Сондай-ақ, мәтінді көшіру және қою үшін тышқанның бірнеше пернесін басуды қолдайды. Маңызды мәселе – жалғыз кіріс кезені: жауап бермейтін бағдарлама пайдаланушы интерфейсі хабарламаларын өңдеуді тоқтата алады, соның салдарынан графикалық интерфейс тоқтап қалады. Бұл мәселе Windows NT жүйесінде шешілді, онда мұндай бағдарлама экрандағы қозғалмайтын тіктөртбұрышқа айналады; кейінгі нұсқаларда оны жылжытуға немесе жасыруға болады. OS/2 жүйесінде бұл мәселе FixPack арқылы шешілді, бағдарламаның оқиғаларға жауап бермейтінін анықтау үшін таймер пайдаланылды.