every thing you should know about linux prabhaker mateti department of computer science and...
TRANSCRIPT
Every Thing You Should Know Every Thing You Should Know About LinuxAbout Linux
Prabhaker MatetiPrabhaker MatetiDepartment Of Computer Science and EngineeringDepartment Of Computer Science and Engineering
Wright State UniversityWright State UniversityMay 2008May 2008
Are you sure you have not used Are you sure you have not used Linux already?Linux already?
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 33
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 44
Linux runs on …Linux runs on …
PDA? Smart Phone? PDA? Smart Phone? GPS? GPS? TiVO? TiVO? Router? Wireless AP?Router? Wireless AP?Wrist watch? Wrist watch? Car? Airplane?Car? Airplane?
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 55
Linux Cell PhonesLinux Cell Phones
Motorola Rokr E8Motorola Rokr E8 Quad GSM/GPRSQuad GSM/GPRS Multi-codec music Multi-codec music
playerplayer Full HTML browserFull HTML browser Jan. 10, 2008Jan. 10, 2008
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 66
Linux Cell PhonesLinux Cell Phones
http://openmoko.orghttp://openmoko.org Open source Open source
hardwarehardware Free CAD filesFree CAD files
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 77
Linux on iPodsLinux on iPods
uCLinux + podzilla uCLinux + podzilla www.ipodlinux.org/www.ipodlinux.org/ iPOds to 5.5GiPOds to 5.5G iPod Nano 1GiPod Nano 1G
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 88
One Laptop Per ChildOne Laptop Per Child
Runs on LinuxRuns on Linux Sugar “desktop” Sugar “desktop”
promotes sharing and promotes sharing and learning. learning.
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 99
Google Linux ClustersGoogle Linux Clusters
GFS: The Google File System GFS: The Google File System thousands of terabytes of storage across thousands of terabytes of storage across
thousands of disks on over a thousand thousands of disks on over a thousand machinesmachines
150 million queries per day150 million queries per dayAverage response time of 0.25 secAverage response time of 0.25 secNear-100% uptimeNear-100% uptime
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 1010
Smallest Linux SystemSmallest Linux System
Mar. 28, 2005 Mar. 28, 2005 DigiConnect MEDigiConnect ME RJ-45 PlusRJ-45 Plus 0.75 x 0.75 x 1.4 in0.75 x 0.75 x 1.4 in 18 grams18 grams 2.4.27 uClinux 2.4.27 uClinux 32-bit ARM7TDMI 32-bit ARM7TDMI
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 1111
Overview of the Rest of theTalkOverview of the Rest of theTalk
1.1. Linux InternalsLinux Internals
2.2. DistributionsDistributions
3.3. Desktop EnvironmentsDesktop Environments
4.4. Linux ClustersLinux Clusters
5.5. SecuritySecurity
6.6. Open Source SoftwareOpen Source Software
7.7. Important ApplicationsImportant Applications
Linux InternalsLinux Internals
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 1313
Academic Def: An OS consists ofAcademic Def: An OS consists of
File SystemsFile SystemsVirtual Memory ManagementVirtual Memory ManagementProcess ManagementProcess ManagementNetwork LayerNetwork Layer Input/Output SubsystemInput/Output SubsystemUser ManagementUser Management (Booting the OS)(Booting the OS) [Collection of System Programs] [Collection of System Programs]
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 1414
Academic Definition of KernelAcademic Definition of Kernel
OS are expected to be implemented as OS are expected to be implemented as LayersLayers
Kernel is the inner most layerKernel is the inner most layerLayers are architecturally supported by Layers are architecturally supported by
CPU privilege modes.CPU privilege modes.Micro-kernel architectureMicro-kernel architecture
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 1515
““Linux kernel”Linux kernel”
The OS as we defined – boot – SysPrgsThe OS as we defined – boot – SysPrgsMonolithicMonolithicAs FilesAs Files
/boot/vmlinuz/boot/vmlinuz single filesingle file /boot/initrd/boot/initrd single filesingle file /lib/modules/*/lib/modules/* about 3500 filesabout 3500 files
4 Million lines of code4 Million lines of codeSeveral thousand contributorsSeveral thousand contributors
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 1616
Linux KernelsLinux Kernels
Numbering Scheme: Major.Minor.ReleaseNumbering Scheme: Major.Minor.Release2.2 (1999)2.2 (1999)2.4 (2001)2.4 (2001)2.6 (2003)2.6 (2003)
Current Source Code Versions:Current Source Code Versions: linux-2.6.25.3.tar.bz2 10-May-2008 46MB linux-2.6.25.3.tar.bz2 10-May-2008 46MB linux-2.4.36.4.tar.bz2 07-May-2008 30MBlinux-2.4.36.4.tar.bz2 07-May-2008 30MB linux-2.2.26.tar.bz2 24-Feb-2004 15MB linux-2.2.26.tar.bz2 24-Feb-2004 15MB
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 1717
““Linux” as used in this TalkLinux” as used in this Talk Linux KernelLinux Kernel System Programs: /sbin, /usr/sbinSystem Programs: /sbin, /usr/sbin UIUI
Desktop Env: X11, KDE, Gnome, …Desktop Env: X11, KDE, Gnome, … Shells: Bash, csh, ksh, …Shells: Bash, csh, ksh, …
UtilitiesUtilities /bin, /usr/bin, …/bin, /usr/bin, …
ApplicationsApplications Publishing: TeX, MetaPost, PS, PDF, …Publishing: TeX, MetaPost, PS, PDF, … Multimedia: Audio, VideoMultimedia: Audio, Video Sotware Development: Perl, Python, Ruby,Sotware Development: Perl, Python, Ruby,
ServersServers WebWeb FileFile ComputeCompute
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 1818
K Desktop Environment (KDE)K Desktop Environment (KDE)
4 Million lines of code4 Million lines of codeOver 800 contributors help to develop Over 800 contributors help to develop
KDE.KDE.The translation team: about 300.The translation team: about 300.KDE has about 20 official WWW mirrors in KDE has about 20 official WWW mirrors in
12 countries.12 countries.KDE has more than 106 official FTP KDE has more than 106 official FTP
mirrors in over 39 countriesmirrors in over 39 countries
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 1919
KDE ComponentsKDE Components aRts: Analog realtime synthesizer and sound daemon. KDE 4.0 uses PhononaRts: Analog realtime synthesizer and sound daemon. KDE 4.0 uses Phonon KDE-Libs: Various run-time librariesKDE-Libs: Various run-time libraries KDE-Base: window-manager, desktop, panel, KonquerorKDE-Base: window-manager, desktop, panel, Konqueror KDE-Network: KNode, KNewsticker, Kppp, ...KDE-Network: KNode, KNewsticker, Kppp, ... KDE-Pim: KMail, KAddressbook, KOrganizer, KPilot, ...KDE-Pim: KMail, KAddressbook, KOrganizer, KPilot, ... KDE-Graphics: Graphics applications such as KDVI, KGhostview, KPaint, KFax, ...KDE-Graphics: Graphics applications such as KDVI, KGhostview, KPaint, KFax, ... KDE-Multimedia: Noatun, KMidi, KSCD, ...KDE-Multimedia: Noatun, KMidi, KSCD, ... KDE-Accessibility: applications to improve computer access for disabled people...KDE-Accessibility: applications to improve computer access for disabled people... KDE-Utilities: KEdit, KCalc, KHexEdit, KNotes, ...KDE-Utilities: KEdit, KCalc, KHexEdit, KNotes, ... KDE-Edu: Edutainment applicationsKDE-Edu: Edutainment applications KDE-Games: KAsteroids, KPat, KTetris, ...KDE-Games: KAsteroids, KPat, KTetris, ... KDE-Admin: Various tools to aid system administrationKDE-Admin: Various tools to aid system administration KDE-SDK: Script and tools which simplify development of KDE applicationsKDE-SDK: Script and tools which simplify development of KDE applications KOffice: Integrated office suiteKOffice: Integrated office suite KDevelop: C/C++ Integrated Development EnvironmentKDevelop: C/C++ Integrated Development Environment KDE-Bindings: bindings for various languages (Python, Ruby, Perl, Java...)KDE-Bindings: bindings for various languages (Python, Ruby, Perl, Java...) KDEWebdev: Web Development ToolKDEWebdev: Web Development Tool
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 2020
Native Linux File SystemsNative Linux File Systems
Extended File SystemExtended File SystemExt2Ext2Ext3Ext3Ext4Ext4
Other Journaling File SystemsOther Journaling File SystemsReiserFSReiserFSSGI XFSSGI XFS IBM JFSIBM JFS
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 2121
Linux Non-Native File SystemsLinux Non-Native File Systems
NTFS5: Full read/write operationsNTFS5: Full read/write operationsNative File Systems of every major OS Native File Systems of every major OS
fully supported:fully supported:FAT, FAT16, FAT32 of WindowsFAT, FAT16, FAT32 of WindowsMacOSMacOSSolarisSolarisBSDBSD
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 2222
Distributed File SystemsDistributed File Systems
Classic DFSClassic DFSNFSNFSAFSAFSSamba for WindowsSamba for Windows
Linux is a rich test bed for DFS researchLinux is a rich test bed for DFS researchKOSMOS http://kosmosfs.sourceforge.net/KOSMOS http://kosmosfs.sourceforge.net/Ceph http://ceph.newdream.net/ Ceph http://ceph.newdream.net/ Many encrypted file systemsMany encrypted file systems
Linux DistributionsLinux Distributions
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 2424
Linux DistributionsLinux Distributions
Define “distribution”!Define “distribution”!Major DistributionsMajor Distributions
Debian, UbuntuDebian, UbuntuRedHat, FedoraRedHat, FedoraNovell SuSe, Open SuseNovell SuSe, Open SuseMandrivaMandrivaSlackwareSlackware
Minor DistributionsMinor Distributions1000+1000+
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 2525
How Do Distributions Differ?How Do Distributions Differ? What is included in the default installationWhat is included in the default installation
Operating SystemOperating System UIUI
ShellsShells GUIGUI
UtilitiesUtilities Selected ApplicatinsSelected Applicatins Patches provided by the DistroPatches provided by the Distro
Installing New Components/ApplicationsInstalling New Components/Applications UpdatesUpdates
SecuritySecurity New versionsNew versions
Browsing for Available SoftwareBrowsing for Available Software Look and Feel of the Initial InstallLook and Feel of the Initial Install
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 2626
How Do Distributions Differ? How Do Distributions Differ?
Versions of installed librariesVersions of installed libraries /lib//lib/ /usr/lib//usr/lib/
ConfigurationConfiguration Location of FilesLocation of Files SyntaxSyntax GUI/command line toolsGUI/command line tools
Distributions from ScratchDistributions from Scratch Build it from SourceBuild it from Source
GentooGentoo
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 2727
UbuntuUbuntu
Ubuntu is a derivative of DebianUbuntu is a derivative of Debian ““Ubuntu will always be Ubuntu will always be
““free to download, free to download, ““free to use and free to use and ““free to distribute to others.”free to distribute to others.”
Desktop EditionDesktop Edition Server EditionServer Edition X86-32, x86-64, and MacX86-32, x86-64, and Mac Ubuntu, Kubuntu, Xubuntu, …Ubuntu, Kubuntu, Xubuntu, …
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 2828
Linux Live CD/DVDLinux Live CD/DVD
fully writable root filesystemfully writable root filesystemhardware auto-detectionhardware auto-detectioncan be installed to local hard diskcan be installed to local hard diskcan be installed on USB MSDcan be installed on USB MSDAutomated scripts to make a LiveDVD Automated scripts to make a LiveDVD
from any distrofrom any distrohttp://www.linux-live.org/http://www.linux-live.org/
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 2929
Knoppix LiveDVDKnoppix LiveDVD
General Purpose LinuxGeneral Purpose Linux Try it without installing on HDDTry it without installing on HDD
Excellent hardware detectionExcellent hardware detection Large collection of applicationsLarge collection of applications
KDE, …, fluxboxKDE, …, fluxbox Open Office, Emacs, gcc, …Open Office, Emacs, gcc, … Web browsers, …Web browsers, …
Uncompresses on the flyUncompresses on the fly Several GB of softwareSeveral GB of software Relatively Slow Relatively Slow
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 3030
Damn Small LinuxDamn Small Linux
About 50 MBAbout 50 MBCan run without a HDDCan run without a HDDX11 DesktopX11 DesktopMany useful applicationsMany useful applications
OfficeOfficeWeb surfingWeb surfingEmailEmailMultimediaMultimedia
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 3131
Linux on a USB DriveLinux on a USB Drive
Install on a USB MSD as a HDDInstall on a USB MSD as a HDD Install a Live Image on USB MSDInstall a Live Image on USB MSD
On the fly uncompressionOn the fly uncompression Fast installationFast installation Relatively slow executionRelatively slow execution
Lab on Installing Linux on a USB DriveLab on Installing Linux on a USB Drive http://www.cs.wright.edu/~pmateti/Courses/233-2008-http://www.cs.wright.edu/~pmateti/Courses/233-2008-
Spring/Labs/OS-on-USB/OSonUSBLab.htmSpring/Labs/OS-on-USB/OSonUSBLab.htm
http://pendrivelinux.com/ http://pendrivelinux.com/
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 3232
Scientific Linux LiveDVDScientific Linux LiveDVD
By Fermilab, CERN, and other labs and By Fermilab, CERN, and other labs and universities universities
LiveDVD 32bit/64bit with Gnome/KDE/Icewm LiveDVD 32bit/64bit with Gnome/KDE/Icewm desktopdesktop
5.1 for i386 and x86_64 released on 2008-02-18 5.1 for i386 and x86_64 released on 2008-02-18 RedHat Enterprise LinuxRedHat Enterprise Linux Fully writable root filesystemFully writable root filesystem Hardware auto-detectionHardware auto-detection http://http://www.scientificlinux.orgwww.scientificlinux.org
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 3333
Embedded LinuxEmbedded Linux
uCLinux (Micro Controller Linux)uCLinux (Micro Controller Linux)Linux kernels 2.0, 2.4 and kernel 2.6 Linux kernels 2.0, 2.4 and kernel 2.6 collection of user applicationscollection of user applications libraries and libraries and tool chains tool chains uCLinux ported widelyuCLinux ported widely
Linux ClustersLinux Clusters
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 3535
Cluster Cluster CharacteristicsCharacteristics
Commodity ofCommodity offf the shelf hardware the shelf hardware NNetworketworkededCommon Home DirectoriesCommon Home DirectoriesOpen source software and OSOpen source software and OSSupport Support message passingmessage passing programming programmingBatch scheduling of jobsBatch scheduling of jobsProcess migrationProcess migration
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 3636
Why Why are Linux Clustersare Linux Clusters GGood?ood?
Low initial implementation costLow initial implementation cost Inexpensive Inexpensive PCsPCsStandard componentsStandard components and Networks and NetworksFree SoftwareFree Software:: L Linux,inux, GNU, MPI, PVM GNU, MPI, PVM
Scalability: cScalability: can an grow and shrinkgrow and shrinkFamiliar Familiar ttechnology, easy for user to adechnology, easy for user to ad
opt the approach, use and maintain systopt the approach, use and maintain system.em.
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 3737
Example ClustersExample Clusters
July 1999July 199911000 nodes 000 nodes Used for genetic algoritUsed for genetic algorit
hm research by John hm research by John KKoza, Stanford Universityoza, Stanford University
www.genetic-programmwww.genetic-programming.com/ing.com/
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 3838
Largest Cluster SystemLargest Cluster System
IBM BlueGene, 2007IBM BlueGene, 2007 DOE/NNSA/LLNLDOE/NNSA/LLNL Memory: 73728 GBMemory: 73728 GB OS: CNK/SLES 9OS: CNK/SLES 9 Interconnect: ProprietaryInterconnect: Proprietary PowerPC 440PowerPC 440 106,496 nodes106,496 nodes 478.2 Tera FLOPS on 478.2 Tera FLOPS on
LINPACKLINPACK
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 3939
Message Passing Interface (MPI)Message Passing Interface (MPI)
httphttp://www-unix.mcs.anl.gov/mpi/://www-unix.mcs.anl.gov/mpi/MPI-2.0 MPI-2.0 http://www.mpi-forum.org/docs/http://www.mpi-forum.org/docs/ MPIMPICH: CH: www.mcs.anl.gov/mpi/mpichwww.mcs.anl.gov/mpi/mpich//
by Argonne National Laboratory and Missiby Argonne National Laboratory and Missisippy State Universitysippy State University
LAM: LAM: http://www.lam-mpi.org/http://www.lam-mpi.org/http://www.open-mpi.org/http://www.open-mpi.org/
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 4040
Parallel Virtual Machine (Parallel Virtual Machine (PVMPVM) )
PVM enables a heterogeneous collection PVM enables a heterogeneous collection of networked computers to be used as a of networked computers to be used as a single large parallel computer. single large parallel computer.
Older than MPIOlder than MPILarge scientific/engineering user Large scientific/engineering user
communitycommunityhttp://www.csm.ornl.gov/pvm/http://www.csm.ornl.gov/pvm/
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 4141
Kernels Etc Mods for ClustersKernels Etc Mods for Clusters Dynamic load balancingDynamic load balancing Transparent process-migrationTransparent process-migration Kernel ModsKernel Mods
http://openmosix.sourceforge.net/ http://openmosix.sourceforge.net/ http://kerrighed.org/http://kerrighed.org/
http://openssi.org/http://openssi.org/ http://ci-linux.sourceforge.net/ http://ci-linux.sourceforge.net/
CLuster Membership Subsystem ("CLMS") and CLuster Membership Subsystem ("CLMS") and Internode Communication SubsystemInternode Communication Subsystem
http://www.gluster.org/ http://www.gluster.org/ GlusterFS: Clustered File Storage of peta bytes.GlusterFS: Clustered File Storage of peta bytes. GlusterHPC: High Performance Compute ClustersGlusterHPC: High Performance Compute Clusters
http://boinc.berkeley.edu/http://boinc.berkeley.edu/ Open-source software for volunteer computing and grid computingOpen-source software for volunteer computing and grid computing
Condor clustersCondor clusters
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 4242
OS Share of Top 500OS Share of Top 500
OS Count OS Count Share Share Rmax (GF) Rmax (GF) Rpeak (GF) ProcessorRpeak (GF) ProcessorLinux Linux 426 426 85.20% 4897046 85.20% 4897046 7956758 7956758 970790970790Windows 6 Windows 6 1.20% 47495 1.20% 47495 86797 86797 12112 12112Unix Unix 30 30 6.00% 408378 6.00% 408378 519178 519178 73532 73532BSD BSD 2 2 0.40% 44783 0.40% 44783 50176 50176 5696 5696Mixed 34 Mixed 34 6.80% 1540037 6.80% 1540037 1900361 1900361 580693580693MacOS 2 MacOS 2 0.40% 28430 0.40% 28430 44816 44816 5272 5272Totals Totals 500 500 100% 6966169 10558086 1648095 100% 6966169 10558086 1648095
http://www.top500.org/stats/list/30/osfamhttp://www.top500.org/stats/list/30/osfam Nov 2007 Nov 2007
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 4343
Security of LinuxSecurity of Linux Security flaws are largely due toSecurity flaws are largely due to
Network protocol design flawsNetwork protocol design flaws Sloppy programming by software authorsSloppy programming by software authors Poor configurationPoor configuration
Number of exploits, number of advisories similar Number of exploits, number of advisories similar to those of other OSto those of other OS Worms, not virusesWorms, not viruses Compromised cryptoCompromised crypto Buffer overflowsBuffer overflows
Considerable research analysis of Linux source Considerable research analysis of Linux source codecode
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 4444
Security Hardened LinuxSecurity Hardened Linux
Portions of Linux replaced, re-designed, Portions of Linux replaced, re-designed, enhanced for improved securityenhanced for improved security
Stack top randomizationStack top randomizationPrevention of data page executionPrevention of data page executionLinux Security Modules (LSM) Linux Security Modules (LSM) SELinuxSELinux
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 4545
Security Tools on LinuxSecurity Tools on Linux Penetration Testing Penetration Testing Network analysis (e.g. nmap, tcpdump)Network analysis (e.g. nmap, tcpdump) Password crackingPassword cracking Disaster recovery (e.g. gparted, gpart, partimage, Disaster recovery (e.g. gparted, gpart, partimage,
testdisk, recover) testdisk, recover) Virus scanning (Clam Antivirus, the GUI xfprot for F-Prot) Virus scanning (Clam Antivirus, the GUI xfprot for F-Prot)
computer forensics (e.g. chkrootkit, foremost, rootkit computer forensics (e.g. chkrootkit, foremost, rootkit
hunter) hunter) Backtrack3 http://backtrack.offensive-security.com/ Backtrack3 http://backtrack.offensive-security.com/ STD http://www.knoppix-std.org/STD http://www.knoppix-std.org/ INSERT http://www.inside-security.de/insert_en.html INSERT http://www.inside-security.de/insert_en.html
Important ApplicationsImportant Applications
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 4747
A Few Ubuntu/Debian packagesA Few Ubuntu/Debian packages ElectricElectric
custom IC layout (ASICs), schematic drawing, hardware custom IC layout (ASICs), schematic drawing, hardware description language specifications, and electro-mechanical description language specifications, and electro-mechanical hybrid layout.hybrid layout.
ViPECViPEC analysis of high frequency, linear electrical networks. ViPEC analysis of high frequency, linear electrical networks. ViPEC
supports lumped elements as well as distributed networkssupports lumped elements as well as distributed networks KicadKicad
Electronic schematic and PCB design softwareElectronic schematic and PCB design software QCad 2QCad 2
A professional CAD System with ISO-texts and DXF-files.A professional CAD System with ISO-texts and DXF-files. PythonCADPythonCAD
drafting program scriptable with Pythondrafting program scriptable with Python
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 4848
Example ApplicationsExample Applications
Email: kmail, evolution, sylpheed, Email: kmail, evolution, sylpheed, thunderbirdthunderbird
Surfing: konqueror, firefox, galeon, operaSurfing: konqueror, firefox, galeon, operaSoftware Development: compilers for Software Development: compilers for
nearly all known languagesnearly all known languagesDrawing: dia, graphviz, kchart, inkscapeDrawing: dia, graphviz, kchart, inkscapeMusic: amarok, gnupodMusic: amarok, gnupodGames: Sauerbraten, Savage, DoomGames: Sauerbraten, Savage, Doom
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 4949
Applications on PublishingApplications on Publishing TeX/LaTeXTeX/LaTeX
KyleKyle LyxLyx TeXmacsTeXmacs MetaPost drawing languageMetaPost drawing language GraphVizGraphViz
Scribus Scribus Office SuitesOffice Suites
AbiwordAbiword KofficeKoffice OpenOfficeOpenOffice
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 5050
Matlab :: Scilab, Octave, Rlab Matlab :: Scilab, Octave, Rlab
Not 100% compatible with m-files.Not 100% compatible with m-files.Matrix-based programming languages. Matrix-based programming languages. Built-in support for complex numbers. Built-in support for complex numbers. Powerful built-in math functions and Powerful built-in math functions and
extensive function libraries. extensive function libraries. Extensibility in the form of user-defined Extensibility in the form of user-defined
functions. functions.
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 5151
Computer Algebra SystemsComputer Algebra Systems
Manipulation of symbolic and numerical Manipulation of symbolic and numerical expressions, including differentiation, expressions, including differentiation, integration, Taylor series, Laplace transforms, integration, Taylor series, Laplace transforms, ordinary differential equations, systems of linear ordinary differential equations, systems of linear equations, polynomials, and sets, lists, vectors, equations, polynomials, and sets, lists, vectors, matrices, and tensors. matrices, and tensors.
http://maxima.sourceforge.net/http://maxima.sourceforge.net/ http://mathomatic.orgserve.de/math/http://mathomatic.orgserve.de/math/ Maple on Linux: commercial productMaple on Linux: commercial product
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 5252
Software Development on LinuxSoftware Development on Linux
Develop software for Linux on LinuxDevelop software for Linux on LinuxDevelop software for other OS on LinuxDevelop software for other OS on LinuxEveryEvery well-known PL has compilers/ well-known PL has compilers/
interpreters on Linuxinterpreters on LinuxExcellent DebuggersExcellent DebuggersVirtualizationVirtualizationTeam Support EnvironmentsTeam Support Environments
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 5353
C and C++ on LinuxC and C++ on Linux
These are the “native” languages.These are the “native” languages.CompilersCompilers
GNU compilersGNU compilers Intel compilersIntel compilers IBM compilersIBM compilersSun Studio compilersSun Studio compilersPrinceton LCCPrinceton LCC
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 5454
GNU CompilersGNU Compilers
FortranFortranFortran 95 standardFortran 95 standarda few Fortran 2003 featuresa few Fortran 2003 features
JavaJavacompilation to machine code compilation to machine code as well as byte codeas well as byte code
Objective-C, Objective-C++Objective-C, Objective-C++Ada and PascalAda and Pascal
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 5555
VirtualizationVirtualization
Run multiple virtual machines on a single Run multiple virtual machines on a single host.host.
VMwareVMwareXENXENQEMU/KVMQEMU/KVMVirtualLogixVirtualLogix lguestlguestOpenVZOpenVZ
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 5656
LiMo Foundation PlatformLiMo Foundation Platform
Open, hardware-Open, hardware-independent, Linux-based independent, Linux-based OS for mobile devices.OS for mobile devices.
January 2007January 2007 Motorola, NEC, NTT Motorola, NEC, NTT
DoCoMo, Panasonic, DoCoMo, Panasonic, Samsung and VodafoneSamsung and Vodafone
www.limofoundation.org/www.limofoundation.org/
Specific Uses of LinuxSpecific Uses of Linux
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 5858
Linux DIY ServersLinux DIY Servers
Home MultiMedia/File ServerHome MultiMedia/File ServerLAMP ServerLAMP Server
LAMP stands for Linux, Apache, MySQL, PHPLAMP stands for Linux, Apache, MySQL, PHPWordPressWordPressBlog serverBlog server
Email serverEmail serverspam assassinspam assassin
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 5959
Linux FirewallLinux Firewall
Take a standard PC and install one of Take a standard PC and install one of these:these: IPcop IPcop http://www.ipcop.org/http://www.ipcop.org/ Smoothwall Smoothwall http://www.smoothwall.org/http://www.smoothwall.org/ Firestarter Firestarter http://www.fs-security.com/http://www.fs-security.com/Kaladix Kaladix http://www.kaladix.org/http://www.kaladix.org/ STD STD http://www.knoppix-std.orghttp://www.knoppix-std.org// EnGarde EnGarde http://http://www.engardelinux.orgwww.engardelinux.org//
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 6060
Linux Digital Video RecordersLinux Digital Video Recorders
www.tivo.com/linux/ www.tivo.com/linux/ ““In compliance with In compliance with
the GPL version 2, we the GPL version 2, we are pleased to provide are pleased to provide our modifications to our modifications to the Linux Kernel, as the Linux Kernel, as well as a few new well as a few new commands, and some commands, and some tools to get you into tools to get you into the code.”the code.”
MythTVMythTV
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 6161
Linux Installation IssuesLinux Installation Issues
Linux-only PCsLinux-only PCsNewbies should be able to installNewbies should be able to install
Multi-boot PCs Problem AreasMulti-boot PCs Problem AreasPartitioning of the hard disksPartitioning of the hard disks Installation of OS Boot LoaderInstallation of OS Boot Loader
Mix and Match Distributions Mix and Match Distributions Impractical to mix and matchImpractical to mix and matchBest to Compile from Source CodeBest to Compile from Source Code
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 6262
Linux Installation IssuesLinux Installation Issues
Device Drivers Unavailable forDevice Drivers Unavailable forLatest Graphics cardsLatest Graphics cardsLatest Wireless cardsLatest Wireless cardsOther devices are OKOther devices are OK
Tainted/Restricted DriversTainted/Restricted DriversNot “fully open source” driversNot “fully open source” driversndiswrapperndiswrapper
May 2008May 2008 Mateti-Everything-About-LinuxMateti-Everything-About-Linux 6363
Linux LinksLinux Links
distrowatch.comdistrowatch.com/ – Distributions news/ – Distributions newskernel.orgkernel.org/ -- Kernel source code/ -- Kernel source code tldp.orgtldp.org// -- Linux Documentation Project -- Linux Documentation Project linux-live.org/ – LiveDVD build toolslinux-live.org/ – LiveDVD build tools linuxsecurity.com/ - Linux security portallinuxsecurity.com/ - Linux security portal