360 likes | 566 Vues
X-Windows. Free-Windows. A brief history . The X Window system, developed at MIT in the late 1980s, is rapidly becoming the industry standard windowing system for graphics workstations.
E N D
X-Windows Free-Windows
A brief history • The X Window system, developed at MIT in the late 1980s, is rapidly becoming the industry standard windowing system for graphics workstations. • The software is freely available, very versatile, and is suitable for a wide range of hardware platforms, from high-end microcomputers to mainframes.
Free Source Code • X windows is a hardware-independent network-based window system which was developed at MIT. • In strict legal terms, it is not a public-domain product, but the source code is freely available, and is available for virtually any workstation, mainframe or high-end micro.
Other windowing systems • A number of manufacturers supply proprietary window systems with their workstations. • Sun Microsystems supply two products with their workstations - Sunview and OpenWindows. • DEC have a product called DECWindows which is available on DEC's Unix and VMS workstations.
Compatibility • Both DECWindows and OpenWindows are X-compatible. • They both operate on the client-server principle, and in general it is possible to run standard X clients under a DECWindows or OpenWindows server. • There are, however, problems, in that the different servers may adopt different font-naming schemes, and both DECWindows and OpenWindows may utilise extensions to the standard X protocol.
The Main Components of X • Any X window system consists of 2 distinct parts – • the X server • and 1 or more X clients.
Server and Client(s) • It is important to realize the distinction between the server and the client. • The server controls the display directly, and is responsible for all input/output via the keyboard, mouse or display. • The clients, on the other hand, do not access the screen directly - they communicate with the server, which handles all input and output. • It is the clients which do the "real" computing work - running applications or whatever. • The clients communicate with the server, causing the server to open one or more windows to handle input and output for that client.
The X server • When using X on a workstation, the first task which must be done after logging in is to start up the X server. • This is generally accomplished by using a script called xinit. • This, like most other X-related code, usually resides in the directory /usr/bin/X11.
Starting the server in this way, however, is generally not a good idea, as it simply starts up the server, and does not give the opportunity to start any clients. • Indeed, as the server controls all input and output, and there are no clients communicating with the server, it is not immediately obvious how to start up a client!
startx command • Start the X server • Check to see if the user has a personal X startup command file, named ~/.xinitrc. • If this file does exist, the commands contained within it will be executed. • If it does not exist, a simple default startup configuration, which can be found in /usr/lib/X11/xinit/xinitrc, will be used.
X clients • The main means of communication with X is by using the keyboard and the mouse. • The mouse moves a pointer round the screen. • Pressing the mouse buttons activates various functions depending on where the mouse is located. • To send your input from the keyboard to any particular client, you must position your mouse pointer over that client.
The xterm client • The xterm client is probably the most commonly used X clients. • It simply provides a terminal window to the machine on which the xterm client is running. • For example, if the xterm is running on a Sun, a normal Unix shell will appear within the Xterm window.
The xman client • xman is another very useful client. • It is a graphical interface to the Unix manual pages. • By using the mouse, it is possible to display any of the hundreds of pages of information available. • It is one of the most useful of all the X clients - learn how to use it!
The xedit client • xedit is a simple text editor. It does not have the power of editors such as vi or emacs, but in some circumstances this is a distinct advantage, as it means that there are very few commands to remember. • This makes it a very easy editor to use.
xbiff client • The strangely named xbiff client notifies you when new mail arrives. • It produces a picture of an American-style mailbox, and whenever new mail arrives, the flag on the side of the box will be raised.
Why it is called biff? • A useless piece of trivia: xbiff is so called because the original Unix utility to notify the user of new mail was called biff. • Biff was a dog, owned by a student at University of California, Berkeley in the days when BSD Unix was being developed. • Biff had a habit of barking when the postman came
The xclock client • . xclock displays an analogue clock on your screen.
The Window Manager • The window manager is a rather special X client. • It is a tool which allows you to move, resize, iconify and kill other windows. • It provides a title bar for every window, and may make several pop-up menus available.
Window Managers for X • FVWM • FVWM95 • TWM/VTWM • MWM • CTWM • OLWM/OLVWM • wm2/wmx • AfterStep • AmiWM • Enlightenment • WindowMaker • SCWM • IceWM • Sawfish • Blackbox • Fluxbox • Metacity • Others...
Partial list of features new to 2.5.x • Full Enhanced Window Manager Hints support • Full internationalization • Greatly improved font support, including anti-aliasing • Improved decoration code (no flickering anymore) • Featuring side titles, including vertical text • Powerful WindowShade in all directions, including diagonal • Supporting PNG including alpha blending • Image rendering in colorsets • Perl library for creating modules in Perl • New module FvwmPerl to enable scripting in rc files • Optional text shadows (looks nice with light text)
Desktops • GNOME • KDE • CDE • XFce
KDE • KDE is a modern network transparent desktop environment which uses the Qt cross-platform GUI toolkit. • It contains a base set of applications such as a window manager (called kwm), web browser, instant messenger, and integrated help system, all with a consistent look and feel, and translations for over 50 languages.
The GNU Network Object Model Environment • The GNOME (pronounced "Gah-NOME") project's aim is to build a complete, user-friendly desktop based entirely on free software. • It is not a window manager, and in fact has to be run in conjunction with a window manager. • GNOME has advanced rapidly and is now very popular, particularly on the Linux platform.
CDE-The Common Desktop Environment • The Common Desktop Environment (CDE) is a commercial graphical user interface for UNIX in its various flavors (AIX, Digital UNIX, HP/UX, Solaris, UnixWare, etc.). • The desktop has been jointly developed by Hewlett-Packard, IBM, Novell and Sun Microsystems. • It has been adopted as a standard operating environment by these companies and many others in the UNIX workstation market.
History of Linux (Courtesy Prof. Remzi H. Arpaci-Dusseau) http://www.cs.wisc.edu/~remzi/Linux/
Linux Features • Multi-tasking (more than one task/program can run simultaneously). • Multi-user (more than one user can work simultaneously). • Multi-processing (more than one processor is supported by the OS, SMP support is very stable). • POSIX compliant…….behavior similar to traditional Unixes (look and feel). • Runs on a variety of architectures (not just ix86 based PCs): Sparc, Alpha, PowerPC, MIPS, PalmPilot, ... • An Embedded version of Linux exists for hand-held devices and real-time OS applications.
Interfacing Linux with Other OS • Wine and WABI are windows emulators for Linux (limited success so far). Wine is GPL, WABI is commercial. • DOSemu is a very stable MS-DOS emulator.Some of your partitions on your disk can be MS-DOS partitions. You can read MS-DOS floppies too. • VMware is the best alternative, if you need to run both Linux and MS Windows. It is a commercial emulator that emulates the x86 hardware flawlessly, so any OS that can run on the x86 platform can be installed under VMware as a separate application!
Interfacing Linux with Other OS VMWare: Windows XP under Linux