Questions for Linux Graphics

Total Page:16

File Type:pdf, Size:1020Kb

Questions for Linux Graphics www.YoYoBrain.com - Accelerators for Memory and Learning Questions for Linux Graphics Category: Default - (25 questions) Linux Graphics: a library ____ implements mesa OpenGL API Linux Graphics: when using OpenGL libdrm ioctls uses a special card-specific ____ to talk to the Linux kernel Linux Graphics: 3D rendering is done with OpenGL _____ Linux Graphics: 2D rendering is done using cairo ______ Linux Graphics: when using cairo for 2D XRender extension rendering, cairo sends primitives to XServer using _______ Linux Graphics: the wire protocol used by X11 the X Window system Linux Graphics: _____ is the reference Xlib implementation of client side of X Window system Linux Graphics: ____ is alternative to XLib XCB with much lower level API, and XLib is built on this currently Linux Graphics: ____ is the reference Xorg implementation of server side of X Window system Linux Graphics: D-Bus an inter-process communication system for software applications to communicate with one another Linux Graphics: X11 has a special extension XRender ____ which adds support for anti-aliased drawing primitives Linux Graphics: XServer and cairo share a pixman low level library called ____ for doing pixel level manipulation Linux Graphics: OpenGL is not a library, libGL.somesa each video card vendor is supposed to provide its own ____. Open source versions usually come from _____. Linux Graphics: gallium set of components to make implementing OpenGL drivers easier Linux Graphics: TGSI Tungsten Graphics Shader Infrastructure - intermediate language for describing shaders. Only intermediate used by all drivers. Part of gallium Linux Graphics: GLES GL Embedded systemiPhone supports GLES 2.0 Linux Graphics: GLX used to connect OpenGL and X11 Linux Graphics: Xorg and mesa upload DRM - "Direct Rendering Manager" card-specific commands to the kernel using _____ Linux Graphics: the Xgraphics part of Xorg DIX - driver independent X subsystemDDS - is made up of 2 major parts _____ and driver dependent X subsystem _____ Linux Graphics: the ioctl interface used to Intel's GEMTungsten Graphics' TTM allocate graphics commands on graphics card comes in 2 flavors ____ and ______ Linux Graphics: the synchronization DRI2 - direct rendering infrastructure between program, the kernel and X server is called ______ Linux Graphics: KMS Kernel Mode Setting - special subsystem inside of libdrm and kernel making it possible to directly set up a graphics mode, map frombuffer to display directly on a TTY Linux Graphics: the _____ allows a composite extensionComposite Overlay compositing window manager to set up COW Window (and what is this) Linux Graphics: _____ lets an OpenGL TFP - texture from Pixmap extension program use an X11 Pixmap as if it were an OpenGL texture Linux Graphics: AIGLX Accelerated Indirect GLX - way to run OpenGL as a networked protocol.
Recommended publications
  • THINC: a Virtual and Remote Display Architecture for Desktop Computing and Mobile Devices
    THINC: A Virtual and Remote Display Architecture for Desktop Computing and Mobile Devices Ricardo A. Baratto Submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy in the Graduate School of Arts and Sciences COLUMBIA UNIVERSITY 2011 c 2011 Ricardo A. Baratto This work may be used in accordance with Creative Commons, Attribution-NonCommercial-NoDerivs License. For more information about that license, see http://creativecommons.org/licenses/by-nc-nd/3.0/. For other uses, please contact the author. ABSTRACT THINC: A Virtual and Remote Display Architecture for Desktop Computing and Mobile Devices Ricardo A. Baratto THINC is a new virtual and remote display architecture for desktop computing. It has been designed to address the limitations and performance shortcomings of existing remote display technology, and to provide a building block around which novel desktop architectures can be built. THINC is architected around the notion of a virtual display device driver, a software-only component that behaves like a traditional device driver, but instead of managing specific hardware, enables desktop input and output to be intercepted, manipulated, and redirected at will. On top of this architecture, THINC introduces a simple, low-level, device-independent representation of display changes, and a number of novel optimizations and techniques to perform efficient interception and redirection of display output. This dissertation presents the design and implementation of THINC. It also intro- duces a number of novel systems which build upon THINC's architecture to provide new and improved desktop computing services. The contributions of this dissertation are as follows: • A high performance remote display system for LAN and WAN environments.
    [Show full text]
  • 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]
  • Ati Driver Freebsd
    Ati driver freebsd Hey, I`m new to teh the bsd *BSD world and just installed Freebsd FreeBSD. Only thing missing is my video driver. ATI Radeon X How to Solved - Switch between ATI and VESA drivers? If you want to automatically load a video driver at boot time, we recommend to do it from /etc/:Radeon​: ​ It allows the use of newer xfvideo-ati drivers and AMD GPUs. This project started in January Initial radeon code comes from Linux. EndSection DESCRIPTION radeon is an Xorg driver for ATI/AMD RADEON-based video cards with the following features: o Full support for 8-, , and. This package contains the xfvideo-ati driver. xdrivers/drm-kmod: Port for the DRM kernel drivers for FreeBSD This port. If I boot X11 with no or with ati driver, the system stops responding, although cursor continues to follow mouse movements. (I suppose. To all those concerned, I have read that FreeBSD would be supported by the latest graphic card drivers, which was also confirmed by. I bought an expensive ATI card when they announced they'll go Note that AMD doesn't provide a driver for FreeBSD, so you'll be using the. We now know for sure that FreeBSD will ship with a kernel mode-setting driver for supporting open-source AMD Radeon graphics with its. AMD tech support has allegedly confirmed that Catalyst is being ported to FreeBSD. A Phoronix reader pointed out this thread. I am not sure that FreeBSD will fully support this card. The Xorg version for FreeBSD is and the ATI driver used is version The reason is, AMD/ATI doesn't support FreeBSD, and you have to resort to the sucky open source drivers.
    [Show full text]
  • How-To Gnome-Look Guide
    HHOOWW--TTOO Written by David D Lowe GGNNOOMMEE--LLOOOOKK GGUUIIDDEE hen I first joined the harddisk, say, ~/Pictures/Wallpapers. right-clicking on your desktop Ubuntu community, I and selecting the appropriate You may have noticed that gnome- button (you know which one!). Wwas extremely look.org separates wallpapers into impressed with the amount of different categories, according to the customization Ubuntu had to size of the wallpaper in pixels. For Don't let acronyms intimidate offer. People posted impressive the best quality, you want this to you; you don't have to know screenshots, and mentioned the match your screen resolution. If you what the letters stand for to themes they were using. They don't know what your screen know what it is. Basically, GTK is soon led me to gnome-look.org, resolution is, click System > the system GNOME uses to the number one place for GNOME Preferences > Screen Resolution. display things like buttons and visual customization. The However, Ubuntu stretches controls. GNOME is Ubuntu's screenshots there looked just as wallpapers quite nicely if you picked default desktop environment. I impressive, but I was very the wrong size, so you needn't fret will only be dealing with GNOME confused as to what the headings about it. on the sidebar meant, and I had customization here--sorry no idea how to use the files I SVG is a special image format that Kubuntu and Xubuntu folks! downloaded. Hopefully, this guide doesn't use pixels; it uses shapes Gnome-look.org distinguishes will help you learn what I found called vectors, which means you can between two versions of GTK: out the slow way.
    [Show full text]
  • A Simplified Graphics System Based on Direct Rendering Manager System
    J. lnf. Commun. Converg. Eng. 16(2): 125-129, Jun. 2018 Regular paper A Simplified Graphics System Based on Direct Rendering Manager System Nakhoon Baek* , Member, KIICE School of Computer Science and Engineering, Kyungpook National University, Daegu 41566, Korea Abstract In the field of computer graphics, rendering speed is one of the most important factors. Contemporary rendering is performed using 3D graphics systems with windowing system support. Since typical graphics systems, including OpenGL and the DirectX library, focus on the variety of graphics rendering features, the rendering process itself consists of many complicated operations. In contrast, early computer systems used direct manipulation of computer graphics hardware, and achieved simple and efficient graphics handling operations. We suggest an alternative method of accelerated 2D and 3D graphics output, based on directly accessing modern GPU hardware using the direct rendering manager (DRM) system. On the basis of this DRM support, we exchange the graphics instructions and graphics data directly, and achieve better performance than full 3D graphics systems. We present a prototype system for providing a set of simple 2D and 3D graphics primitives. Experimental results and their screen shots are included. Index Terms: Direct rendering manager, Efficient handling, Graphics acceleration, Light-weight implementation, Prototype system I. INTRODUCTION Rendering speed is one of the most important factors for 3D graphics application programs. Typical present-day graph- After graphics output devices became publicly available, a ics programs need to be able to handle very large quantities large number of graphics applications were developed for a of graphics data. The larger the data size, and the more sen- broad spectrum of uses including computer animations, com- sitive to the rendering speed, the better the speed-up that can puter games, user experiences, and human-computer inter- be achieved, even for minor aspects of the graphics pipeline.
    [Show full text]
  • The Linux Graphics Stack Attributions
    I - Hardware : Anatomy of a GPU II - Host : The Linux graphics stack Attributions Introduction to GPUs and to the Linux Graphics Stack Martin Peres CC By-SA 3.0 Nouveau developer Ph.D. student at LaBRI November 26, 2012 1 / 36 I - Hardware : Anatomy of a GPU II - Host : The Linux graphics stack Attributions General overview Outline 1 I - Hardware : Anatomy of a GPU General overview Driving screens Host < − > GPU communication 2 II - Host : The Linux graphics stack General overview DRM and libdrm Mesa X11 Wayland X11 vs Wayland 3 Attributions Attributions 2 / 36 I - Hardware : Anatomy of a GPU II - Host : The Linux graphics stack Attributions General overview General overview of a modern GPU's functions Display content on a screen Accelerate 2D operations Accelerate 3D operations Decode videos Accelerate scientific calculations 3 / 36 I - Hardware : Anatomy of a GPU II - Host : The Linux graphics stack Attributions General overview CPU Clock Front-side Graphics Generator bus card slot Chipset Memory Slots High-speed graphics bus (AGP or PCI Northbridge Memory Express) bus (memory controller hub) Internal Bus PCI Bus Onboard Southbridge graphics PCI (I/O controller controller Bus hub) IDE SATA USB Cables and Ethernet ports leading Audio Codec CMOS Memory off-board PCI Slots LPC Bus Super I/O Serial Port Parallel Port Flash ROM Floppy Disk Keyboard (BIOS) Mouse 4 / 36 I - Hardware : Anatomy of a GPU II - Host : The Linux graphics stack Attributions General overview Hardware architecture GPU: Where all the calculations are made VRAM: Stores
    [Show full text]
  • Porting X Windows System to Operating System Compliant with Portable Operating System Interface
    (IJACSA) International Journal of Advanced Computer Science and Applications, Vol. 11, No. 7, 2020 Porting X Windows System to Operating System Compliant with Portable Operating System Interface Andrey V. Zhadchenko1, Kirill A. Mamrosenko2, Alexander M. Giatsintov3 Center of Visualization and Satellite Information Technologies Scientific Research Institute of System Analysis Moscow, Russia Abstract—Now-a-days graphical interface is very important separated process contexts [4]. Current graphical subsystem for any operating system, even the embedded ones. Adopting is server-client X windows system implementation named existing solutions will be much easier than developing your XFree86 with version 4.8.0. Although XFree86 [5] supports up own. Moreover, a lot of software may be reused in this case. to the X11R6.6 protocol version, which is barely enough to run This article is devoted to X Window System adaptation for modern applications, absence of many important extensions, Portable Operating System Interface (POSIX) compliant real- for example, Xrender [6], implies heavy limits upon software. time operating system Baget. Many encountered problems come from the tight connection between X and Linux, therefore it is expected to encounter these issues during usage of X on non- Nowadays existing free software solutions in display Linux systems. Discussed problems include, but not limited to servers for operating systems are limited to two options: X the absence of dlopen, irregular file paths, specific device drivers. Windows System and Wayland [7]. However, there is a big Instructions and recommendations to solve these issues are given. ideological difference between them. X started it’s history a A comparison between XFree86 and Xorg implementations of X long time ago in the ’80s and was developed as an all-around is discussed.
    [Show full text]
  • Intel Embedded Graphics Drivers, EFI Video Driver, and Video BIOS V10.4
    Intel® Embedded Graphics Drivers, EFI Video Driver, and Video BIOS v10.4 User’s Guide April 2011 Document Number: 274041-032US INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT. EXCEPT AS PROVIDED IN INTEL'S TERMS AND CONDITIONS OF SALE FOR SUCH PRODUCTS, INTEL ASSUMES NO LIABILITY WHATSOEVER AND INTEL DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY, RELATING TO SALE AND/OR USE OF INTEL PRODUCTS INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT. UNLESS OTHERWISE AGREED IN WRITING BY INTEL, THE INTEL PRODUCTS ARE NOT DESIGNED NOR INTENDED FOR ANY APPLICATION IN WHICH THE FAILURE OF THE INTEL PRODUCT COULD CREATE A SITUATION WHERE PERSONAL INJURY OR DEATH MAY OCCUR. Intel may make changes to specifications and product descriptions at any time, without notice. Designers must not rely on the absence or characteristics of any features or instructions marked “reserved” or “undefined.” Intel reserves these for future definition and shall have no responsibility whatsoever for conflicts or incompatibilities arising from future changes to them. The information here is subject to change without notice. Do not finalize a design with this information. The products described in this document may contain design defects or errors known as errata which may cause the product to deviate from published specifications. Current characterized errata are available on request. Contact your local Intel sales office or your distributor to obtain the latest specifications and before placing your product order.
    [Show full text]
  • Linux Graphics Meets the ARM Ecosystem
    Linux Graphics Meets the ARM Ecosystem Jesse Barker <[email protected]> April 12, 2011 Find us here on the Linaro wiki Overview ● The Linux Desktop ● The ARM Linux Desktop ● The Subset Approach ● Examples ● Questions ● What's Next The Desktop Window system ● Display management ● Resource management ● Session management ● Event handling ● Application programming interface Protocol Decode Device Independent X (DIX) DRI EXA DDX User space libdrm evdev DRM KMS Kernel GEM/TTM space Input H/W CPU GPU DC Memory Protocol Encode DRI GLX libdrm libX* Core Application Logic User space DRM KMS Kernel GEM/TTM space GPU DC CPU Memory Toolkits/Frameworks ● Create abstraction layer from the underlying window system. ● Provide uniform look-and-feel across platforms. ● Applications don't have to care which system they are running on. ● New backend to the framework adds a new supported platform for a whole bundle of applications. Bells and Whistles ● OpenGL ● Video ● Audio ● Compositing window managers ● Animation The ARM Desktop What's the difference? ● Most differences are “physical” ● Screen size and resolution ● Unified memory pool ● Power vs. raw performance ● Some API (not necessarily, though) ● Window system interfaces ● Rendering interfaces The Subset Approach ● OpenGL ES 2.0 is explicitly defined as a subset of OpenGL 2.1. ● Both have diverged since the original definition. ● Minimize specialized code (e.g., window system interfaces). The “big-ticket” items ● Immediate mode ● Fixed-function vertex processing ● Fixed-function fragment processing ● EGL vs. GLX Examples ● glmark2 ● cairo-gles ● compiz glmark2 ● Based upon opensource glmark by Ben Smith. ● Uses 3D Studio Max for model content. ● Uses SDL for window system abstraction.
    [Show full text]
  • Beyond Eye Candy
    COVER STORY Xgl and Compiz An OpenGL-accelerated desktop with Xgl and Compiz BEYOND EYE CANDY www.sxc.hu A member of Suse’s X11 team delivers an insider’s look at Xgl. agement must work hand in hand, we can expect to see more compositing BY MATTHIAS HOPF window managers in the future with the ability to merge both processes. ac fans were ecstatic when The Render extension adds new basic Another important X server compo- Apple introduced the Quartz primitives for displaying images and nent that desperately needs reworking is MExtreme [1] graphics interface, polygons, along with a new glyph sys- the hardware acceleration architecture, which accelerated desktop effects using tem for enhanced font displays. This which is responsible for efficient hard- 3D hardware. Microsoft’s Windows Vista particularly reflects the fact that the leg- ware representation of graphic com- with its Aero technology looks to close acy graphics commands, called core re- mands. The previous XAA architecture is this gap with the Mac. In the world of quests, no longer meet the demands built around core requests, and is there- Linux, Xgl [2] now provides a compara- placed on modern toolkits such as Qt fore difficult to extend. The architecture ble and even more advanced technology and GTK. All primitives can now be outlived its usefulness and needs replac- that supports similar effects. linked to data in the framebuffer using ing. The most promising alternatives are Xgl is an X Server by David Revemann Porter-Duff operators [3], thus support- EXA and OpenGL. that uses OpenGL to implement graphics ing the rendering of semitransparent sur- EXA is straightforward and easy to im- output.
    [Show full text]
  • ECS2100 Series CLI Reference Guide
    ECS2100-10T/PE/P ECS2100-28T/P/PP 10/28-Port Web-smart Pro Gigabit Ethernet Switch CLI Reference Guide Software Release v1.2.2.15 www.edge-core.com CLI Reference Guide ECS2100-10T Gigabit Ethernet Switch Web-smart Pro Gigabit Ethernet Switch with 8 10/100/1000BASE-T (RJ-45) Ports and 2 Gigabit SFP Ports ECS2100-10PE Gigabit Ethernet Switch Web-smart Pro Gigabit Ethernet Switch with 8 10/100/1000BASE-T (RJ-45) 802.3 af/at PoE Ports with 2 Gigabit SFP Ports (PoE Power Budget: 65W) ECS2100-10P Gigabit Ethernet Switch Web-smart Pro Gigabit Ethernet Switch with 8 10/100/1000BASE-T (RJ-45) 802.3 af/at PoE Ports and 2 Gigabit SFP Ports (PoE Power Budget: 125 W) ECS2100-28T Gigabit Ethernet Switch Web-smart Pro Gigabit Ethernet Switch with 24 10/100/1000BASE-T (RJ-45) Ports and 4 Gigabit SFP Ports ECS2100-28P Gigabit Ethernet Switch Web-smart Pro Gigabit Ethernet Switch with 24 10/100/1000BASE-T (RJ-45) 802.3 af/at PoE Ports and 4 Gigabit SFP Ports (PoE Power Budget: 200 W) ECS2100-28PP Gigabit Ethernet Switch Web-smart Pro Gigabit Ethernet Switch with 24 10/100/1000BASE-T (RJ-45) 802.3 af/at PoE Ports and 4 Gigabit SFP Ports (PoE Power Budget: 370 W, can extend to 740 W) E012019-CS-R05 How to Use This Guide This guide includes detailed information on the switch software, including how to operate and use the management functions of the switch. To deploy this switch effectively and ensure trouble-free operation, you should first read the relevant sections in this guide so that you are familiar with all of its software features.
    [Show full text]
  • Opengl and the Linux Desktop LIFE in 3D New Technologies Will Change the Way You View the Objects on Your Linux Desktop
    The Future of Linux Graphics COVER STORY OpenGL and the Linux desktop LIFE IN 3D New technologies will change the way you view the objects on your Linux desktop. BY JOE CASAD he X graphics system has been at antiquated design of the X system is not, specification originally created by Silicon the heart of the Unix GUI desktop on its own, flexible enough to support Graphics. The OpenGL specification pro- Tsince 1984. Of course, its hori- this kind of performance. vides a standard for vendors to create zons expanded slowly. In the early years, In the Linux world, wherever you find graphics programming interfaces. The no one knew they even needed a graph- a very big and intriguing question, you purpose of OpenGL is to provide a single ics subsystem, and if anyone did venture can bet that someone out there is work- interface that gives graphics programs a out to try X with one of the few applica- ing on the answer. A solution to the wor- standard way of talking to graphics hard- tions that supported it, they needed to ries of the restless graphics developers is ware. One of the reasons why OpenGL be ready for late nights of tinkering. converging now around the emergence is necessary is that graphics hardware But the X system kept getting better, of two very important developments: vendors are busy with their own experi- and the X protocol, with its surrounding • Extensions to X that offer increased ments to deliver richer graphics and bet- technologies, served a key role in the flexibility and shortcuts around some ter performance to their customers.
    [Show full text]