540 likes | 776 Views
Chapter One. Introduction to Linux. Objectives. Understand the purpose of an operating system Outline the key features of the Linux operating system Describe the origins of the Linux operating system Identify the characteristics of various Linux distributions and where to find them
E N D
Chapter One Introduction to Linux
Objectives • Understand the purpose of an operating system • Outline the key features of the Linux operating system • Describe the origins of the Linux operating system • Identify the characteristics of various Linux distributions and where to find them • Explain the common uses of Linux in industry today
Operating Systems • Every computer has two fundamental types of components: • Hardware • Physical components inside a computer • Software • Set of instructions or programs that understand how to use the hardware of the computer in a meaningful way • Once a program is executed on your computer’s hardware, that program is referred to as a process
Operating Systems • Hardware components include: • Processor (CPU) • Physical memory (RAM) • Hard disk, floppy disk, and CD-ROM drives • Sound and video cards • Circuit boards
Operating Systems • There are two different types or programs executed on a computer: • Applications • Operating system (OS) software Figure 1-1: The role of operating system software
Operating System • Device driver • Software containing instructions the kernel of the OS uses to control and interact with a specific type of computer hardware • User interface • What the user sees and uses to interact with OS and application programs • Graphical user interface (GUI) • Component of an operating system that provides a user-friendly interface comprising graphics or icons to represent desired tasks
Operating System Figure 1-2: A Linux graphical user interface • System services • Applications that handle system-related tasks such as printing, scheduling programs, and network access
The Linux Operating System • Linux • Operating system used today to run a variety of applications on a variety of different hardware • Has the ability to manage thousands of tasks at the same time, including allowing multiple users to access the system simultaneously • Hence we refer to Linux as a multiuser and multitasking OS
Versions of the Linux Operating System • The core component of the Linux OS is called the Linux kernel • The Linux kernel and supporting function libraries are written almost entirely in the C programming language • Though a variety of different software can be used to modify the appearance of Linux, the underlying kernel is common to all Linux
Identifying Kernel Versions • Linux kernel versions are comprised of: • Major number • Minor number • If odd, referred to as a developmental kernel • If even, referred to as a production kernel • Revision number
Identifying Kernel Versions Table 1-1: Latest revisions of common Linux kernels
Licensing Linux • Open Source Software (OSS) • Programs distributed and licensed so that the source code making up the program is freely available to anyone who wants to examine, utilize or improve upon it • The format and structure of source code follows certain rules defined by the programming language
Licensing Linux • Some implications of OSS are: • Software is developed very rapidly through widespread collaboration • Software bugs are promptly noted and fixed • Software features evolve very quickly based on users’ needs • The perceived value of the software increases, as it is based on usefulness and not price
Licensing Linux Table 1-2: Software types
Types of Open Source Licenses • GNU Public License (GPL) • Ensures that source code for any OSS will remain freely available to anyone • Free Software Foundation (FSF) • Promotes and encourages the collaboration of software developers worldwide • Artistic license • Open Source license that allows source code to be distributed freely, but changed only at discretion of original author
Types of Closed Source Licenses • Freeware • Distributed free of charge • Source code is not available • Shareware • Initially free but require payment after a period of time or usage
Linux Advantages: Risk Reduction • Companies invest in software to perform many mission-critical tasks • Changes in the market and customer needs may cause companies to change software frequently • This can be very costly and time consuming • An OSS product offers a company the opportunity to maintain and change the source code
Linux Advantages:Meeting Business Needs • Common software available for Linux includes: • Scientific and engineering software • Software emulators • Web servers, Web browsers, and e-commerce suites • Desktop productivity software • Graphics manipulation software • Database software • Security software
Linux Advantages:Stability and Security • Customers using closed source operating systems must rely on the operating system vendor to fix any bugs • Waiting for a hot fix may take weeks or months • Bugs in OSS programs can be identified and fixed very quickly • As Linux source code is freely available and scrutinized, security loopholes are also quickly identified and fixed
Linux Advantages: Flexibility for Different Hardware Platforms • Partial list of hardware platforms on which Linux can run: • Intel • Itanium • Mainframe (S/390) • Cirrus Logic ARM • DEC Alpha • MIPS
Linux Advantages: Flexibility for Different Hardware Platforms • Partial list of hardware platforms on which Linux can run (cont.): • M68K • PA-RISC • SPARC • Ultra-SPARC • PowerPC (Macintosh)
Linux Advantages:Ease of Customization • The ability to control the inner workings of an operating system is another attractive feature of Linux • For example, if you desire to use Linux as an Internet Web server, simply compile the Linux kernel to include only the support needed to be an Internet Web server • This will result in a much smaller and faster kernel
Linux Advantages: Ease of Obtaining Support • The Internet offers a world of Linux documentation • Frequently Asked Questions (FAQs) • HOWTO documents • Linux User Group (LUG) • Open forum of Linux users who discuss and assist each other in using and modifying the Linux OS
Linux Advantages: Cost Reduction Table 1-3: Calculating the Total Cost of Ownership (TCO)
The History of Linux Figure 1-4: Timeline of UNIX and Linux development
UNIX • Multiplexed Information and Computing Service (MULTICS) • Prototype time-sharing OS developed in the late 1960s • UNIX • The first true multitasking, multiuser OS • OS from which Linux originated
UNIX • BSD (Berkeley Software Distribution) • Version of the original UNIX source code • Given away free by AT&T to the University of California at Berkeley • Common flavors of UNIX today include: • Sun Microsystems’s Solaris • Hewlett-Packard’s HP-UX • IBM’s AIX UNIX
The Hacker Culture • Hacker • Refers to someone with the intent of expanding their knowledge of computing through experimentation • Cracker • Specifies someone who illegally uses computers for personal benefit or to cause damage • GNU Project • Free operating system project started by Richard Stallman
Linux • Finnish student Linus Torvalds first developed Linux in 1991 when he was experimenting with improving MINIX for the Intel x86 platform • During the early and mid 1990s, Linux development was radical • Also during this time, several distributions of Linux appeared, including: • Red Hat • Caldera • SuSE
Linux Distributions • Linux distribution that ship with many specialized tools may not contain a GUI • An example of this would be a Linux distribution that fits on a floppy and can be used as a router • Most distribution do ship with a GUI that can be further customized to suit needs of the user • The core component of the GUI in Linux is referred to as X Windows
Linux Distributions • X Windows in combination with a window manager and desktop environment is referred to as a GUI environment • There are two competing GUI environments in Linux: • GNU Object Model Environment (GNOME) • Kommon Desktop Environment (KDE)
Linux Distributions Figure 1-5: The GNOME Desktop
Linux Distributions Figure 1-6: The KDE Desktop
Linux Distributions • Package manager • Software used to install, maintain, and remove other software programs by storing all relevant information in a central software database on the computer • Tarball • Compressed archive of files that contain scripts that install Linux software to the correct locations on the computer system
Linux Distributions Table 1-4: Common Linux distributions
Linux Distributions Table 1-4 (continued): Common Linux distributions
Linux Distributions Table 1-4 (continued): Common Linux distributions
Common Uses of Linux • Linux services may be used on the local computer workstation or they may be configured to allow other computers to connect to it across a network • Services used on a local computer are referred to as workstation services • Services made available for other computers across a network are known as server services
Internet Servers: Mail Services • Mail transfer agents (MTAs) • An e-mail server • Mail delivery agent (MDA) • Service that downloads e-mail from an MTA • Mail user agent (MUA) • Program that allows e-mail to be read by a user
Internet Servers:Routing and FTP Services • Routing • Core service that is necessary for Internet to function • Linux provides support for routing and is easily customizable • File Transfer Protocol (FTP) Services • Most common and efficient method for transferring files over the Internet
Internet Servers:Firewalls and Proxy Services • Firewalls protect companies from outside intruders on the Internet • Linux has firewall support directly built into the kernel • A proxy service requests Internet resources such as Web sites and FTP sites on behalf of the computer inside the company
Internet Servers:Web Services and New Services • Web services • Many Internet tools and services are available, the most popular is the Internet browser • New services • Web servers host valuable information but most do not provide any means for users to communicate with each other • This functionality is provided by a news server, which allows users to post messages in forums called newsgroups
Internet Servers: DNS Services • Computers communicating on a network need to be uniquely identified • This is accomplished by assigning each computer a number called an Internet Protocol (IP) address • An IP addresses is a long string of numbers • IP addresses are masked by strings of user-friendly names, referred to as a Fully Qualified Domain Name (FQDN)
File and Print Servers • Networks were created to share resources, primarily printers and information • Linux is well-suited to the task of centrally sharing resources • It is inherently a fast, light operating system, and a distribution specific to a certain task can be installed on the central server
Application Servers • Application server • Server running a program that acts as an intermediary between a client computer and information, normally stored in a database • Database Management Systems (DBMS) • Collection of programs and tools designed to allow for the creation, modification, manipulation, maintenance, and access of information from databases
Supercomputers • Cluster • Several smaller computers acting as one large supercomputer • Clustering • Act of making a cluster • Most common Linux method of clustering is known as Beowulf clustering • Scalability • Ability of computers to increase workload as the number of processors increases
Scientific/Engineering Workstations • There are many OSS programs available in many different scientific and engineering fields, including: • Physics, astrophysics, and biophysics • Fluid dynamics and geophysics • Biocomputation • Materials and polymer chemistry • General mathematics and optimization • Data mining • Number theory
Scientific/Engineering Workstations • There are many OSS programs available in many different scientific and engineering fields, including (cont.): • Computer/linear/array algebra • Mathematical visualization and modeling • Statistics and regression analysis • Data plotting and processing • Computer graphics generation • Computer modeling
Scientific/Engineering Workstations • There are many OSS programs available in many different scientific and engineering fields, including (cont.): • Paleontology • Molecular modeling • Electrical engineering • Artificial intelligence • Geographic modeling and earth sciences • Oceanography
Office Workstations:Text Editors and Word Processors • Text editor • Program that can create and edit text files • Word processors • Allow the creation and manipulation of text files • Typically GUI-based