Presentation is loading. Please wait.

Presentation is loading. Please wait.

XWN740 X-Windows Configuring and Using Introduction to X-Windows (X Power Tools - Chapter 1)

Similar presentations


Presentation on theme: "XWN740 X-Windows Configuring and Using Introduction to X-Windows (X Power Tools - Chapter 1)"— Presentation transcript:

1 XWN740 X-Windows Configuring and Using Introduction to X-Windows (X Power Tools - Chapter 1)

2 Agenda X Windows Definition History of X Windows Layers of an X Windows GUI / Server Terminology Toolkits and Desktop Environments

3 X-Windows Definition What is X-Windows? The X Window System is a portable, network-based display system. That short definition contains three of the keys to X's success Foundations: Portability Network-based Display System

4 X-Windows Definition Portability: The X Window System is primarily used on Unix, Linux, and BSD systems, but it can also be used on Microsoft Windows, Mac OS X, and many other systems. It supports a wide range of hardware, from PDAs and standalone terminals to multi-monitor workstations and information displays. Technology may be mixed and matched to suit user preferences, needs, and budget.

5 X-Windows Definition Network-Based: Programs can display anywhere on the network, and windows from programs running on machines several time zones apart can be displayed side-by-side on one screen. With X, users have complete freedom to work wherever they want.

6 X-Windows Definition Display System: X is not a graphical user interface (GUI), but it provides a solid foundation for building one. GUI developers can escape from dealing with the intricacies of the display hardware and focus on user interface design, and legacy applications written for decades-old X-based GUIs will continue to work with modern ones.

7 X-Windows Definition Why Learn about X? Although most users of Unix (or Linux, or FreeBSD, or Darwin) often take X for granted, a good understanding of how it works opens up a world of possibilities. Examples: speeding up remote access building personal video recorders configuring multi-user computers, information kiosks, video consoles, etc....

8 X-Windows History Open Source Before talking about history of X Windows, important to see importance of project collaboration and term called Open Source. Open source is a development methodology, which offers practical accessibility to a product's source (including goods and knowledge). The term open source gained popularity with the rise of the Internet, which provided access to diverse production models, communication paths, and interactive communities.

9 X-Windows History Text-Based vs GUI For many years, operating systems worked in text-based environments, mainly due to hardware restrictions of display devices (such as monitors). Developers of operating systems experimented with different ways to help accommodate humans when interfacing with computers in addition to command-driven interfaces. Examples include menu-driven, and graphical user interfaces (GUI). A combination of these types of interfaces accommodates all groups...

10 X-Windows History X Windows Time-line

11 X-Windows History The X Window System goes by many different names, and sometimes this is a source of confusion. According to the manpage, X should be referenced using one of these names: X X Window System X Version 11 X Window System, Version 11 X11 Notice that "X Windows" is not on that list; this omission was originally due to concern about confusion with Microsoft's Windows product line.

12 X-Windows Structure Seven Layers of an X Based GUI It is Unix tradition to assemble solutions out of many small programs rather than to use a single, monolithic program. This approach gives more flexibility, since these smaller building blocks may be combined in different ways to meet different needs. GUIs based on the X Window System follow this same philosophy—they're built in layers that can be mixed and matched as needed.

13 X-Windows Structure Most visible to user Least visible to user

14 X-Windows Structure Network Transports Enables the other layers to communicate. This layer almost always consists of TCP/IP plus a faster connection scheme for local clients (Section 1.14), but many older or proprietary network transports can be used, including IPX/SPX and DecNET.

15 X-Windows Structure X Windows Server Consists of the software that manages the display (which normally consists of a keyboard, video screen, and mouse) and runs on the computer connected to the display hardware. All of the layers above the X server are considered clients of that server and may be located anywhere on the local network, or even over the Internet.

16 X-Windows Structure Display Manager Enables a user to log in to the system graphically. Most display managers ask the user to type his user ID and password, but it's possible to use almost any authentication scheme, including biometric scanning.

17 X-Windows Structure Session Manager Tracks application state across login sessions, starting standard clients such as the window manager and desktop environment components, restarting applications that were active at the end of a previous session, and optionally restarting applications if they crash.

18 X-Windows Structure Window and Compositing Manager Manages window placement and provides window decorations. This includes window title bars, borders, and controls for common operations such as resizing, maximizing, minimizing, moving, and closing windows. A window manager is considered to be a special class of client, and only one can be active on a display at a time.

19 X-Windows Structure Desktop Environment One or more programs that provide a desktop paradigm for the user. This may include menus to start programs, trays or panels to indicate currently running programs, icons that represent files or programs on the desktop background, docked applets, and other useful tools and utilities.

20 X-Windows Structure Application Clients Programs that enable the user to perform useful work. They are spreadsheets, word processors, web browsers, media players, video editors, and so forth.

21 X-Windows Structure Toolkits (Development) Programming libraries that are used to simplify the task of writing clients that communicate with an X server. Toolkits are not a layer, but they do support and simplify the construction of the client layers.

22 X-Windows Development The programs that access and use display resources are the clients. They may be on the same computer as the server, or they may be located down the hall, or they may be on the other side of the planet. The bottom two layers (Network Transport and X Server) are mandatory; the other layers are optional. This provides a lot of flexibility in the way that the GUI operates.

23 X-Windows Development Examples Automated teller machine doesn't need to log in with a user ID, to move or resize windows, or to manage files and start programs. Therefore the display manager, window manager, and desktop environment layers are not needed; the ATM application can directly take control of the entire display space.

24 X-Windows Development Examples Accounting information system Display manager layers is used as security to prevent unauthorized access, and, window manager, and desktop environment layers maintain flexibility to run other programs. Application client(s) (user program(s)) is also run with its own security and transaction processing tasks.

25 X-Windows Development Examples Kiosk Network transport and X-windows server provide basis for application to run in order to display company information. Allows remote viewing application to run on another remote computer via Internet to allow administrator to check machine status. This connect can be secure (i.e. “tunnelling”)...

26 X-Windows Development There are three main toolkits currently in use, and desktop environments have been based upon each one: GTK+, Qt, Motif Almost all new development is now based on the GTK+ and Qt toolkits, primarily because they are open source (http://opensource.org) and therefore more accessible to developers.

27 X-Windows Development There's more to a desktop than just a display—there's also sound, filesystem integration, on-the-fly hardware discovery, and much more. All of these bases must be covered in order to produce a desktop environment that can compete with commercial offerings such as Microsoft Windows or Mac OS X.

28 X-Windows Development Recognizing this, developers have rallied around freedesktop.org, creating an informal consensus-building forum for desktop-oriented technologies.

29 Next Class (lab) In the next class, we will be using lab-time to gain “hands-on” introduction to the X Windows system. I recommend reading Chapter 1 in the X Power Tools textbook (online)...


Download ppt "XWN740 X-Windows Configuring and Using Introduction to X-Windows (X Power Tools - Chapter 1)"

Similar presentations


Ads by Google