Tizen V2.3 Linux Kernel

Total Page:16

File Type:pdf, Size:1020Kb

Tizen V2.3 Linux Kernel !1 67 Tizen v2.3 Linux Kernel Sungkyunkwan University Embedded Software Lab. @ SKKU !2 Tizen 内核附加特性 49 • 存储管理 – CMA (连续的内存分配器 ), IOMMU, dma_buf, DRM (直 接渲染管理器 ) • ARM Linux没有 DMA_ZONE伙伴 • 有些设备需要物理上的连续的内存 (CMA), 其他设备有 IOMMU从⽽ 能够使⽤不连续的内存 • 对于 D/D⽤户可以共享 DMA存储缓存 – 电源管理 (CPUfreq, Devfreq, PM-QoS, Charger- manager) – KDBUS – V4L2 (Video for Linux 2) – EXTCON Embedded Software Lab. @ SKKU !3 以前参考内核 49 • Linux 3.0.15 – Obsolete LTS (Current: 3.4 & 3.10) • ⽀持 RD-PQ (Tizen 2) & RD-210 (tizen 1 & 2) – RD-PQ: Exynos4412 – RD-210: Exynos 4210 (Linux 2.6.36 for Tizen 1) • 不好的参照 – 太多的补丁功能 – 太陈旧! 不⽀持 LTS/LTSI – 许多内核⿊客和肮脏的补丁 – git历史删除 • 从⽣产内核中 Fork • 很难阅读 Embedded Software Lab. @ SKKU Linux Kernel. LTS? LTSI? !4 67 • Long-Term Stable (LTS) – Maintained by Greg K.H. – Bugfixes for 2 years or longer. – Up to 2 LTS kernels at the same time. – Recent: 3.10.39 (2014/5/6) • Long-Term Stable Initiative (LTSI) – Maintained by Greg K.H. and some manufacturers – Forked LTS for Industry. (LTS + Industry Patchset) – Maintain a common Linux base for use in a variety of consumer electronics products – Longer support period. – Recent: 3.10.31-LTSI (2014/2/24) Embedded Software Lab. @ SKKU !5 Tizen 参考内核的状态 49 • 两个参考内核 : ARM/Intel • ARM (armv7, aarch64) – Linux 3.10.y • 3.10.33 @ 2014/05 • 完整的 git历史 – 即将推出 Armv6 support (Raspberry Pi) – 测试 &验证阶段 (集成测试和⽤户空间 ) • Intel (x86, x86_64) – Linux 3.14.1 – Recent ATOM Soc support merged Embedded Software Lab. @ SKKU !6 Tizen 内核概述 49 Embedded Software Lab. @ SKKU !7 Tizen 内核概述 (续 ) 49 Embedded Software Lab. @ SKKU Static Memory vs. CMA memory Multimedia !8 example 67 dma_alloc_coherent() Embedded Software Lab. @ SKKU ION !9 67 • generalized memory manager that Google introduced in the Android 4.0 ICS • Provides way for userland to allocate buffers from various “pools of memory” (aka: heaps) • CMA also allows for large physically contiguous memory allocations by migrating memory to make room for the large allocation – CMA is kernel-internal only for now, and doesn't have a interface to allow userland to allocate buffers or specify constraint options – Migrating pages to make room can cause non-deterministic delays. Embedded Software Lab. @ SKKU ION !10 67 Embedded Software Lab. @ SKKU !11 67 Tizen v2.3 内存管理 Embedded Software Lab. @ SKKU !12 Tizen 存储管理 49 • 连同图形和多媒体设备 – 图形⾦额多媒体设备 = 有巨⼤缓存的 DMA设备 Embedded Software Lab. @ SKKU !13 DRM是什么 49 • DRM不是数字版权管理 • 直接渲染管理器 – ⽀持直接渲染管理器结构的内核级别图形设备 – 直接渲染 • 应⽤直接与图形设备驱动交互 – 显⽰模式设置 – 图形存储管理 Embedded Software Lab. @ SKKU !14 为什么使⽤ DRM 49 • 可以提供类似于 PC环境的展⽰体验 • 直到现在为什么不使⽤ DRM? – DRM是为计算机设计的 – 嵌⼊式系统 • 性能低 • 内有专⽤图形内存 • 没有⼀个显卡却⼜分开硬件设备 – Linux帧缓冲驱动程序 Embedded Software Lab. @ SKKU !15 为什么使⽤ DRM (续 ) 49 • 改变了嵌⼊式系统 – 强⼤的嵌⼊式 SoCs – 需求 • 显⽰热插拔与克隆拓展模式 • 统⼀内存管理 • 直接渲染 • 不同的设备控制与公共接⼝ Embedded Software Lab. @ SKKU X11 infrastructure !16 67 DIX (Device-Independent X) DDX (Device-Dependent X), Embedded Software Lab. @ SKKU Early implementation of the Linux graphics stack !17 67 UMS (User-space Mode-Setting) Embedded Software Lab. @ SKKU Early implementation of the Linux graphics stack !18 67 • XFree86 server: the first Linux 2D graphics hardware acceleration – Super-user privileges – Access the card directly from user space, no kernel support – Simple and portable • Utah-GLX: the first hardware-independent 3D accelerated design – User space 3D driver, directly accesses the graphics hardware from user space – 3D hardware was clearly separated from 2D (3Dfx), completely separate driver. • Framebuffer drivers – Another component that could simultaneously access the graphics hardware directly. – To avoid potential conflicts between the framebuffer and XFree86 drivers, – On VT(virtual terminal) switches, the kernel would emit a signal to the X server telling it to save the graphics hardware state. – More fragile and bug-prone drivers. • Drawbacks – Security: unprivileged user space applications be allowed to access the graphics hardware for 3D. – Performance: all GL acceleration had to be indirect through the X protocol Embedded Software Lab. @ SKKU DRI model !19 67 Embedded Software Lab. @ SKKU DRI/DRM infrastructure !20 67 • To address the reliability and security concerns with the Utah-GLX model • Additional kernel component whose duty is to check the correctness of the 3D command stream, security-wise. • Instead of accessing the card directly, the unprivileged OpenGL application would submit command buffers to the kernel, which would check them for security and then pass them to the hardware for execution. • Trusting user space is no longer required. • Kernel Mode-Setting (KMS) – Merge the kernel framebuffer functionality into the DRM module – X.Org access the graphics card through the DRM module and run unprivileged. – DRM module is now responsible for providing mode-setting services both as a framebuffer driver and to X.Org. Mode-setting: configuring video mode to get a picture on the screen. includes choosing the video resolution and refresh rates. Embedded Software Lab. @ SKKU Framebuffer Drivers !21 67 • Kernel graphics driver exposing its interface through / dev/fb* • Despite their simplicity, framebuffer drivers are still a relevant option for basic 2D display. • Especially for embedded systems – memory footprint is essential – do not require advanced graphics acceleration. • Functionalities – Mode-setting – Optional 2D acceleration • http://www.linux-fbdev.org/HOWTO/index.html Embedded Software Lab. @ SKKU Direct Rendering Manager !22 67 • Put critical initialization of the card in the kernel, for example uploading firmwares or setting up DMA areas. • Share the rendering hardware between multiple user space components, and arbitrate access. • Enforce security by preventing applications from performing DMA to arbitrary memory regions, and more generally from programming the card in any way that could result in a security hole. • Manage the memory of the card, by providing video memory allocation functionality to user space. • More recently, the DRM was improved to achieve mode-setting. – Simplifies the previous situation where both the Libdrm interfaces between user space and the DRM DRM and the framebuffer driver were fighting module, unprivileged user space component to access the same GPU. – Instead, the framebuffer driver is removed and framebuffer support is implemented in the DRM. Embedded Software Lab. @ SKKU DRM of Tizen v2.3 kernel !23 67 • Currently, DRM support is only for Exynos SoCs. (ARM based) – Need Exynos specific DRM driver • Exynos DRM driver – To support graphics hardware of Exynos SoCs – First ARM SoC graphics driver to use the DRM – Merged into the mainline linux 3.2 kernel – linux/drivers/gpu/drm/exynos Embedded Software Lab. @ SKKU !24 图形 (DRM / GEM) 49 • 图形 : – DRM (直接渲染管理 ) / GEM (图形处理管理 ) GEM •由 Intel开发的框架 • 为了管理图形存储 •缓存管理框架 • 分配和共享 Embedded Software Lab. @ SKKU !25 DRM / GEM 分配 49 GEM 分配步骤 @ Tizen (Generic) •DRM_IOCTL_MODE_CREATE_DUMB – 创建 GEM全局 & user GEM handle(per process) • dumb_create() of struct drm_driver – 没有物理内存分配 •DRM_IOCTL_MODE_MAP_DUMB – 创建虚假 mmap offset of a gem object 并将这个对象传递给⽤户 • A hash key of the gem object. • dumb_map_offset() of struct drm_driver •MMAP – 请求 mmap基于哈希键作为偏移量 – 创建⽤户地址空间 – 设置缓存属性 – 还没有映射到物理内存 Embedded Software Lab. @ SKKU !26 DRM / GEM 分配 (续 ) 49 GEM 分配步骤 @ Tizen (Generic) • 按需分⻚ – 实现和注册⼀个错误处理程序 • With a page fault, allocate a page and map the page. – vma->vm_ops->fault = xxx_drm_gem_fault •使⽤ ! •DRM_IOCTL_MODE_DESTROY_DUMB – 移除 GEM handle & object – 释放内存 – 实现 dumb_destroy() of struct drm_driver Embedded Software Lab. @ SKKU !27 DRM / GEM 分配 (续 ) 49 GEM 分配步骤 @ Tizen (Exynos Only) •DRM_IOCTL_EXYNOS_GEM_CREATE – 只使⽤⽤户需要的⼤⼩和缓存类型 – 创建 gem全局对象和 user gem handle(per process) – 分配物理内存 •DRM_IOCTL_EXYNOS_GEM_MMAP – 创建⽤户地址空间 – 将⽤户地址空间映射到物理内存 •LIBDRM of Exynos uses these APIs, not the generic. Embedded Software Lab. @ SKKU !28 DRM / GEM 共享 49 GEM 共享 @ Tizen •DRM_IOCTL_GEM_FLINK – “I will share this GEM to others.” – Create GEM object name for the given GEM handle • 共享全局键值 •DRM_IOCTL_GEM_OPEN – “I want to use the shared GEM.” – 基于已有 GEM对象名称,创建 Create GEM handle •DRM_IOCTL_GEM_CLOSE Embedded Software Lab. @ SKKU !29 Tizen Kernel MM –Multimedia (V4L2 / VB2) 49 Embedded Software Lab. @ SKKU !30 V4L2 / VB2 49 • 对于多媒体设备, Tizen推荐在内核中使⽤ – Video input (codec & camera) & Radio – 然⽽,尽管内核具有 ..: • Gstreamer/OpenMAX plugins • A method to share with other F/W via DMABUF of UMM • 如果使⽤ V4L2/VB2, 事情会变得更简单 Embedded Software Lab. @ SKKU !31 Tizen Kernel MM –OpenGL / G3D-GPU 49 Embedded Software Lab. @ SKKU !32 OpenGL / G3D-GPU 49 • ⼤部分 ARM SoC GPUs (MALI, SGX, …)使⽤ 它们⾃⼰的内存 – 例如 , Exynos4412/4210 Tizen Reference Kernel 有 Mali w/ UMM. • Mali DDK modified to be compatible with UMM-DMABUF. • 如果 GPU驱动使⽤ DRM, 将会更好 . – (and make them GPL) Embedded Software Lab. @ SKKU !33 图形化和显⽰器使⽤场景 49 Embedded Software Lab. @ SKKU !34 图形化和显⽰器使⽤场景 49 Embedded Software Lab. @ SKKU !35 图形化和显⽰器使⽤场景 49 Embedded Software Lab. @ SKKU !36 图形化和显⽰器使⽤场景 49 Embedded Software Lab. @ SKKU !37 图形化和显⽰器使⽤场景 49 Embedded Software Lab. @ SKKU !38 Tizen 内核缓冲共享 49 Embedded Software Lab. @ SKKU !39 Tizen 内核缓冲共享 49 • Tizen平台和硬件的需求 – 不同的内存管理器 : GEM, VB2, GPU-adhoc,… – 共享缓冲 • w/o memcpy • From and to users • 不要直接暴露给⽤户 (e.g., 物理地址 ) ➔UMM DMABUF! Embedded Software Lab. @ SKKU !40 统⼀的内存管理器 (UMM) 49 • 由 Jesse Barker引⼊ , 2011 • 包含 – DMABUF (共享缓冲 ) • Export – GEM/VB2/… object ! DMABUF • Import – DMABUF ! GEM/VB2/… object • ⽤户空间将 DMABUF当作⽂件描述器 – DMA mapping API for allocation – CMA (Contiguous Memory Allocator) – IOMMU (MMU for I/O devs) Embedded Software Lab. @ SKKU !41 DMA缓冲共享 : Camera ! Display 49 Embedded Software Lab. @ SKKU !42 DMA 缓冲共享⽰例 49 • Camera App 1)请求 V4L2 相机缓存 (U) 2)分配 CMA 缓存 (K) 3)向 V4L2缓存请求⼀个 camera 帧 (U) 4存储 camera帧 & 通知⽤户 (K) 5)请求 DMABUF 为 V4L2 camera 缓冲导出 (U) 6)dma_buf_exporter() (K) • Create DMABUF from V4L2 buffer 7)dma_buf_fd() (K) • Provide FD of the DMABUF to user Embedded Software Lab. @ SKKU !43 DMA缓冲共享⽰例 49 • Camera App 1)请求 V4L2 camera 缓冲 (U) 2)分配 CMA 缓冲 (K) 3)向 V4L2缓存请求⼀个 camera 帧 (U) 4)存储 camera帧 & 通知⽤户 (K) 5)请求 DMABUF 为 V4L2 camera 缓冲导出 (U) 6)dma_buf_exporter() (K) • Create DMABUF from V4L2 buffer 7)dma_buf_fd() (K) • Provide FD of the DMABUF to user Embedded Software Lab.
Recommended publications
  • UG1046 Ultrafast Embedded Design Methodology Guide
    UltraFast Embedded Design Methodology Guide UG1046 (v2.3) April 20, 2018 Revision History The following table shows the revision history for this document. Date Version Revision 04/20/2018 2.3 • Added a note in the Overview section of Chapter 5. • Replaced BFM terminology with VIP across the user guide. 07/27/2017 2.2 • Vivado IDE updates and minor editorial changes. 04/22/2015 2.1 • Added Embedded Design Methodology Checklist. • Added Accessing Documentation and Training. 03/26/2015 2.0 • Added SDSoC Environment. • Added Related Design Hubs. 10/20/2014 1.1 • Removed outdated information. •In System Level Considerations, added information to the following sections: ° Performance ° Clocking and Reset 10/08/2014 1.0 Initial Release of document. UltraFast Embedded Design Methodology Guide Send Feedback 2 UG1046 (v2.3) April 20, 2018 www.xilinx.com Table of Contents Chapter 1: Introduction Embedded Design Methodology Checklist. 9 Accessing Documentation and Training . 10 Chapter 2: System Level Considerations Performance. 13 Power Consumption . 18 Clocking and Reset. 36 Interrupts . 41 Embedded Device Security . 45 Profiling and Partitioning . 51 Chapter 3: Hardware Design Considerations Configuration and Boot Devices . 63 Memory Interfaces . 69 Peripherals . 76 Designing IP Blocks . 94 Hardware Performance Considerations . 102 Dataflow . 108 PL Clocking Methodology . 112 ACP and Cache Coherency. 116 PL High-Performance Port Access. 120 System Management Hardware Assistance. 124 Managing Hardware Reconfiguration . 127 GPs and Direct PL Access from APU . 133 Chapter 4: Software Design Considerations Processor Configuration . 137 OS and RTOS Choices . 142 Libraries and Middleware . 152 Boot Loaders . 156 Software Development Tools . 162 UltraFast Embedded Design Methodology GuideSend Feedback 3 UG1046 (v2.3) April 20, 2018 www.xilinx.com Chapter 5: Hardware Design Flow Overview .
    [Show full text]
  • Flexible Lustre Management
    Flexible Lustre management Making less work for Admins ORNL is managed by UT-Battelle for the US Department of Energy How do we know Lustre condition today • Polling proc / sysfs files – The knocking on the door model – Parse stats, rpc info, etc for performance deviations. • Constant collection of debug logs – Heavy parsing for common problems. • The death of a node – Have to examine kdumps and /or lustre dump Origins of a new approach • Requirements for Linux kernel integration. – No more proc usage – Migration to sysfs and debugfs – Used to configure your file system. – Started in lustre 2.9 and still on going. • Two ways to configure your file system. – On MGS server run lctl conf_param … • Directly accessed proc seq_files. – On MSG server run lctl set_param –P • Originally used an upcall to lctl for configuration • Introduced in Lustre 2.4 but was broken until lustre 2.12 (LU-7004) – Configuring file system works transparently before and after sysfs migration. Changes introduced with sysfs / debugfs migration • sysfs has a one item per file rule. • Complex proc files moved to debugfs • Moving to debugfs introduced permission problems – Only debugging files should be their. – Both debugfs and procfs have scaling issues. • Moving to sysfs introduced the ability to send uevents – Item of most interest from LUG 2018 Linux Lustre client talk. – Both lctl conf_param and lctl set_param –P use this approach • lctl conf_param can set sysfs attributes without uevents. See class_modify_config() – We get life cycle events for free – udev is now involved. What do we get by using udev ? • Under the hood – uevents are collect by systemd and then processed by udev rules – /etc/udev/rules.d/99-lustre.rules – SUBSYSTEM=="lustre", ACTION=="change", ENV{PARAM}=="?*", RUN+="/usr/sbin/lctl set_param '$env{PARAM}=$env{SETTING}’” • You can create your own udev rule – http://reactivated.net/writing_udev_rules.html – /lib/udev/rules.d/* for examples – Add udev_log="debug” to /etc/udev.conf if you have problems • Using systemd for long task.
    [Show full text]
  • Version 7.8-Systemd
    Linux From Scratch Version 7.8-systemd Created by Gerard Beekmans Edited by Douglas R. Reno Linux From Scratch: Version 7.8-systemd by Created by Gerard Beekmans and Edited by Douglas R. Reno Copyright © 1999-2015 Gerard Beekmans Copyright © 1999-2015, Gerard Beekmans All rights reserved. This book is licensed under a Creative Commons License. Computer instructions may be extracted from the book under the MIT License. Linux® is a registered trademark of Linus Torvalds. Linux From Scratch - Version 7.8-systemd Table of Contents Preface .......................................................................................................................................................................... vii i. Foreword ............................................................................................................................................................. vii ii. Audience ............................................................................................................................................................ vii iii. LFS Target Architectures ................................................................................................................................ viii iv. LFS and Standards ............................................................................................................................................ ix v. Rationale for Packages in the Book .................................................................................................................... x vi. Prerequisites
    [Show full text]
  • Scalability of VM Provisioning Systems
    Scalability of VM Provisioning Systems Mike Jones, Bill Arcand, Bill Bergeron, David Bestor, Chansup Byun, Lauren Milechin, Vijay Gadepally, Matt Hubbell, Jeremy Kepner, Pete Michaleas, Julie Mullen, Andy Prout, Tony Rosa, Siddharth Samsi, Charles Yee, Albert Reuther Lincoln Laboratory Supercomputing Center MIT Lincoln Laboratory Lexington, MA, USA Abstract—Virtual machines and virtualized hardware have developed a technique based on binary code substitution been around for over half a century. The commoditization of the (binary translation) that enabled the execution of privileged x86 platform and its rapidly growing hardware capabilities have (OS) instructions from virtual machines on x86 systems [16]. led to recent exponential growth in the use of virtualization both Another notable effort was the Xen project, which in 2003 used in the enterprise and high performance computing (HPC). The a jump table for choosing bare metal execution or virtual startup time of a virtualized environment is a key performance machine execution of privileged (OS) instructions [17]. Such metric for high performance computing in which the runtime of projects prompted Intel and AMD to add the VT-x [19] and any individual task is typically much shorter than the lifetime of AMD-V [18] virtualization extensions to the x86 and x86-64 a virtualized service in an enterprise context. In this paper, a instruction sets in 2006, further pushing the performance and methodology for accurately measuring the startup performance adoption of virtual machines. on an HPC system is described. The startup performance overhead of three of the most mature, widely deployed cloud Virtual machines have seen use in a variety of applications, management frameworks (OpenStack, OpenNebula, and but with the move to highly capable multicore CPUs, gigabit Eucalyptus) is measured to determine their suitability for Ethernet network cards, and VM-aware x86/x86-64 operating workloads typically seen in an HPC environment.
    [Show full text]
  • Linux Kernal II 9.1 Architecture
    Page 1 of 7 Linux Kernal II 9.1 Architecture: The Linux kernel is a Unix-like operating system kernel used by a variety of operating systems based on it, which are usually in the form of Linux distributions. The Linux kernel is a prominent example of free and open source software. Programming language The Linux kernel is written in the version of the C programming language supported by GCC (which has introduced a number of extensions and changes to standard C), together with a number of short sections of code written in the assembly language (in GCC's "AT&T-style" syntax) of the target architecture. Because of the extensions to C it supports, GCC was for a long time the only compiler capable of correctly building the Linux kernel. Compiler compatibility GCC is the default compiler for the Linux kernel source. In 2004, Intel claimed to have modified the kernel so that its C compiler also was capable of compiling it. There was another such reported success in 2009 with a modified 2.6.22 version of the kernel. Since 2010, effort has been underway to build the Linux kernel with Clang, an alternative compiler for the C language; as of 12 April 2014, the official kernel could almost be compiled by Clang. The project dedicated to this effort is named LLVMLinxu after the LLVM compiler infrastructure upon which Clang is built. LLVMLinux does not aim to fork either the Linux kernel or the LLVM, therefore it is a meta-project composed of patches that are eventually submitted to the upstream projects.
    [Show full text]
  • Hdcp Support in Optee
    HDCP SUPPORT IN OPTEE PRODUCT PRESENTATION Linaro Multimedia Working Group MICR ADVANCED TECHNOLOGIES • https://www.linaro.org/ SEPTEMBER 2019 Agenda • Quick introduction to HDCP • Secure Video Path overview • Current HDCP control in Linux • Proposal to control HDCP in OPTEE • Questions HDCP OVERVIEW 3 HDCP : High bandwidth Digital Content Protection • A digital copy protection developed by Intel™ to prevent copying of digital and audio video content. Before sending data, the source device shall check the destination device is authorized to received it. If so, the source device encrypts the data, only the destination device can decrypt. - data encryption - prevent non-licensed devices from receiving content • Android and Linux NXP bsp manage HDCP at Linux Level, through libDRM. So nothing prevent a user to disable HDCP protection while secure content is under playback. It is a security holes in the Secure Video Path. • HDCP support currently under development for wayland/Weston: https://gitlab.freedesktop.org/wayland/weston/merge_requests/48 • No Open Source solution exists to manage HDCP in secure mode. • HDCP versions: ▪ HDCP 1.X: Hacked: Master key published (leak/reverse engineering) ▪ HDCP 2.0: Hacked before release ▪ HDCP 2.1: Hacked before release ▪ HDCP 2.2: Not yet hacked 4 ▪ HDCP 2.3: Not yet hacked HDCP control state Machine Content with HDCP protection mandatory no yes Local display Local display yes no yes no Video displayed Video displayed without HDCP Digital Display without HDCP Digital Display encryption encryption yes no yes no It means we have analog display Video displayed Video displayed HDCP supported without HDCP HDCP supported without HDCP encryption encryption yes no yes no Video displayed Video displayed without Widevine/PlayReady To Video not displayed Application to decide if HDCP check current HDCP version Application to display a Warning 5 HDCP encryption message HDCP Unauthorized, encryption to be used >= expected HDCP version Content Disabled.' Error.
    [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]
  • IT Acronyms.Docx
    List of computing and IT abbreviations /.—Slashdot 1GL—First-Generation Programming Language 1NF—First Normal Form 10B2—10BASE-2 10B5—10BASE-5 10B-F—10BASE-F 10B-FB—10BASE-FB 10B-FL—10BASE-FL 10B-FP—10BASE-FP 10B-T—10BASE-T 100B-FX—100BASE-FX 100B-T—100BASE-T 100B-TX—100BASE-TX 100BVG—100BASE-VG 286—Intel 80286 processor 2B1Q—2 Binary 1 Quaternary 2GL—Second-Generation Programming Language 2NF—Second Normal Form 3GL—Third-Generation Programming Language 3NF—Third Normal Form 386—Intel 80386 processor 1 486—Intel 80486 processor 4B5BLF—4 Byte 5 Byte Local Fiber 4GL—Fourth-Generation Programming Language 4NF—Fourth Normal Form 5GL—Fifth-Generation Programming Language 5NF—Fifth Normal Form 6NF—Sixth Normal Form 8B10BLF—8 Byte 10 Byte Local Fiber A AAT—Average Access Time AA—Anti-Aliasing AAA—Authentication Authorization, Accounting AABB—Axis Aligned Bounding Box AAC—Advanced Audio Coding AAL—ATM Adaptation Layer AALC—ATM Adaptation Layer Connection AARP—AppleTalk Address Resolution Protocol ABCL—Actor-Based Concurrent Language ABI—Application Binary Interface ABM—Asynchronous Balanced Mode ABR—Area Border Router ABR—Auto Baud-Rate detection ABR—Available Bitrate 2 ABR—Average Bitrate AC—Acoustic Coupler AC—Alternating Current ACD—Automatic Call Distributor ACE—Advanced Computing Environment ACF NCP—Advanced Communications Function—Network Control Program ACID—Atomicity Consistency Isolation Durability ACK—ACKnowledgement ACK—Amsterdam Compiler Kit ACL—Access Control List ACL—Active Current
    [Show full text]
  • Container and Kernel-Based Virtual Machine (KVM) Virtualization for Network Function Virtualization (NFV)
    Container and Kernel-Based Virtual Machine (KVM) Virtualization for Network Function Virtualization (NFV) White Paper August 2015 Order Number: 332860-001US YouLegal Lines andmay Disclaimers not use or facilitate the use of this document in connection with any infringement or other legal analysis concerning Intel products described herein. You agree to grant Intel a non-exclusive, royalty-free license to any patent claim thereafter drafted which includes subject matter disclosed herein. No license (express or implied, by estoppel or otherwise) to any intellectual property rights is granted by this document. All information provided here is subject to change without notice. Contact your Intel representative to obtain the latest Intel product specifications and roadmaps. The products described 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. Copies of documents which have an order number and are referenced in this document may be obtained by calling 1-800-548-4725 or by visiting: http://www.intel.com/ design/literature.htm. Intel technologies’ features and benefits depend on system configuration and may require enabled hardware, software or service activation. Learn more at http:// www.intel.com/ or from the OEM or retailer. Results have been estimated or simulated using internal Intel analysis or architecture simulation or modeling, and provided to you for informational purposes. Any differences in your system hardware, software or configuration may affect your actual performance. For more complete information about performance and benchmark results, visit www.intel.com/benchmarks. Tests document performance of components on a particular test, in specific systems.
    [Show full text]
  • Architectural Decisions for Linuxone Hypervisors
    July 2019 Webcast Virtualization options for Linux on IBM Z & LinuxONE Richard Young Executive IT Specialist Virtualization and Linux IBM Systems Lab Services Wilhelm Mild IBM Executive IT Architect for Mobile, IBM Z and Linux IBM R&D Lab, Germany Agenda ➢ Benefits of virtualization • Available virtualization options • Considerations for virtualization decisions • Virtualization options for LinuxONE & Z • Firmware hypervisors • Software hypervisors • Software Containers • Firmware hypervisor decision guide • Virtualization decision guide • Summary 2 © Copyright IBM Corporation 2018 Why do we virtualize? What are the benefits of virtualization? ▪ Simplification – use of standardized images, virtualized hardware, and automated configuration of virtual infrastructure ▪ Migration – one of the first uses of virtualization, enable coexistence, phased upgrades and migrations. It can also simplify hardware upgrades by make changes transparent. ▪ Efficiency – reduced hardware footprints, better utilization of available hardware resources, and reduced time to delivery. Reuse of deprovisioned or relinquished resources. ▪ Resilience – run new versions and old versions in parallel, avoiding service downtime ▪ Cost savings – having fewer machines translates to lower costs in server hardware, networking, floor space, electricity, administration (perceived) ▪ To accommodate growth – virtualization allows the IT department to be more responsive to business growth, hopefully avoiding interruption 3 © Copyright IBM Corporation 2018 Agenda • Benefits of
    [Show full text]
  • Amazon Workspaces Guia De Administração Amazon Workspaces Guia De Administração
    Amazon WorkSpaces Guia de administração Amazon WorkSpaces Guia de administração Amazon WorkSpaces: Guia de administração Copyright © Amazon Web Services, Inc. and/or its affiliates. All rights reserved. As marcas comerciais e imagens de marcas da Amazon não podem ser usadas no contexto de nenhum produto ou serviço que não seja da Amazon, nem de qualquer maneira que possa gerar confusão entre os clientes ou que deprecie ou desprestigie a Amazon. Todas as outras marcas comerciais que não pertencem à Amazon pertencem a seus respectivos proprietários, que podem ou não ser afiliados, patrocinados pela Amazon ou ter conexão com ela. Amazon WorkSpaces Guia de administração Table of Contents O que é WorkSpaces? ........................................................................................................................ 1 Features .................................................................................................................................... 1 Architecture ............................................................................................................................... 1 Acesse o WorkSpace .................................................................................................................. 2 Pricing ...................................................................................................................................... 3 Como começar a usar ................................................................................................................. 3 Conceitos básicos: Instalação
    [Show full text]
  • Free Gnu Linux Distributions
    Free gnu linux distributions The Free Software Foundation is not responsible for other web sites, or how up-to-date their information is. This page lists the GNU/Linux distributions that are ​Linux and GNU · ​Why we don't endorse some · ​GNU Guix. We recommend that you use a free GNU/Linux system distribution, one that does not include proprietary software at all. That way you can be sure that you are. Canaima GNU/Linux is a distribution made by Venezuela's government to distribute Debian's Social Contract states the goal of making Debian entirely free. The FSF is proud to announce the newest addition to our list of fully free GNU/Linux distributions, adding its first ever small system distribution. Trisquel, Kongoni, and the other GNU/Linux system distributions on the FSF's list only include and only propose free software. They reject. The FSF's list consists of ready-to-use full GNU/Linux systems whose developers have made a commitment to follow the Guidelines for Free. GNU Linux-libre is a project to maintain and publish % Free distributions of Linux, suitable for use in Free System Distributions, removing. A "live" distribution is a Linux distribution that can be booted The portability of installation-free distributions makes them Puppy Linux, Devil-Linux, SuperGamer, SliTaz GNU/Linux. They only list GNU/Linux distributions that follow the GNU FSDG (Free System Distribution Guidelines). That the software (as well as the. Trisquel GNU/Linux is a fully free operating system for home users, small making the distro more reliable through quicker and more traceable updates.
    [Show full text]