Xynth Presentation What is windowing system ? What is it for ? Why do we need it ? Known windowing...

23
Xynth Presentation Xynth Presentation What is windowing system ? What is it for ? Why do we need it ? Known windowing systems Embedded world What is Xynth ? Who are the competitors ? Comparison to others Why Xynth ? Where can we use ? Features Xynth Live CD

Transcript of Xynth Presentation What is windowing system ? What is it for ? Why do we need it ? Known windowing...

Xynth PresentationXynth PresentationWhat is windowing system ?

What is it for ?Why do we need it ?

Known windowing systemsEmbedded world What is Xynth ?

Who are the competitors ?Comparison to others

Why Xynth ?Where can we use ?

FeaturesXynth Live CD

Windowing SystemWindowing System

Copyright 2004 Xynth Page 3

What is windowing system ?What is windowing system ?

A windowing system is a system for sharing a computer's graphical display presentation resources among multiple applications at the same time.

In a computer that has a graphical user interface, you may want to use a number of applications at the same time.

Using a separate window for each application, you can interact with each application and go from one application to another without having to reinitiate it.

Having different information or activities in multiple windows may also make it easier for you to do your work.

Copyright 2004 Xynth Page 4

What is it for ?What is it for ?

A window system enables the computer user to work with several programs at the same time.

Each program runs in its own window, which is a rectangular area of the screen.

Most window systems allow windows to overlap, and provide means for the user to perform standard operations such as moving/resizing a window, sending a window to the foreground/background, minimizing, maximizing a window, etc.

From a programmer's point of view, a window system implements graphical primitives such as rendering fonts or drawing a line on the screen, effectively providing an abstraction of the graphics hardware.

Copyright 2004 Xynth Page 5

Why do we need it ?Why do we need it ?

For human-computer interaction. WIMP stands for the "window, icon, menu, pointing device" paradigm that characterizes most commercial graphical user interfaces from 1984 to the present.

It was developed at the Xerox Parc.

Copyright 2004 Xynth Page 6

Known windowing systems ?Known windowing systems ?

X Window Proprietary systems on the Macintosh and NeXT NeWS on Suns RISC OS on the Archimedes Microsoft Windows has built-in windowing systems

Embedded WorldEmbedded World

Copyright 2004 Xynth Page 8

Embedded windowing system Embedded windowing system requirementsrequirements

Typical computer desktop "graphics stack" isn't well suited to embedded applications.

Embedded devices frequently have highly constrained resources and can afford neither the program storage space nor the memory footprint of desktop graphics software.

All that memory costs money, requires board space, and consumes power.

Embedded systems frequently have unique needs that can't be met by desktop graphics system components.

These include the requirement for a customized look and feel, control over what functions are available to users, speed of loading, unusual display or input device characteristics, etc.

XynthXynth

Copyright 2004 Xynth Page 10

What is Xynth ?What is Xynth ?

Xynth is an embedded and portable client-server interface between display hardware (the mouse, keyboard, and video displays) and the desktop environment that works on many hardware, including embedded devices.

Copyright 2004 Xynth Page 11

Who are the competitors ?Who are the competitors ?

MiniGUI Nano-X Fresco Pico-GUI

Copyright 2004 Xynth Page 12

Comparison to others.Comparison to others.

MiniGUI Expensive Hard to port applications.

Nano-X Last release 31.05.2003 Not working with multiple clients

Fresco Last release 03.04.2003 CORBA dependency

Pico-GUI Discontinued

Copyright 2004 Xynth Page 13

Why XynthWhy Xynth ? ?

ANSI C Simple architecture Minimum dependency Fast Small Portable Easly customizable Suitable for fast developments Work on many operating systems

Copyright 2004 Xynth Page 14

Where can we useWhere can we use Xynth ? Xynth ?

Handheld consumer products PDAs, cellphones Factory automated equipments, Industrial Controls Settop-boxes, TVs, kiosks, ATMs Medical instruments Commercial airlines, cockpit displays, terminals Menu Systems (Television, VCR, Computer BIOS) Desktop systems GPS Instrumentation Military, F.L.I.R. applications Printers, Digital Cameras, Multi-function Peripherials Telecom, Wireless devices Entertainment and Video Slot Machines Any device that has graphical user interface

FeaturesFeatures

Copyright 2004 Xynth Page 16

FeaturesFeatures 1 1

UDS (Unix Domain Sockets) for IPC DMA (Direct Memory Access) for each client window

surface Overlapped client window - server management 8-way Move, Resize Runtime Theme Pluging Support Built-in image renderer xpm, png Antialiased fonts with Freetype Library. No dependencies except FBDev or SVGALib

Copyright 2004 Xynth Page 17

FeaturesFeatures 2 2

Device independent basic low-level graphics library rgbcolor, colorrgb, setpixel, getpixel, hline , vline, fillbox, putbox,

putboxmask, getbox, putboxpart, putboxpartmask, copybox, getsurface, setsurfacevirtual, setsurface

Overlay Drawing Ability rgbcolor_o, colorrgb_o, setpixel_o, getpixel_o, hline_o, vline_o,

fillbox_o, putbox_o, putboxmask_o, getbox_o, putboxpart_o, putboxpartmask_o, copybox_o, getsurface_o, setsurfacevirtual_o, setsurface_o

Anti Flicker Double Buffer Rendering

Copyright 2004 Xynth Page 18

Features 3Features 3

Keyboard, Mouse, Touchscreen drivers Remote Desktop Support. Built-in window manager. Low Memory and CPU Usage and Foot Print.

In 1024x768x32bits mode with 253 clients open Memory usage is ~2,5M

Static linked binary is ~125K

Copyright 2004 Xynth Page 19

ApplicationsApplications

XynthDesktop Xyntherminal Xynthload

Ported Applications Mplayer (Perfect) links (Perfect)

Ported Libraries SDL (Perfect) GTK 2.4.x (Perfect) Qt 3.3.x (On the way)

Xynth Live CDXynth Live CD

Copyright 2004 Xynth Page 21

What is the aim of it ?What is the aim of it ?

The main target of Xynth is embedded world. This Live CD shows that Xynth can also be used on a

desktop system It is not a distribution but can be easly customized to be

a distribution There are many GTK programs to use on your desktop

Mozilla Gimp Abiword Gaim etc.

Copyright 2004 Xynth Page 22

What is inside ?What is inside ?

Xynth Desktop Xynth demo programs SDL demo programs SDL games

Ltetris Lbreakout2

Gtk programs Xchat Gqview

Thank YouThank You

Xynth Xynth