V3) X-Windows(Client/Server

Total Page:16

File Type:pdf, Size:1020Kb

V3) X-Windows(Client/Server CS4CC3 / CS6CC3 Advanced Operating Systems Laboratory 1 (v3) X-Windows(Client/Server) LAB to be done individually File:4cc04lb1.doc Date:27sep04/wfsp Revision Level:3.0 2004/2005 CS 4CC3/6CC3 -- Laboratory 1 page 1-2 INTRODUCTION This laboratory will introduce you to the X WINDOW SYSTEM. You will explore the features and capabilities of the X Window System by examining the components offered. The main goal of this laboratory will be to allow you to become familiar with the X Window System and see the way in which programming is handled in a windowing environment. Some of the later labs in this course require the operation and an understanding of the X-window system. Using the X Window System is simply learning how to manipulate windows, icons, and applications will be the main emphasis. In addition to becoming familiar with the windowing system you will be asked to interpret differences in execution time between a host machine and a remote machine using particular benchmark tests. The appendix illustrates the development side of the X Window System. You will be able to inspect some working applications and determine how they work. The difference between raw Xprogramming in C and that done with the X toolkit is quite striking and provided for your information only. SYSTEM OVERVIEW The X Window System is described as a "software environment for engineering workstations."1 Project Athena and the Laboratory for Computer Science, two organizations at the Massachusetts Institute of Technology responsible for developing and using large quantities of workstation application programs, realized that the reprogramming of applications for different types of workstations was wasting large amounts of time and resources. In order to alter this inconvenience, they introduced a common workstation interface. This system was developed at the Massachusetts Institute of Technology (M.I.T.) in the hopes that goals could be reached in the areas of network- transparency, vendor-independence, and portability. Network-transparency allows an application running on a remote CPU to be connected to a workstation and use that workstation for input and output purposes. X applications are portable which means that as long as the application can create a connection to a workstation it can use all of the capabilities of that workstation regardless of the model or vendor provided that the X network protocol is supported. This standard environment for applications, called the X Window System, has grown to be quite popular and there are many components to the system, which need to be understood before programming can be attempted. The X Window Setting The environment of the X Window System is made up of several important entities. The entire system is built upon the Base Window System, which uses the X Network Protocol. This Protocol is the only way through which applications can interface with the Base Window System. To hide some of the complexities of the X Network Protocol an X Toolkit is often used. Figure 1 shows the different 1 Jones, Oliver, Introduction to the X Window System, Prentice-Hall, Englewood Cliffs, NJ, 1989, pp. 2. 2004/2005 CS 4CC3/6CC3 -- Laboratory 1 page 1-3 layers, which constitute the make up of the X Window System. The Base Window System is the lowest layer upon which all other components are added. Applications do not typically access the Base Window System directly. Instead, they use the Xlib; a basic C language routine library. The remaining piece of the puzzle, the window manager, can be seen on the left side of the diagram. It is treated as an application by the X Window system and it's purpose is to monitor window activities. Figure 1: Software components of the X-system. Client-Server Relationship and the X Network Protocol The X Window System is based on the client-server model. The server is the program which is resident in each particular workstation; while applications make up the client portion of this relationship. Messages, which flow between these two entities, are the basic means of communication in this type of model. The X Network Protocol determines the make-up and interpretation of the messages being transferred. In order for this model to take place, a connection must first be made between the client and the server. The application is responsible for making this connection to the server. Once a connection has been established, the transfer of messages can begin using the X Network Protocol. 2004/2005 CS 4CC3/6CC3 -- Laboratory 1 page 1-4 PART I Introduction The purpose of this part of the laboratory is to introduce you to the X Window System as a beginner. You will login to X Windows on one of the Suns and explore how some of the system features work. You will be introduced to windows, X Window applications, menus, and pointer use within windows. Throughout this laboratory it is important to remember that the X Window System is, from a user point of view, relatively easy to use but has a much more complex inner-working which is hidden from view. After reading the preceding System Overview section and the accompanying appendix answer the following questions about the X Window System and include your answers as part of the lab report submitted seven days after the lab completion. 1. What are the four types of packets or messages used in the client-server relationship and give an example of each? 2. Define the following: window, window manager, X Toolkit, Xlib, pointer, X Network Protocol. 3. Explain briefly the diagram presented in the System Overview section. Figure 2: The famous X-Window screen. Note: your screen may differ slightly depending on which window manager has been selcted as the default for the display server in use. 2004/2005 CS 4CC3/6CC3 -- Laboratory 1 page 1-5 Logging In You should sit down in front of a Sun workstation console in ITC-235 or ITC-236*•. A login prompt should appear when you hit the ENTER key. It should look similar to the following although there are several names, which could precede login (i.e. wolf<n> or fox<n>, etc.). Common Desktop Environment Server login : Use your usual login account name and password as noted above, as in wolf2 login : xxxxxxx and respond to the password prompt by typing Password : yyyyyy This should result in a successful login. If this is not the case, ask Mr. Robert Li (RL) or Mr. Derek Lipiec (DL) of the Departmental technical staff (ITC-242) for assistance. Once logged in you may wish to change the default password using the passwd command. You will know that you have entered X Windows when you see some or all of the following: a clock, one or two windows, and an X that you can move using the pointer. See figure 2-2. If you do not reach this stage within a few minutes ask either RL or DL for assistance. Enter your name and password, and figure out which environment you are using. Older machines often default to twm or olwm. Linux based machines, more common at home, will often supply KDE or Gnome. Sun machines often use CDE. The important thing to realize is that no matter which environment you are using, you are still running X. Mouse Movement One of the most important aspects of any windowing system is the pointer device. The pointer is controlled by the mouse normally attached to the right-hand side of your keyboard. Place this on top of the square pad and move it around, watching the screen as you do. You should find that an X is moving within the screen. NOTE: depending on which display server is executing and its selected window manager, some of these mouse movement questions are not applicable. Do your best to see how the behaviour and mouse movements are correlated. • For users already familiar with X-windows, you may perform these operations from home using either a Linux workstation or a MS Windows/Apple OS appropriately equipped with an X-Windows display server software system which converts the PC into a X display server station. Usually a standard login is done from home to the CAS machine designated as the client application system using secure shell (remote login system – do not use “telnet”, “rlogin” or other unsecure method for CAS machine access) which has been previously set up to handle X-tunnelling. The recent VPN (virtual private network) interconnection system from CAS made to access on-campus machines can also be utilized. 2004/2005 CS 4CC3/6CC3 -- Laboratory 1 page 1-6 What happens when you move the pointer into one of the windows on the screen? To enter commands in a particular window the pointer must be in the window. This will cause the cursor at the prompt to become highlighted. Now, move the pointer into the action bar of the same window. The action bar is the top bar of the window which has the name of the window on the right hand side and a small box with two arrows pointing up and down on the right. What happens when you move the pointer here? Are you still able to enter commands with the pointer in this location? Look at the mouse and you should notice that there are three buttons present. Try pressing down one of the mouse buttons while the pointer is in the action bar and holding it down to see what each does. When you press and hold the left mouse button while in the action bar and move your mouse at the same time what happens? Are there any restrictions to what you can do? Explain what the other two mouse buttons do in this instance.
Recommended publications
  • The Glib/GTK+ Development Platform
    The GLib/GTK+ Development Platform A Getting Started Guide Version 0.8 Sébastien Wilmet March 29, 2019 Contents 1 Introduction 3 1.1 License . 3 1.2 Financial Support . 3 1.3 Todo List for this Book and a Quick 2019 Update . 4 1.4 What is GLib and GTK+? . 4 1.5 The GNOME Desktop . 5 1.6 Prerequisites . 6 1.7 Why and When Using the C Language? . 7 1.7.1 Separate the Backend from the Frontend . 7 1.7.2 Other Aspects to Keep in Mind . 8 1.8 Learning Path . 9 1.9 The Development Environment . 10 1.10 Acknowledgments . 10 I GLib, the Core Library 11 2 GLib, the Core Library 12 2.1 Basics . 13 2.1.1 Type Definitions . 13 2.1.2 Frequently Used Macros . 13 2.1.3 Debugging Macros . 14 2.1.4 Memory . 16 2.1.5 String Handling . 18 2.2 Data Structures . 20 2.2.1 Lists . 20 2.2.2 Trees . 24 2.2.3 Hash Tables . 29 2.3 The Main Event Loop . 31 2.4 Other Features . 33 II Object-Oriented Programming in C 35 3 Semi-Object-Oriented Programming in C 37 3.1 Header Example . 37 3.1.1 Project Namespace . 37 3.1.2 Class Namespace . 39 3.1.3 Lowercase, Uppercase or CamelCase? . 39 3.1.4 Include Guard . 39 3.1.5 C++ Support . 39 1 3.1.6 #include . 39 3.1.7 Type Definition . 40 3.1.8 Object Constructor . 40 3.1.9 Object Destructor .
    [Show full text]
  • A Successor to the X Window System
    Y: A Successor to the X Window System Mark Thomas <[email protected]> Project Supervisor: D. R¨uckert <[email protected]> Second Marker: E. Lupu <[email protected]> June 18, 2003 ii Abstract UNIX desktop environments are a mess. The proliferation of incompatible and inconsistent user interface toolkits is now the primary factor in the failure of enterprises to adopt UNIX as a desktop solution. This report documents the creation of a comprehensive, elegant framework for a complete windowing system, including a standardised graphical user interface toolkit. ‘Y’ addresses many of the problems associated with current systems, whilst keeping and improving on their best features. An initial implementation, which supports simple applications like a terminal emulator, a clock and a calculator, is provided. iii iv Acknowledgements Thanks to Daniel R¨uckert for supervising the project and for his help and advice regarding it. Thanks to David McBride for his assistance with setting up my project machine and providing me with an ATI Radeon for it. Thanks to Philip Willoughby for his knowledge of the POSIX standard and help with the GNU Autotools and some of the more obscure libc functions. Thanks to Andrew Suffield for his help with the GNU Autotools and Arch. Thanks to Nick Maynard and Karl O’Keeffe for discussions on window system and GUI design. Thanks to Tim Southerwood for discussions about possible features of Y. Thanks to Duncan White for discussions about the virtues of X. All company and product names are trademarks and/or registered trademarks of their respective owners.
    [Show full text]
  • Toward General Purpose 3D User Interfaces: Extending Windowing Systems to Three Dimensions
    TOWARD GENERAL PURPOSE 3D USER INTERFACES: EXTENDING WINDOWING SYSTEMS TO THREE DIMENSIONS A Thesis presented to the Faculty of California Polytechnic State University San Luis Obispo In Partial Fulfillment of the Requirements for the Degree Master of Science in Computer Science by Forrest Reiling June 2014 c 2014 Forrest Reiling ALL RIGHTS RESERVED ii COMMITTEE MEMBERSHIP TITLE: Toward General Purpose 3D User Inter- faces: Extending Windowing Systems to Three Dimensions AUTHOR: Forrest Reiling DATE SUBMITTED: June 2014 COMMITTEE CHAIR: Assistant Professor Zo¨eWood, Ph.D., Department of Computer Science COMMITTEE MEMBER: Assistant Professor Chris Lupo, Ph.D., Department of Computer Science COMMITTEE MEMBER: Professor Franz Kurfess, Ph.D., Department of Computer Science iii ABSTRACT Toward General Purpose 3D User Interfaces: Extending Windowing Systems to Three Dimensions Forrest Reiling Recent growth in the commercial availability of consumer grade 3D user interface de- vices like the Microsoft Kinect and the Oculus Rift, coupled with the broad availability of high performance 3D graphics hardware, has put high quality 3D user interfaces firmly within the reach of consumer markets for the first time ever. However, these devices require custom integration with every application which wishes to use them, seriously limiting application support, and there is no established mechanism for mul- tiple applications to use the same 3D interface hardware simultaneously. This thesis proposes that these problems can be solved in the same way that the same problems were solved for 2D interfaces: by abstracting the input hardware behind input prim- itives provided by the windowing system and compositing the output of applications within the windowing system before displaying it.
    [Show full text]
  • Development and Analysis of a Window Manager Concept for Consolidated 3D Rendering on an Embedded Platform
    Institute of Parallel and Distributed Systems University of Stuttgart Universitätsstraße 38 D–70569 Stuttgart Master’s Thesis Nr. 0202-0001 Development and Analysis of a Window Manager Concept for Consolidated 3D Rendering on an Embedded Platform Han Zhao Course of Study: INFOTECH Examiner: Prof. Dr. Kurt Rothermel Supervisor: Dipl.-Inf. Simon Gansel, Dipl.-Inf. Stephan Schnitzer Commenced: 19. Jan. 2015 Completed: 21. July 2015 CR-Classification: I.3.2, C.3, D.4.9 Abstract Nowadays with the information technology rapidly developing, an increasing number of 2D and 3D graphics are used in automotive displaying systems, to provide vehicle information, driving assistance, etc. With the demand of 3D models interacting with each other, an implementation should have a 3D compositing capability. However, traditional 2D compositing implementations are not capable of 3D models compositing tasks. In order to composite 3D graphics on embedded platform, the 3D compositing implementation is necessary. Therefore, a concept of window manager is developed aiming to composite 3D graphics with an optimized efficiency for embedded platform. Specially for automotive platforms, a virtualization is made to unify multiple Electronic Control Units (ECUs) into one single ECU platform. On this platform, a server and multiple clients are implemented with dedicated Virtual Machines (VMs). The server is in charge of rendering tasks requested from clients. Based on this, a 3D compositing concept is implemented. It handles efficiently the multiple 3D applications situation using a method of off-screen rendering. A server-side virtualization is also implemented by replacing certain client-side commands during commands forwarding. With this virtualization implementation, multiple applications run simultaneously with accessing single 3D GPU only.
    [Show full text]
  • Building a 3D Graphic User Interface in Linux
    Freescale Semiconductor Document Number: AN4045 Application Note Rev. 0, 01/2010 Building a 3D Graphic User Interface in Linux Building Appealing, Eye-Catching, High-End 3D UIs with i.MX31 by Multimedia Application Division Freescale Semiconductor, Inc. Austin, TX To compete in the market, apart from aesthetics, mobile Contents 1. X Window System . 2 devices are expected to provide simplicity, functionality, and 1.1. UI Issues . 2 elegance. Customers prefer attractive mobile devices and 2. Overview of GUI Options for Linux . 3 expect new models to be even more attractive. For embedded 2.1. Graphics Toolkit . 3 devices, a graphic user interface is essential as it enhances 2.2. Open Graphics Library® . 4 3. Clutter Toolkit - Solution for GUIs . 5 the ease of use. Customers expect the following qualities 3.1. Features . 5 when they use a Graphical User Interface (GUI): 3.2. Clutter Overview . 6 3.3. Creating the Scenegraph . 7 • Quick and responsive feedback for user actions that 3.4. Behaviors . 8 clarifies what the device is doing. 3.5. Animation by Frames . 9 • Natural animations. 3.6. Event Handling . 10 4. Conclusion . 10 • Provide cues, whenever appropriate, instead of 5. Revision History . 11 lengthy textual descriptions. • Quick in resolving distractions when the system is loading or processing. • Elegant and beautiful UI design. This application note provides an overview and a guide for creating a complex 3D User Interface (UI) in Linux® for the embedded devices. © Freescale Semiconductor, Inc., 2010. All rights reserved. X Window System 1 X Window System The X Window system (commonly X11 or X) is a computer software system and network protocol that implements X display protocol and provides windowing on bitmap displays.
    [Show full text]
  • Implementation Support Introduction Elements of Windowing Systems
    Implementation support Introduction chapter 8 • programming tools How does HCI affect of the programmer? – levels of services for programmers • windowing systems Advances in coding have elevated programming – core support for separate and simultaneous user- hardware specific system activity → interaction-technique specific • programming the application and control of dialogue Layers of development tools • interaction toolkits – windowing systems (operating systems) – bring programming closer to level of user perception – interaction toolkits • user interface management systems – user interface management systems – controls relationship between presentation and functionality 1 2 Elements of windowing systems roles of a windowing system Device independence programming the abstract terminal device drivers image models for output and (partially) input Resource sharing achieving simultaneity of user tasks window system supports independent processes isolation of individual applications 3 4 Architectures of windowing The client-server architecture systems Need not be three possible software architectures on same machine – all assume device driver is separate – differ in how multiple application management is implemented 1. each application manages all processes – everyone worries about synchronization – reduces portability of applications 2. management role within kernel of operating system – applications tied to operating system 3. management role as separate application maximum portability 5 6 Programming the application Programming the application
    [Show full text]
  • Basic Single-Window X Overview
    1/10/2013 Basic Single-Window X X: The Basics 1 Overview • Basic X Architecture • Drawing • Events and the Event Loop 2 1 1/10/2013 Windowing Systems • 1960’s: Doug Englebart used a mouse-driven cursor with multiple (non-overlapping?) windows. • 1973: Xerox PARC developed the Alto -- bit-mapped graphics, desktop metaphor, GUI. Heavily influenced PERQ, Apple Lisa/Mac, Sun workstations. Followed by Xerox Star. Alto stacked windows; Star mostly tiled. • 1984: Apple Macintosh released. First commercially successful multi-window GUI. • 1984: Work on X windowing system begins. • 1985: Microsoft releases Windows 1.0; doesn’t really take off until 1990 release of Windows 3.0. 3 Valuable X References • CS349 web site, see Resources page – The X Window System • background, design goals, basic architecture • PDF available online – The Xlib manual: http://tronche.com/gui/x/xlib • link and a PDF available on CS349 site – Basic Graphics Programming With The Xlib Library tutorial – Sample code 4 2 1/10/2013 Notes on this lecture • All examples were implemented and tested on VM – Should be reasonably generic – You may need to tweak some things if you want to program on your own computer – … But remember that assignments must run on VM • Class examples use standard C programming language – No objects, no STL – You can use c or c++ • TAs will be looking at your sourcecode … XWindows System (1) • Client-Server model of an application and UI – The client is the application that is running on a computer – The server is the display that is being drawn 3 1/10/2013 XWindows System (2) • Goal was flexibility – Many clients (perhaps on multiple machines) – One display • Generalization of model-view-controller architecture – Model = client application – View/Controller = terminal device running Xserver XWindows and XLib • To avoid implementing message passing every time a new program written, created XLib – Every client who “speaks” XLib could interact with any XServer – So what? • VERY NOVEL in the ‘80s.
    [Show full text]
  • Using the GNOME and KDE Desktops
    Using the GNOME and KDE Desktops George Ajam Computer Science Dept. College of Science March, 8th 2012 Linux Desktop General overview Below we will see an overview about the different software involved in the Linux desktop. The way they are ordered from the user on the top to the hardware on the bottom, should roughly reflect usage dependency between the software. Software on the top uses services of the software located below them. The next sections will give a short introduction to each of them. The X Server The X Window System1 (commonly X or X11) is a computer software system and network protocol that provides a graphical user interface (GUI) for networked computers. It creates a hardware abstraction layer where software is written to use a generalized set of commands, allowing for device independence and reuse of programs on any computer that implements X. Special commands xwininfo:Shows informations about windows related to the X Server xkill:Provides a graphical way to close the window resource of any window startx:Starts an Xserver and executes all commands in the file /home/<user>/.xinitrc The X Server terminates when the last command in the list exits. Display Manager In the X Window System, an X display manager runs as a program that allows the starting of a session on an X server from the same or another computer. A display manager presents the user with a login screen which prompts for a username and password. A session starts when the user successfully enters a valid combination of username and password.
    [Show full text]
  • The Beginner's Handbook
    The beginner’s handbook Debian 10 Buster arpinux © WTFPL trad. Saby43 & arpinux Updated: July 31, 2020 – About this manual – “The beginner’s handbook” is a simplified manual to install and master the Debian system. You will find in the following pages the answers to your first questions concerning the Debian GNU/Linux system , its history, how to obtain it, to install it, to master it, to configure and administrate it. You will be able to go further and obtain information concerning the privacy protection, the backing up of your data, and the various actors of the Free Software world. Usually, the manuals begin by teaching you the theoretical basis and the usage of the terminal. This manual takes the very side of the “graphical environment”: it is designed to let you start quickly with Debian, screen powered on, fingers on the keyboard and the mouse nearby . – The mission of this manual is not to be comprehensive – A lot of external links are available in this manual. Don’t hesitate to click on them in order to read more detailed information. For a more detailed documentation, please visit the official Debian Wiki: https://wiki.debian.org/FrontPage or the Debian administrator’s handbook: https://debian-handbook.info/browse/stable/ – How to use this manual? – This PDF version includes a detailed summary and a table of images at the end of the guide. Note: This manual includes some commands or code blocks that are sometimes longer than the width of the page. In this case, a backslash “\” is added and the rest of the command or code is carried over to the next line.
    [Show full text]
  • An Introduction to X Window Application Development
    Calhoun: The NPS Institutional Archive Theses and Dissertations Thesis Collection 1992-03 An introduction to X Window application development. Rust, David Michael Monterey, California. Naval Postgraduate School http://hdl.handle.net/10945/23933 FV KNOX LIBRARY •Ud SCHOOL SivAL POSTGRADUATE SoNTEHEV.CAUFORN.AG^^ CURITY CLASSIFICATION OF THIS PAGE REPORT DOCUMENTATION PAGE 1b. RESTRICTIVE MARKINGS REPORT SECURITY CLASSIFICATION UNCLASSIFIED a SECURITY CLASSIPICAT I6M AUTH6RITV 3. bisTRiBuTi6N7AVAlLABiUTY 6P REP5RT Approved for public release; b. dECLAssIFICATIoN/doWNgRADINg SCHEDULE distribution is unlimited PERFORMING ORGANIZATION REP6RT NUM&ER(S) 5. M6niT6Ring6Rgani2aTi6n rep6rT numbER(S) *. NAME 6F PERFORMING 6R6ANIZATI6N 6b OFFICE SYMBOL 7a. NAME 6E M6NIT6R1NG ORGANIZATION vdministrative Sciences Department (if applicable) Naval Postgraduate School Javal Postgraduate School AS :. ADDRESS (City, State, and ZIP Code) 7b. ADDRESS (City, State, and ZIP Code) /lonterey, CA 93943-5000 Monterey, CA 93943-5000 NAME OF FUNDING/SPONSORING 8b. OFFICE SYMBOL g PROCURE M E N T I NST RUMEN T ID E N T I FI CATION NUMBE R ORGANIZATION (if applicable) 6. ADDRESS (City, State, and ZIP Code) 10. SOURCE OF FUNDING NUMBERS PROGRAM 1 PR6JECT TTa^R" WoRkUNiT ELEMENT NO. NO. NO. ACCESSION NO. 1 . TITLE (Include Security Classification) ^N INTRODUCTION TO X WINDOW APPLICATION DEVELOPMENT (U) 2 PERSONAL AUTHOR(S) lust, David M. 3a. type of report 13b. time covered 14. DATE OF REPORT (Year, Month, Day) 16. PAGE COUNT Master's Thesis from 10/90 to 03/92 1992, March, 23 70 supplementary notation 6 The views expressed in this ^sis ^ those of the author md do not reflect the official policy or position of the Department of Defense or the United States Government.
    [Show full text]
  • Importance-Driven Compositing Window Management
    Importance-Driven Compositing Window Management Manuela Waldner1, Markus Steinberger1, Raphael Grasset2, and Dieter Schmalstieg1 1Institute for Computer Graphics and Vision 2HIT Lab NZ Graz University of Technology University of Canterbury Graz, Austria Christchurch, New Zealand f waldner j steinberger j schmalstieg [email protected] [email protected] ABSTRACT In this paper we present importance-driven compositing window management, which considers windows not only as basic rectangular shapes but also integrates the importance of the windows’ content using a bottom-up visual attention model. Based on this information, importance-driven com- positing optimizes the spatial window layout for maximum visibility and interactivity of occluded content in combina- tion with see-through windows. We employ this technique for emerging window manager functions to minimize infor- mation overlap caused by popping up windows or floating toolbars and to improve the access to occluded window con- tent. An initial user study indicates that our technique pro- vides a more effective and satisfactory access to occluded information than the well-adopted Alt+Tab window switch- (a) (b) ing technique and see-through windows without optimized spatial layout. Figure 1. (a) Conventional overlapping windows occlude important in- formation in obscured windows. To reveal this information, the user has to change the window layout manually. (b) Importance-driven com- Author Keywords positing spatially arranges occluded windows and applies see-through compositing window management, visual saliency, space compositing to maximize content visibility and interactivity. management, transparency ACM Classification Keywords Most current window managers employ multiple overlap- ping windows and leave the spatial arrangement of the in- H.5.2 Information Interfaces and Presentation: User Inter- dividual windows merely to the user.
    [Show full text]
  • Section 2: a Quick Window Manager and Unix Tutorial
    2. A quick windowmanager and Unix tutorial (This section last updated August 2012) This section provides •some "getting started" pointers on the graphical windowing environments you will be using, primar- ily on the ECMC Linux system in the room 52 studio, but also with some references and comparisons to comparable Mac OSX and Windows procedures; and •anintroduction to some basic Unix commands and utility programs that can be run from a shell windowonECMC Linux and Macintosh music production systems As noted in section 1, the core of a computer operating system, which implements the most basic sys- tem protocols and operations, is called the kernel.The open source Linux kernel is developed and main- tained by an international group of thousands of volunteers under the direction of Linus Torvalds, who wrote much of the first Linux kernel, modeled after the functionality of Unix operating systems, during the early 1990s. The Linux kernel is updated several times each year,and includes both a stable branch, designed for most users (likeus), and a developmental branch, used by Linux developers to test newfea- tures before theyare incorporated into stable versions of the kernel. Technically,the term "Linux"refers only to an operating system kernel developed by the team of Linux Project programmers under Torvolds’ direction. The GNU (pronounced "ga-NOO") Project is a non- profit organization that supports the development of a broad range of open source applications, without which the Linux kernel would be useless. Manyusers of GNU software on Linux kernels prefer to call their operating system GNU Linux or GNU/Linux.Incommon usage, however, the term Linux often is used loosely to refer to all GNU operating system components as well as the Linux kernel.
    [Show full text]