Wprowadzenie Do Systemu X Window

Total Page:16

File Type:pdf, Size:1020Kb

Wprowadzenie Do Systemu X Window Wprowadzenie do systemu X Window Witold Paluszy´nski Katedra Cybernetyki i Robotyki Politechnika Wroc lawska http://www.kcir.pwr.edu.pl/~witold/ 2001–2013 Ten utw´or jest doste֒ pny na licencji Creative Commons Uznanie autorstwa- Na tych samych warunkach 3.0 Unported Utw´or udoste֒ pniany na licencji Creative Commons: uznanie autorstwa, na tych samych warunkach. Udziela sie֒ zezwolenia do kopiowania, rozpowszechniania i/lub modyfikacji tre´sci utworu zgodnie z zasadami w/w licencji opublikowanej przez Creative Commons. Licencja wymaga podania oryginalnego autora utworu, a dystrybucja materia l´ow pochodnych mo˙ze odbywa´c sie֒ tylko na tych samych warunkach (nie mo˙zna zastrzec, w jakikolwiek spos´ob ograniczy´c, ani rozszerzy´c praw do nich). Za lo˙zenia i historia systemu X window System X Window zosta l opracowany na uniwersytecie M.I.T. w roku 1984 jako standard przemys lowy tworzenia system´ow okienkowych, niezale˙znych od platformy sprze֒ towej i programowej, w ´srodowisku sieciowym. W za lo˙zeniach mia l by´c zaimplementowany powy˙zej systemu operacyjnego komputera, i umo˙zliwia´c komunikacje֒ (wy´swietlanie okienek i obrazk´ow) mie֒ dzy r´o˙znymi rodzajami komputer´ow, r´o˙znych producent´ow, z gdzie indziej napisanym .oprogramowaniem, i by´c mo˙ze pod kontrola֒ innego administratora systemu Cel sformu lowany przez tw´orc´ow systemu zosta l osia֒gnie֒ ty. W roku 1987 wprowadzono wersje֒ 11 systemu (nazywanego te˙z X11), kt´ora jest jego bie˙za֒ca֒ wersja֒. W tym czasie powsta lo kilka kolejnych wyda´n (release) rozszerzaja֒cych funkcjonalno´sci systemu. Najnowszym jest wydanie 7, tzw. X11R7, z roku 2005 (11 lat po R6). Jednak poza pewnymi rozszerzeniami zasadniczy protok´o l komunikacyjny systemu X Window pozosta l w wersji 11 niezmieniony, i programy uruchomione np. w roku 1987 moga֒ komunikowa´c sie֒ z programami aktualnie kompilowanymi. ,X Window nadzoruje obecnie X Consortium zrzeszaja֒ce producent´ow, firmy i organizacje zainteresowane u˙zytkowaniem i rozwojem systemu. System X Window — wprowadzenie 3 System X Window — znaczenie spo leczne Od pocza֒tku system X Window by l projektem otwartym — zak lada l ca lkowita֒ jawno´s´c opracowanej koncepcji i zamiar udoste֒ pnienia systemu zainteresowanym jednostkom. M.I.T. od pocza֒tku udoste֒ pnia l wszystkie opracowane programy w wersji ´zr´od lowej zar´owno producentom oprogramowania, jak i u˙zytkownikom. Mie֒ dzy innymi dlatego system zosta l od pocza֒tku zaakceptowany przez mie֒ dzynarodowe konsorcjum producent´ow sprze֒ tu komputerowego jako standard systemu okienkowego, i koncepcja tego systemu jest najpowszechniej .przyje֒ ta֒ koncepcja֒ takiego systemu System X Window — wprowadzenie 4 Model konstrukcji programu graficznego Tradycyjny schemat programu graficznego Model X Window programu graficznego biblioteka procedur gra− biblioteka procedur gra− Program zródlowy ficznych zamieniajacych ficznych zamieniajacych Program zródlowy operacje graficzne wyso− operacje graficzne wy− wywolania procedur kiego rzedu na operacje sokiego rzedu na wywo− wywolania procedur wysokiego rzedu two− obslugujace konkretne lania protokolu X nie− wysokiego rzedu two− rzacych obiekty graficzne urzadzenie wyswietlajace zalezne od systemu ani rzacych obiekty graficzne sprzetu wyswietlajacego kompilator kompilator Program binarny Program binarny kod obsluguje konkretne kod wysyla polecenia urzadzenie graficzne protokolu X Window do serwera serwer X Window odbiera polecenia pro− tokolu X Window i obsluguje konkretne urzadzenie graficzne SIEC System X Window — wprowadzenie 5 Podstawowe pojecia֒ i architektura systemu X Window Sk ladniki systemu X Window: ,(serwer ekranowy: urza֒dzenie u˙zytkownika (ekran, klawiatura, mysz • i program obs luguja֒cy; najcze´s֒ ciej serwer jest uruchamiany na stacji roboczej albo komputerze typu PC, aczkolwiek istnieja֒ sprze֒ towe realizacje serwer´ow X Window, klienty: programy wy´swietlaja֒ce; moga֒ by´c uruchamiane na tym samym • komputerze co serwer X Window, albo gdziekolwiek w Internecie, w tym r´ownie˙z z komputera o innej architekturze, procesorze, systemie operacyjnym, • protok´o l X komunikacji klient´ow z serwerami. System X Window — wprowadzenie 6 Serwer X Window Rola serwera X Window — obs luga zdarze´nserwera: • odbieranie sygna l´ow od myszy i z klawiatury oraz przekazywanie ich klientowi aktywnemu (ang. focus), • odbieranie polece´n i zapyta´n klient´ow i ich realizacja. Serwer X Window jest programem, kt´ory standardowo nazywa sie֒ X, zatem normalnie jego uruchomienie polega po prostu na wywo laniu tego programu. Uruchomienie go lego”serwera X Window jest niewystarczajace, poniewa˙z ֒ ” pomimo i˙z jest on programem u˙zytkownika, sam nie mo˙ze by´c przez niego sterowany. Co najmniej pierwszy klient musi by´curuchomiony z zewnatrz.֒ Tradycyjnie, najwa˙zniejszym klientem, zwykle uruchamianym ,w domy´slnej konfiguracji, by l emulator terminala, np. xterm. Dzie֒ ki niemu u˙zytkownik serwera uzyskiwa l zdolno´s´c uruchamiania dowolnych program´ow okienkowych (klient´ow X Window), konfiguracji systemu, i og´olnie pracy. System X Window — serwer 7 Program xinit Program xinit pozwala wygodnie uruchamia´c serwer X Window. Wywo luje on serwer X, i od razu powoduje wykonanie skryptu (pliku) ${HOME}/.xinitrc: xedit -geometry -0-0 ~/.xinitrc & xclock -geometry -0+0 & xset s on s 300 xsetroot -solid ’#006060’ xterm Pierwsze dwa wiersze uruchamiaja֒ klienty okienkowe jako procesy t la (& na .ko´ncu). Programy te pracuja֒ trwale, do momentu ich jawnego zako´nczenia ,Kolejne dwa wiersze uruchamiaja֒ klienty X Window, kt´ore konfiguruja֒ serwer wydaja֒c mu pewne polecenia. Nie wy´swietlaja֒ one okienek, i szybko ko´ncza֒ .prace֒ , dlatego nie jest konieczne ich uruchamianie w tle Ostatni wiersz uruchamia zn´ow trwa ly”program okienkowy xterm. Jest on ” uruchamiany jako pierwszoplanowy, poniewa˙z po wykonaniu ca lego skryptu xinit zamyka serwer X i ko´nczy prace֒ . Gdyby ostatni klient by l uruchomiony w tle, ca la sesja by laby kr´otka i zosta laby automatycznie zamknie֒ ta. Wykonanie ostatniego klienta w pierwszym planie powoduje, ˙ze sesja trwa dop´oki dzia la ten ostatni klient. Pe lni on wie֒ c role֒ steruja֒ca֒ dla serwera X Window. Zako´nczenie xterm przez u˙zytkownika powoduje r´ownie˙z zako´nczenie sesji okienkowej. System X Window — serwer 8 Konwencje i mechanizmy systemu X Window :Zwr´o´cmy uwage֒ na pewne wbudowane mechanizmy systemu X Window ֒:Operacje mysza • lewy klawisz myszy wybiera i zaznacza (r´ownie˙z 2-click, 3-click), • ´srodkowy wkleja zaznaczony tekst, • prawy uruchamia menu kontekstowe (je´sli klient ma takie). — Stos okienek — Okienka wy´swietlane sa֒ na ekranie w kolejno´sci stosowej te p´o´zniej wy´swietlone moga֒ przykry´c te wcze´sniejsze. Ten stos okienek jest sta ly i u˙zytkownik nie mo˙ze nim sterowa´c. Je´sli jednak klient wy´swietlaja֒cy okienko na szczycie stosu zostanie zako´nczony, to ods loni sie֒ okienko poprzedniego klienta, itd. Wyb´or okna/klienta aktywnego (focus) — Okno w kt´orym jest wska´znik myszy jest aktywne. Ten klient otrzymuje znaki z klawiatury i zdarzenia myszy. Gdy wska´znik myszy jest w tle ekranu, ˙zadne okno nie jest aktywne. Nie potrzeba klika´c na okienko, aby uczyni´c je aktywnym. Jednocze´snie aktywno´s´c okienka nie jest zwia֒zana z wy´swietlaniem na szczycie stosu. Ten .(domy´slny spos´ob wyboru aktywnego nazywa sie֒ : focus-follows-mouse (FFM System X Window — serwer 9 Dynamiczna konfiguracja serwera X Window Serwer X Window posiada wiele cech i funkcji, z kt´orych niekt´orymi mo˙zna sterowa´c w czasie pracy. Istnieje dedykowany klient xset, kt´ory wysy la pewne polecenia serwerowi, zgodne z argumentami wywo lania, np.: xset r off # wylacza autorepeat na klawiaturze xset s on s 300 # wygaszanie ekranu po 300 sekundach xset pozwala r´ownie˙z ustawia´c serwerowi wa˙zniejsze parametry, jak np. ´scie˙zka doste֒ pu do czcionek (patrz ni˙zej), albo parametry sterowania zasilaniem .(monitora (sa֒ jednak one zale˙zne od konkretnej implementacji serwera Program xsetroot pozwala ustawia´c parametry wy´swietlanego okna serwera, kt´ore ma posta´c t la ekranu X Window. xsetroot -solid ’#006060’ Istnieja֒ jeszcze inne funkcje i parametry serwera, kt´ore mo˙zna ustawia´c w czasie pracy, jak np. autoryzacja wy´swietlania albo zasoby, i s lu˙za֒ do tego specjalne .klienty. Be֒ dzie o nich mowa dalej System X Window — serwer 10 Klienty X Window Po la֒czenie klient´ow z serwerem: o ile serwer normalnie komunikuje sie֒ • z wieloma klientami jednocze´snie, obs luguja֒c ich ˙za֒dania, to ka˙zdy klient typowo wysy la dane do wy´swietlania do jednego konkretnego serwera. • Zdarzenia klienta: sygna ly z klawiatury, od myszy, a tak˙ze inne zdarzenia .przekazywane klientom przez serwer, np. zdarzenie ods lonie֒ cia :Standardowe argumenty wywo lywania klient´ow okre´slaja֒ takie parametry jak • adres serwera: -display adres-ip:0.0 geometrie֒ : -geometry szer×wys±xoff±yoff czcionki: -fn ’-misc-fixed-bold-r-normal–15-140-75-75-c-90-iso8859-2’ kolory: -fg yellow -bg blue -bd red inne: -title xxx -iconic ... • Wiele klient´ow ma wiele parametr´ow konfiguracyjnych zwanych zasobami, o kt´orych ni˙zej. Poza tym niekt´ore rozbudowane wsp´o lczesne klienty X Window, jakimi sa֒ • .np. firefox, acroread, openoffice, itp. maja֒ swoje w lasne systemy konfiguracji Podobnie graficzne ´srodowiska, zwane pulpitami, be֒ da֒ce konfiguracjami .okienek, ustawie´n, konwencji, i protoko l´ow komunikacji mie֒ dzy klientami System X Window — klienty 11 Zestaw klient´ow X Window Zarzadzanie֒ systemem X Window U˙zytkowe xinit,startx - uruchamianie serwera X xbiff
Recommended publications
  • Porting a Window Manager from Xlib to XCB
    Porting a Window Manager from Xlib to XCB Arnaud Fontaine (08090091) 16 May 2008 Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version pub- lished by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License". Contents List of figures i List of listings ii Introduction 1 1 Backgrounds and Motivations 2 2 X Window System (X11) 6 2.1 Introduction . .6 2.2 History . .6 2.3 X Window Protocol . .7 2.3.1 Introduction . .7 2.3.2 Protocol overview . .8 2.3.3 Identifiers of resources . 10 2.3.4 Atoms . 10 2.3.5 Windows . 12 2.3.6 Pixmaps . 14 2.3.7 Events . 14 2.3.8 Keyboard and pointer . 15 2.3.9 Extensions . 17 2.4 X protocol client libraries . 18 2.4.1 Xlib . 18 2.4.1.1 Introduction . 18 2.4.1.2 Data types and functions . 18 2.4.1.3 Pros . 19 2.4.1.4 Cons . 19 2.4.1.5 Example . 20 2.4.2 XCB . 20 2.4.2.1 Introduction . 20 2.4.2.2 Data types and functions . 21 2.4.2.3 xcb-util library . 22 2.4.2.4 Pros . 22 2.4.2.5 Cons . 23 2.4.2.6 Example . 23 2.4.3 Xlib/XCB round-trip performance comparison .
    [Show full text]
  • Lightweight Distros on Test
    GROUP TEST LIGHTWEIGHT DISTROS LIGHTWEIGHT DISTROS GROUP TEST Mayank Sharma is on the lookout for distros tailor made to infuse life into his ageing computers. On Test Lightweight distros here has always been a some text editing, and watch some Linux Lite demand for lightweight videos. These users don’t need URL www.linuxliteos.com Talternatives both for the latest multi-core machines VERSION 2.0 individual apps and for complete loaded with several gigabytes of DESKTOP Xfce distributions. But the recent advent RAM or even a dedicated graphics Does the second version of the distro of feature-rich resource-hungry card. However, chances are their does enough to justify its title? software has reinvigorated efforts hardware isn’t supported by the to put those old, otherwise obsolete latest kernel, which keeps dropping WattOS machines to good use. support for older hardware that is URL www.planetwatt.com For a long time the primary no longer in vogue, such as dial-up VERSION R8 migrators to Linux were people modems. Back in 2012, support DESKTOP LXDE, Mate, Openbox who had fallen prey to the easily for the i386 chip was dropped from Has switching the base distro from exploitable nature of proprietary the kernel and some distros, like Ubuntu to Debian made any difference? operating systems. Of late though CentOS, have gone one step ahead we’re getting a whole new set of and dropped support for the 32-bit SparkyLinux users who come along with their architecture entirely. healthy and functional computers URL www.sparkylinux.org that just can’t power the newer VERSION 3.5 New life DESKTOP LXDE, Mate, Xfce and others release of Windows.
    [Show full text]
  • Antix Xfce Recommended Specs
    Antix Xfce Recommended Specs Upbeat Leigh still disburden: twill and worthful Todd idolatrizes quite deuced but immobilizing her rabato attitudinizedcogently. Which her Kingstonfranc so centennially plasticizes so that pratingly Odin flashes that Oscar very assimilatesanticlockwise. her Algonquin? Denatured Pascale Menu is placed at the bottom of paperwork left panel and is difficult to browse. But i use out penetration testing machines as a lightweight linux distributions with the initial icons. Hence, and go with soft lower score in warmth of aesthetics. Linux on dedoimedo had the installation of useful alternative antix xfce recommended specs as this? Any recommendations from different pinboard question: the unique focus styles in antix xfce recommended specs of. Not recommended for! Colorful background round landscape scenes do we exist will this lightweight Linux distro. Dvd or gui, and specs as both are retired so, and a minimal resources? Please confirm your research because of recommended to name the xfce desktop file explorer will change the far right click to everything you could give you enjoy your linux live lite can see our antix xfce recommended specs and. It being uploaded file would not recommended to open multiple windows right people won, antix xfce recommended specs and specs and interested in! Based on the Debian stable, MX Linux has topped the distrowatch. Dedoimedo a usb. If you can be installed on this i have downloaded iso image, antix xfce recommended specs and specs as long way more adding ppas to setup further, it ever since. The xfce as a plain, antix can get some other than the inclusion, and specs to try the.
    [Show full text]
  • Qtile Documentation Release 0.15.1
    Qtile Documentation Release 0.15.1 Aldo Cortesi Apr 14, 2020 Contents 1 Getting started 1 1.1 Installing Qtile..............................................1 1.2 Configuration...............................................5 2 Commands and scripting 25 2.1 Commands API............................................. 25 2.2 Scripting................................................. 28 2.3 qshell................................................... 28 2.4 iqshell.................................................. 30 2.5 qtile-top.................................................. 31 2.6 qtile-run................................................. 31 2.7 qtile-cmd................................................. 31 2.8 dqtile-cmd................................................ 34 3 Getting involved 37 3.1 Contributing............................................... 37 3.2 Hacking on Qtile............................................. 38 4 Miscellaneous 43 4.1 Reference................................................. 43 4.2 Frequently Asked Questions....................................... 107 4.3 License.................................................. 108 Index 109 i ii CHAPTER 1 Getting started 1.1 Installing Qtile 1.1.1 Distro Guides Below are the preferred installation methods for specific distros. If you are running something else, please see In- stalling From Source. Installing on Arch Linux Stable versions of Qtile are currently packaged for Arch Linux. To install this package, run: pacman -S qtile Please see the ArchWiki for more information on
    [Show full text]
  • SUSE® Linux Enterprise Desktop 12 and the Workstation Extension: What's New ?
    SUSE® Linux Enterprise Desktop 12 and the Workstation Extension: What's New ? Frédéric Crozat <[email protected]> Enterprise Desktop Release Manager Scott Reeves <[email protected]> Enterprise Desktop Development Manager Agenda • Design Criteria • Desktop Environment in SUSE Linux Enterprise 12 • GNOME Shell • Desktop Features and Applications 2 Design Criteria SUSE Linux Enterprise Desktop Interoperability Ease of Use Security Ease of Management Lower Costs 4 SUSE Linux Enterprise Desktop 12 • Focus on technical workstation ‒ Developers and System administrators • One tool for the job • Main desktop applications will be shipped: ‒ Mail client, Office Suite, Graphical Editors, ... • SUSE Linux Enterprise Workstation Extension ‒ Extend SUSE Linux Enterprise Server with packages only available on SUSE Linux Enterprise Desktop. (x86-64 only) 5 Desktop in SUSE Linux Enterprise 12 As Part of the Common Code Base SUSE Linux Enterprise 12 Desktop Environment • SUSE Linux Enterprise 12 contains one primary desktop environment • Additional light-weight environment for special use-cases: ‒ Integrated Systems • Desktop environment is shared between the server and desktop products 7 SUSE Linux Enterprise 12 Desktop Environment • GNOME 3 is the main desktop environment ‒ SLE Classic mode by default ‒ GNOME 3 Classic Mode and GNOME 3 Shell Mode also available • SUSE Linux Enterprise 12 ships also lightweight IceWM ‒ Targeted at Integrated Systems • QT fully supported: ‒ QT5 supported for entire SLE12 lifecycle ‒ QT4 supported, will be removed in future
    [Show full text]
  • Release Notes for X11R7.5 the X.Org Foundation 1
    Release Notes for X11R7.5 The X.Org Foundation 1 October 2009 These release notes contains information about features and their status in the X.Org Foundation X11R7.5 release. Table of Contents Introduction to the X11R7.5 Release.................................................................................3 Summary of new features in X11R7.5...............................................................................3 Overview of X11R7.5............................................................................................................4 Details of X11R7.5 components..........................................................................................5 Build changes and issues..................................................................................................10 Miscellaneous......................................................................................................................11 Deprecated components and removal plans.................................................................12 Attributions/Acknowledgements/Credits......................................................................13 Introduction to the X11R7.5 Release This release is the sixth modular release of the X Window System. The next full release will be X11R7.6 and is expected in 2010. Unlike X11R1 through X11R6.9, X11R7.x releases are not built from one monolithic source tree, but many individual modules. These modules are distributed as individ- ual source code releases, and each one is released when it is ready, instead
    [Show full text]
  • Review: Classic Mac OS the X Window System ("X") X
    Review: Classic Mac OS The X Window System ("X") • Designed for the user, not the developer • Asente, Reid (Stanford): W window system for V OS, (1982) • First commercially successful GUI system • W moved BWS&GEL to remote machine, replaced local library calls with • Technically few advances synch. communication • One address space, one process, “no” OS • Simplified porting to new architectures, but slow under Unix • But revolutionary approach to UI consistency (HI Guidelines) • MIT: X as improvement over W (1984) • Macintosh Toolbox • Asynchronous calls: much-improved performance • Pascal procedures grouped into Managers, ROM+RAM • Application = client, calls X Library (Xlib) which packages and sends GEL • Extended as technology advanced (color, multiprocessing,...), but calls to the X Server and receiving events using the X Protocol. architecture was showing its age by late 90s • Similar to Andrew, but window manager separate • Inspiration for other GUIs, esp. MS Windows • X10 first public release, X11 cross-platform redesigned Jan Borchers 1 media computing group Jan Borchers 2 media computing group X: Architecture X Server • X11 ISO standard, but limited since static protocol Application • X server process combines GEL and BWS • X is close to Widget Set • Responsible for one keyboard (one EL), but n physical screens UITK our 4-layer WM Xt Intrinsics (GLs) architecture • One machine can run several servers Xlib model Xlib • Applications (with UITK) and WM are clients Network • GEL: Direct drawing, raster model, rectangular clipp. X Server BWS+GEL • X-Server layers: Device-dependent X (DDX), device-independent X (DIX) HW • BWS can optionally buffer output regions Jan Borchers 3 media computing group Jan Borchers 4 media computing group Typical Xlib application (pseudocode) X Protocol #include Xlib.h, Xutil.h Display *d; int screen; GC gc; Window w; XEvent e; main () { • Between X server process and X clients (incl.
    [Show full text]
  • Manjaro Linux
    MANJAROLINUX USERGUIDE THEMANJARODEVELOPMENTTEAM Copyright © 2018 the Manjaro Development Team. Licensed under the Attribution-ShareAlike 4.0 International Licence (the “Licence”); you may not use this file except in compliance with the License. You may obtain a copy of the Licence at: https://creativecommons.org/licenses/by-sa/4.0/legalcode Unless required by applicable law or agreed to in writing, software distributed under the Licence is distributed on an “as is” basis, without warranties or conditions of any kind, either express or implied. See the Licence for the specific language governing permissions and limitations under the Licence. The source code for this documentation can be downloaded from: https://github.com/manjaro/manjaro-user-guide/ user guide 5 The Manjaro Development Team Core Team Philip Müller Owner, Project Leader, Project Management and Co- ordination, Mirrors Manager, Server Manager, Packager, De- veloper, Web Developer Guillaume Benoit Developer, Moderation Ramon Buldó Developer, Packager Stefano Capitani Maintainer, Packager Bernhard Landauer Community Manager, Packager, Maintainer, Mod- eration, News Rob McCathie Maintainer Marcus Developer, Packager Teo Mrnjavac Developer Alexandre A. Arnt Developer, Moderation Ringo de Kroon Community Hugo Posnic Developer Artwork David Linares Designer Documentation Jonathon Fernyhough Editor of the User Guide 0.8.9-0.8.13, 15.09-15.12, Community Management, Cover art of the User Guide Sabras Wiki Manuel Barrette Editor of the User Guide 16.08-17.1, French transla- tion of the User Guide 17.0-17.1 Alumni Roland Singer Founder, Designer, Developer, Web Developer, Admin- istrator Carl Duff Community, Documentation and Wiki Management, Script- ing and Configuration Cumali Cinnamon and Gnome Community Editions Maintainer 6 manjaro linux Dan S.
    [Show full text]
  • The Puppy Linux Book Puppy Linux Version 4.1.2 Getting Started
    The Puppy Linux Book Puppy Linux version 4.1.2 Getting started Grant Wilson aka smokey01 and wombat01 Page 1 of 69 Table of Contents Disclaimer................................................................................................................3 Purchase a hard copy of the book............................................................................3 Make a Donation to the author................................................................................3 Introduction..............................................................................................................4 Why Use Puppy when I am happy with Windows?...................................................5 Software Accessible from the Desktop....................................................................7 Help......................................................................................................................8 Pmount the drive/media mounter........................................................................9 PETget package manager..................................................................................10 Setup..................................................................................................................11 Geany is a brilliant text editor............................................................................12 Console..............................................................................................................13 Xlock..................................................................................................................14
    [Show full text]
  • Aligning Intent and Behavior in Software Systems: How Programs Communicate & Their Distribution and Organization
    © 2020 William B. Dietz ALIGNING INTENT AND BEHAVIOR IN SOFTWARE SYSTEMS: HOW PROGRAMS COMMUNICATE & THEIR DISTRIBUTION AND ORGANIZATION BY WILLIAM B. DIETZ DISSERTATION Submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy in Computer Science in the Graduate College of the University of Illinois at Urbana-Champaign, 2020 Urbana, Illinois Doctoral Committee: Professor Vikram Adve, Chair Professor John Regehr, University of Utah Professor Tao Xie Assistant Professor Sasa Misailovic ABSTRACT Managing the overwhelming complexity of software is a fundamental challenge because complex- ity is the root cause of problems regarding software performance, size, and security. Complexity is what makes software hard to understand, and our ability to understand software in whole or in part is essential to being able to address these problems effectively. Attacking this overwhelming complexity is the fundamental challenge I seek to address by simplifying how we write, organize and think about programs. Within this dissertation I present a system of tools and a set of solutions for improving the nature of software by focusing on programmer’s desired outcome, i.e. their intent. At the program level, the conventional focus, it is impossible to identify complexity that, at the system level, is unnecessary. This “accidental complexity” includes everything from unused features to independent implementations of common algorithmic tasks. Software techniques driving innovation simultaneously increase the distance between what is intended by humans – developers, designers, and especially the users – and what the executing code does in practice. By preserving the declarative intent of the programmer, which is lost in the traditional process of compiling and linking and building software, it is easier to abstract away unnecessary details.
    [Show full text]
  • Op E N So U R C E Yea R B O O K 2 0
    OPEN SOURCE YEARBOOK 2016 ..... ........ .... ... .. .... .. .. ... .. OPENSOURCE.COM Opensource.com publishes stories about creating, adopting, and sharing open source solutions. Visit Opensource.com to learn more about how the open source way is improving technologies, education, business, government, health, law, entertainment, humanitarian efforts, and more. Submit a story idea: https://opensource.com/story Email us: [email protected] Chat with us in Freenode IRC: #opensource.com . OPEN SOURCE YEARBOOK 2016 . OPENSOURCE.COM 3 ...... ........ .. .. .. ... .... AUTOGRAPHS . ... .. .... .. .. ... .. ........ ...... ........ .. .. .. ... .... AUTOGRAPHS . ... .. .... .. .. ... .. ........ OPENSOURCE.COM...... ........ .. .. .. ... .... ........ WRITE FOR US ..... .. .. .. ... .... 7 big reasons to contribute to Opensource.com: Career benefits: “I probably would not have gotten my most recent job if it had not been for my articles on 1 Opensource.com.” Raise awareness: “The platform and publicity that is available through Opensource.com is extremely 2 valuable.” Grow your network: “I met a lot of interesting people after that, boosted my blog stats immediately, and 3 even got some business offers!” Contribute back to open source communities: “Writing for Opensource.com has allowed me to give 4 back to a community of users and developers from whom I have truly benefited for many years.” Receive free, professional editing services: “The team helps me, through feedback, on improving my 5 writing skills.” We’re loveable: “I love the Opensource.com team. I have known some of them for years and they are 6 good people.” 7 Writing for us is easy: “I couldn't have been more pleased with my writing experience.” Email us to learn more or to share your feedback about writing for us: https://opensource.com/story Visit our Participate page to more about joining in the Opensource.com community: https://opensource.com/participate Find our editorial team, moderators, authors, and readers on Freenode IRC at #opensource.com: https://opensource.com/irc .
    [Show full text]
  • How to Make an Old Computer Useful Again
    How to Make an Old Computer Useful Again Howard Fosdick (C) 2018 19.1 / 6.0.6.2 Who am I? * Independent Consultant (DBA, SA) * Refurbishing for charity is a hobby * Talked on this 12 years ago OMG! What'd I do this time? Stick figure by ViratSaluja at DeviantArt Photo by www.global1resources.com Why Refurb ? + Charity + Fun + Environment Agenda I. Why Refurb? II. How to – Hardware III. How to – Software Wikipedia -By Ana 2016 - Own work OR Refurbish = Reuse Recycle = Destroy What I Do Small Individuals Organizations Recyclers I fix it Individuals or Small Groups FreeGeek People Trash Good Hardware... Because of Software -- Windows slows down -- People don't know to tune it -- Perceive their system is obsolete -- Like a disposable razor blade -- Vendors like this I'm still on Win 7. I better toss it! Friggin' computer! ...too slow... It's outta here! 10 2015 8.1 2013 8 2012 7 2009 Vista 2007 Clipart @ Toonaday How Long Should a Computer Last? > Depends on use > Laptops vs Desktops ---or--- Consensus is 3 to 5 years Treat it like a car -- + Regular maintenance (tune ups) + Replace parts + Run age-appropriate software (Linux) -> Any dual-core is still useful Windows is excellent for many roles. Refurbishing is not one of them. Vendor Incentives -- Would you rather sell to a customer every 3 years, or every 9 years? -- Financial incentive to recycle... not refurbish + Incentives against pollution Vendors prefer this: Courtesy: Wikipedia uncredited Dirty Recycling ---vs--- Environmental Recycling Courtesy: AP/scmp.com Courtesy: Basel Action Network -- 80% is not Environmentally Recycled..
    [Show full text]