Кіріспе
Пайдаланушы интерфейстері компьютер үстелінің виртуалды кеңістігін кеңейту жолдарын сипаттайды, операциялық жүйелердегі графикалық пайдаланушы интерфейсі. Компьютердегі виртуалды үстел – бұл пайдаланушы интерфейстерімен байланысты, әдетте WIMP парадигмасы шеңберінде қолданылатын термин. Ол бағдарламалық қамтамасыз ету арқылы компьютер үстелінің виртуалды кеңістігін экранның физикалық шектерінен тысқары кеңейту жолдарын сипаттайды. Бұл үстел аумағының шектеулерін жоюға және іске қосылған графикалық қолданбалардың араласуын азайтуға көмектеседі. Экранның виртуалды аумағын кеңейтудің екі негізгі тәсілі бар. Біріншісі – ауыстырылатын виртуалды үстелдер, олар пайдаланушыға үстел көрініс терезесінің виртуалды көшірмелерін жасауға және олардың арасында ауысуға мүмкіндік береді, ашық терезелер бір виртуалды үстелде орналасады. Екінші тәсіл – физикалық дисплей құрылғысының мөлшерінен асып түсетіндей етіп, бір виртуалды экранның мөлшерін кеңейту. Әдетте, үлкен виртуалды үстелде навигациялау үшін виртуалды үстелдің бір бөлігін жылжыту/көшіру арқылы қарауға болады.
the graphical user interface in operating systems
In computing, a virtual desktop is a term used with respect to user interfaces, usually within the WIMP paradigm, to describe ways in which the virtual space of a computer's desktop environment is expanded beyond the physical limits of the screen's display area through the use of software. This compensates limits of the desktop area and is helpful in reducing clutter of running graphical applications. There are two major approaches to expanding the virtual area of the screen. Switchable virtual desktops allow the user to make virtual copies of their desktop view port and switch between them, with open windows existing on single virtual desktops. Another approach is to expand the size of a single virtual screen beyond the size of the physical viewing device. Typically, scrolling/panning a subsection of the virtual desktop into view is used to navigate an oversized virtual desktop.
Үстелдерді ауыстыру
Ауыстырылатын жұмыс үстелдері 1986 жылы Xerox PARC-те Остин Хендерсон мен Стюарт Кард тарапынан «Rooms» деп жобаланып, іске асырылды және (авторлар өз жариялануларына дейін білмеген) 1984 жылы Патрик Питер Чанның бұрынғы жұмысына ұқсас болды. Бұл жұмыс АҚШ патентімен қорғалған. Ауыстырылатын жұмыс үстелдерін Том ЛаСтрейндж 1989 жылы swm (X Window System үшін Solbourne Window Manager) бағдарламасында көптеген адамдарға таныстырды. ("Virtual Desktop" бастапқыда Solbourne Computer компаниясының тауарлық белгісі болған.) Компьютер экранындағы x, y координаталарында орналасудың орнына, іске қосылған бағдарламалардың терезелері белгілі бір виртуалды жұмыс үстеліндегі x, y координаталарында орналасады. Оларға қолданушы тек осы контекст белсенді болғанда ғана қол жеткізе алады. Ауыстыру жұмыс үстелі қолданушыға «контекстер» немесе экран кеңістігінің беттері арасында ауысу үшін пейджер ұсынады, олардың тек біреуі ғана компьютер экранында бір уақытта көрсетіледі. Көптеген X терезе менеджерлері ауыстыру жұмыс үстелдерін ұсынады.
Үлкен үстел үстелдері
Виртуалды жұмыс ортасының басқа түрлері дискретті виртуалды экрандарды ұсынбайды, бірақ қолда бар аппараттық құралдардың көрсету мүмкіндігінен артық үстелді аралап қарауға мүмкіндік береді. Бұл мүмкіндік кейде аралап қарау, прокруткалық жұмыс үстелдері немесе көріс терезесі деп аталады. Мысалы, егер графикалық картаның максималды ажыратымдылығы монитордың дисплей ажыратымдылығынан жоғары болса, виртуалды жұмыс ортасы менеджері терезелерді экранның "шетінен тысқары" орналастыруға рұқсат беруі мүмкін. Пайдаланушы тышқан курсорын дисплей шетіне жылжыту арқылы оларға өтуге болады. Үлкен виртуалды экранның көрінетін бөлігі көріс терезесі деп аталады.
Іске асыру
Виртуалды жұмыс үстелдерін басқарушылар графикалық интерфейсі бар көптеген операциялық жүйелер үшін қолжетімді және әртүрлі мүмкіндіктер ұсынады, мысалы, әрбір виртуалды жұмыс үстеліне әртүрлі тұсқағаздарды орнату, сондай-ақ пайдаланушыға әртүрлі экрандар арасында жылдам ауысуға мүмкіндік беретін ыстық түймелерді немесе басқа да ыңғайлы тәсілдерді қолдану.
Amiga (Амига)
Бірнеше үстел дисплейін аппараттық мүмкіндік ретінде іске асыратын алғашқы платформа 1985 жылы шыққан Amiga 1000 болды. Барлық Amiga графикалық копроцессорды, сонымен қатар "Copper" деп те аталатын, пайдалану арқылы бір мезгілде көрсетілетін бірнеше жад экрандарын қолдайды. Copper – қарапайым процессор болатын, ол экран позициясын күтіп, аппараттық тіркелгілерге жаза алатын. Жүйелік ROM API-де іске асырылған GUI-ді пайдалану арқылы бағдарламалар жадты жылжытпай, бірімен бірі тікелей байланыспаған жадтан бірнеше тәуелсіз экранды мөлдір түрде көрсетуге мүмкіндік алады. Бұл аппараттық негіздегі прокрутка (scrolling) блиттингті (blitting) қолданбайды, бірақ кейде аппараттық панорамалау (panning) деп аталатын нәрсеге ұқсас. Видео шығысына жай ғана (бір рет немесе бірнеше рет) қай жерде көрсету керектігін (сканжол) және қандай экран жады мекенжайынан алу керектігін айтылады. Экран күту немесе алу позициясын өзгерту арқылы кез келген орынға жылжуға немесе кез келген бөлігін көрсетуге болады. Әдетте, бұл бір байттық мәнмен жүзеге асырылады. Copperlist тік және көлденең күту позициялары бойынша сұрыпталуы керек еді. Ескерту: анықтамалық материалдар тізімі үшін http://www.faqs.org/faqs/amiga/books/ сайтына қараңыз. Әрбір үстел немесе "экран" өзінің түс тереңдігімен (көрсетілетін түстер саны) және ажыратымдылығымен (resolution) жабдықталуы мүмкін, соның ішінде араласуды (interlacing) қолдану да. Дисплейлік чипсет (PC-дегі "графикалық карта") осы үстел режимдерін жылдам ауыстыра алады, тіпті бір экранның салынуы кезінде де, әдетте экрандағы әрбір үстел арасында үш пикселдік ені бар жолмен. Дегенмен, егер бір аралас (жапырақтанған) үстел көрсетілсе, экрандағы барлық үстелдер сол сияқты әсерге ұшырайды. Бұл сондай-ақ операциялық жүйеге "Толық экран" және "терезеленген" стильдегі қосымшаларды бір ортада біріктіруге мүмкіндік берді. Кейбір бағдарламалар, мысалы VWorlds (астрономиялық симулятор) бірнеше үстел мүмкіндігін негізгі дисплей экранының үстіне басқару элементтерін қою үшін пайдаланды. Басқару элементтерін жоғары және төмен сүйреу арқылы негізгі дисплейдің көбірек немесе азырақ бөлігін көрсетуге болады.
Unix және Unix-қа ұқсас X11 немесе Wayland
Unix және Unix-қа ұқсас жүйелердің көбі X терезе жүйесін немесе Wayland протоколын терезелік ортаны қамтамасыз ету үшін пайдаланады, соңғысы 2020 жылдардың басында Linux негізделген жүйелерде кеңінен таралды. Бұл жүйелердің ерекшелігі – терезелерді безендіру, орналастыру және басқаруды біріншісінде терезе менеджері, ал екіншісінде композитор деп аталатын жеке, алмастырылатын бағдарлама жүзеге асырады. Осы бөліну үшінші тарап әзірлеушілеріне әртүрлі терезе менеджері мүмкіндіктерін енгізуге мүмкіндік берді, нәтижесінде X жүйесінде виртуалды жұмыс үстелі мүмкіндіктері ерте дамыды. Unix үшін виртуалды жұмыс үстелін алғаш рет 1990 жылы vtwm іске қосты. IXI Limited компаниясының Panorama Unix үшін жасалған коммерциялық виртуалды жұмыс үстелі өнімінің алғашқы мысалы болды. Көптеген қазіргі X терезе менеджерлері мен Wayland композиторлары виртуалды жұмыс үстелі мүмкіндіктерін қамтиды. Конфигурациялар екі виртуалды жұмыс үстеліден бірнеше жүзге дейін жетеді. GNOME және KDE сияқты ең танымал жұмыс орталары жұмыс кеңістіктері деп аталатын бірнеше виртуалды жұмыс үстелін пайдаланады. Олар белгілі бір санымен болуы мүмкін немесе қажеттілікке қарай жасалады. Кейбір терезе менеджерлері, мысалы FVWM, пайдаланушыға қосымшаларды одан әрі ұйымдастыруға мүмкіндік беретін жеке "үстелдерді" ұсынады. Мысалы, пайдаланушыда "Жұмыс" және "Үй" деп аталатын жеке үстелдер болуы мүмкін, екі үстелде де бірдей бағдарламалар жұмыс істейді, бірақ әртүрлі функцияларды орындайды. Кейбір терезе менеджерлері, мысалы dwm және Sawfish, "маркировканы" (немесе KDE үшін терезе ережелерін) қолдайды, онда қолданбаларды әрқашан белгілі бір жұмыс үстелінде, экранда және орналасуда іске қосу үшін конфигурациялауға болады, бұл автоматты ұйымдастыру мен тұрақты навигацияны қамтамасыз етеді.
OS/2
IBM-нің OS/2 операциялық жүйесінің OS/2 Warp 4 нұсқасы 1996 жылы бірнеше жұмыс орынды (туған тілінде 4-ке дейін) қамтыды. Бұл мүмкіндік ашық кодты XWorkplace жобасы арқылы да ұсынылды, ол 100-ге дейін виртуалды жұмыс орындарын қолдайды. XWorkplace OS/2-нің ArcaOS дистрибуциясына кіреді.
Терезелер
Windows 10 және 11 «Тапсырмалар тақтасы» деп аталатын жүйе арқылы виртуалды жұмыс үстелдерін ұсынады. Windows 10-нан бұрын Microsoft Windows виртуалды жұмыс үстелдерін пайдаланушыға қолжетімді етіп іске қоспаған. Windows архитектурасында «жұмыс үстелі объектілері» деп аталатын, кіру және қауіпсіз жұмыс үстелінің тізбектері үшін жеке экрандарды іске асыруға қолданылатын объектілер бар. Пайдаланушылардың өз жұмыс үстелдерін жасау немесе оларды бағдарламалармен толтырудың қарапайым және тікелей жолы жоқ. Дегенмен, көптеген үшінші тараптық (мысалы, VirtuaWin, Dexpot және басқалар) және жартылай қолдау көрсетілетін кейбір Microsoft өнімдері виртуалды жұмыс үстелдерін әртүрлі деңгейде іске асырады. Microsoft «Desktops» деп аталатын қосымша құралды ұсынады, ол Windows Vista немесе Windows Server 2008 және одан кейінгі операциялық жүйелерді пайдаланатын қолданушыларға 4 виртуалды жұмыс үстелінде бағдарламаларды іске қосуға мүмкіндік береді. Бұл құрал, жоғарыда айтылғандай, Windows үшін басқа виртуалды жұмыс үстелі шешімдерінен өзгеше, іс жүзінде туа біткен «жұмыс үстелі объектілерін» пайдаланады. Осы себепті, ол бағдарламаларды жұмыс үстелдер арасында жылжыту мүмкіндігін ұсынбайды және тіркелгеннен басқа, виртуалды жұмыс үстелдерін пайдалануды тоқтатуға да болмайды, сондай-ақ Windows Aero тек негізгі жұмыс үстелінде ғана жұмыс істейді. Microsoft бұрын Windows XP үшін Virtual Desktop PowerToy ұсынған, ол терезелерді топтастыру және көрсетудің кең таралған әдісі арқылы көптеген жұмыс үстелдерін симуляциялаған, әрбір топ әртүрлі жұмыс үстелі болып табылады. Алайда, ұсынылған функционалдық көптеген басқа виртуалды жұмыс үстелі шешімдерімен салыстырғанда шектеулі (мысалы, терезе берілген жұмыс үстелінде сақталады, тіпті оның қолданба жолағындағы түймесі жыпылықтайтын болса да және т.б.). Терезелерді жасыру және көрсету арқылы жұмыс істейтін барлық виртуалды жұмыс үстелі құралдарында қолданбалардың үйлесімділік мәселелері жиі кездеседі, себебі қолданба жасаушылар Windows платформасында виртуалды жұмыс үстелдердің қолданылуын күтпейді. Тарихи тұрғыдан алғанда, кейбір бейне карталарының драйверлерімен бірге келген бағдарламалық жасақтама виртуалды жұмыс үстелінің функционалдығын қамтамасыз еткен, мысалы, Nvidia-ның nView өнімінде (бұл өнім GeForce картасының иелері үшін Vista нұсқасынан бастап тоқтатылды). Бұл бағдарламалардың кейбіреулері Compiz-де қол жетімді ұқсас әдемі мүмкіндіктерді ұсынады. Windows үшін көптеген жұмыс үстелі қабықшаларын алмастыру, соның ішінде LiteStep, Emerge Desktop және басқалары да қосымша модульдер арқылы виртуалды жұмыс үстелдерін қолдайды.
Классикалық Mac OS
Классикалық Mac OS-де, жылдам прокруткаланатын жұмыс үстелдері Macintosh пайдаланушыларына 1986 жылы Wes Boyd (болашақта Berkeley Systems негізін қалаушы) жасаған, үшінші тараптың Stepping Out деп аталатын кеңейтуі арқылы қолжетімді болды. Apple компаниясы осы кеңейтудің кодын Mac OS-тің кейінгі нұсқасына енгізді, бірақ экраннан үлкен виртуалды жұмыс үстелдерін жасау мүмкіндігі жойылды. Оның орнына код, көру қабілеті нашар пайдаланушыларға жұмыс үстелінің бөліктерін үлкейтуге және оларды ірі, жақсырақ көрінетін кескіндер ретінде қарауға көмектесу үшін пайдаланылды.
macOS
Unix негізінде құрылғанына қарамастан, macOS графикалық интерфейсі үшін X терезесі жүйесін пайдаланбайды, ал алғашқы нұсқаларында виртуалды жұмыс үстелдеріне қолдау болмаған. 2007 жылдың соңында Mac OS X 10.5 Leopard нұсқасынан бастап, macOS 16 виртуалды жұмыс үстелге дейін қолдау көрсететін Spaces атты құрылғысымен бірге келеді, бұл қолданушыға бағдарламаларды нақты "жұмыс үстелге" байланыстыруға мүмкіндік береді. OS X 10.7 Lion нұсқасынан бастап бұл мүмкіндік Mission Control-ге көшірілді.
BeOS
BeOS "Workspaces" деп аталатын виртуалды жұмыс орындаларын қамтыды. 32-ге дейін әртүрлі жұмыс орындары қолдау көрсететін.