0% found this document useful (0 votes)
8 views

foss

The document outlines the distinctions between Free Software and Open Source Software, emphasizing that Free Software prioritizes user freedom while Open Source focuses on modification and distribution without licensing issues. It details the history of the Free Software movement initiated by Richard Stallman and the development of Linux, highlighting its features, various distributions, and the importance of the GNU General Public License. Additionally, it discusses the Linux file system structure and the functionalities of different desktop environments like GNOME and KDE Plasma.

Uploaded by

afrah mehar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views

foss

The document outlines the distinctions between Free Software and Open Source Software, emphasizing that Free Software prioritizes user freedom while Open Source focuses on modification and distribution without licensing issues. It details the history of the Free Software movement initiated by Richard Stallman and the development of Linux, highlighting its features, various distributions, and the importance of the GNU General Public License. Additionally, it discusses the Linux file system structure and the functionalities of different desktop environments like GNOME and KDE Plasma.

Uploaded by

afrah mehar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 52

• Difference between Free Software and Open Source

Software
• Free Software: “Free software” means software
that respects users’ freedom and community.
Roughly, it means that the users have the freedom
to run, copy, distribute, study, change and improve
the software. The term “free software” is
sometimes misunderstood—it has nothing to do
with price. It is about freedom.
• Open Source Software: Open Source Software is
something that you can modify as per your needs,
and share with others without any licensing
violation burden. When we say Open Source, the
source code of the software is available publicly
with Open Source licenses like GNU (GPL) which
allows you to edit the source code and distribute it.
Read these licenses and you will realize that these
licenses are created to help us.
Free s/w movement
• To use free software is to make a political and
ethical choice asserting the right to learn, and share
what we learn with others.
• Free software has become the foundation of a
learning society where we share our knowledge in a
way that others can build upon and enjoy.
• The free software movement was started in 1983
by computer scientist Richard M. Stallman, when
he launched a project called GNU,
• Then in 1985, Stallman started the Free Software
Foundation, a nonprofit with the mission of
advocating and educating on behalf of computer
users around the world.
• There are now many variants or 'distributions' of
this GNU operating system using the kernel Linux.
We recommend those GNU/Linux distributions that
are 100% free software; in other words, entirely
freedom-respecting.
policies
• the freedom to run the program, for any purpose;
• the freedom to study how the program works, and
change it so it does the computing as the user
wishes. Access to the source code is a precondition
for this;
• the freedom to redistribute copies so users can
help others;
• the freedom to distribute copies of modified
versions to others.
• it is imperative that public bodies evaluate free and
open-source software on the basis of the same
standards and qualities as apply when selecting
other software and supplies. Among other things,
this involves basing the choice of software on the
total cost of ownership in relation to benefits.
• It is important for public bodies to minimise vendor lock-in. Lock-
in implies a customer
• becoming dependent on a certain vendor for products and
services and being unable to
• switch to any other vendor without undergoing substantial
inconvenience and opportunity
• costs. These circumstances render it worthwhile to assess the
potential impact of a provider
• ceasing to develop the software, of a service provider
discontinuing product support, or of the
• business relationships with such providers terminating for some
other reason. Free and opensource software adds to the options
and encourages competition.
• One goal for bespoke (custom-designed) software
financed by public bodies, including
• software for research and development projects,
should be its reusability. Ensuring that
• software is free and open-source is one way to
achieve reusability
GPL
• The GNU General Public License is a free, copyleft
license for software and other kinds of works.
• the GNU General Public License is intended to
guarantee your freedom to share and change all
versions of a program--to make sure it remains free
software for all its users. the Free Software
Foundation, use the GNU General Public License for
most of our software; it applies also to any other
work released this way by its authors. You can apply
it to your programs, too.
• If you have used a GPL component in your software, then
your entire software is considered a ‘work based on’ a GPL
and, therefore:
• You are not allowed to claim patents or copyright on the
software. Moreover, you are obligated to display a
copyright notice, disclaimer of warranty, intact GPL
notices, and a copy of the GPL.
• You are not allowed to change the license or introduce
additional terms and conditions.
• You are under the reciprocity obligation, which means you
are obligated to release the source code and all of the
rights to modify and distribute the entire code.
• GPL requires you to release the modified source
code only if you release the modified program. If
you’ve modified a program’s source code for
personal use, there’s no need to release its source
code. However, if you make the modified program
available to the public, you will have to make the
code public too
history of Linux
• It started in 1964 in New Jersey when some people
of Bell Labs tried to create a multiuser operating
system (OS), they worked on it till 1969, after facing
lots of failures they withdraw the project. Then a
group of five people including Dennis Ritchie and
Ken Thompson successfully created an operating
system called UNICS(Uniplexed Information and
Computing Service), better known as UNIX. They
publish this OS as open-source(free to use and edit
the codebase)
• In 1975 a version of UNIX was released labeled
“UNIX v6”, it became very popular. Some
companies tried to make a profit from it, so they
made their own commercial version or flavor of
UNIX :
• IBM – AIX
• Sun Solaris
• Mac OS
• UP UX
• Linus Torvalds is the creator of the Linux kernel. In
simple words, Linus Torvald created Linux because
he didn’t have money to buy UNIX. He was a
student at the *University of Helsinki*. In early
1991 he decided to do a project on UNIX, but free
versions of UNIX were too old and other
commercials are too costly ($5000). So he thought
of creating his own OS.
• finally Linux was released on September 17, 1991. Linus made it open
source. Between 1991 to 1995, Richard Stallman started a movement called
the “Free Software Movement“, and created the GNU project (collection of
free software).
• Linux is a kernel and not an operating system and GNU is a collection of free
software, these two project collabs give us “Linux” or “GNU/Linux” operating
system. Some companies and open source communities adopt GNU/Linux
codebase, did some modifications, and created their own version or
distributions, Example:
• RHEL (Red hat)
• Fedora
• Debian
• Ubuntu
• CentOS
• Kali Linux
features of Linux
• Multiuser capability: Multiple users can access the
same system resources like memory, hard disk, etc.
But they have to use different terminals to operate.
• Multitasking: More than one function can be
performed simultaneously by dividing the CPU time
intelligently.
• Portability: Portability doesn't mean it is smaller in
file size or can be carried in pen drives or memory
cards. It means that it support different types of
hardware.
• Security: It provides security in three ways namely
authenticating (by assigning password and login ID),
authorization (by assigning permission to read, write and
execute) and encryption (converts file into an unreadable
format).
• Live CD/USB: Almost all Linux distros provide live CD/USB so
that users can run/try it without installing it.
• Graphical User Interface (X Window system): Linux is
command line based OS but it can be converted to GUI
based by installing packages.
• Support's customized keyboard: As it is used worldwide,
hence supports different languages keyboards.
• Application support: It has its own software
repository from where users can download and
install many applications.
• File System: Provides hierarchical file system in
which files and directories are arranged.
• Open Source: Linux code is freely available to all
and is a community based development project.
Different flavours of linux
• 1) Ubuntu
• Ubuntu to be used as easy graphical Linux desktop
without the use of command line. It is the most
well known Linux distribution. Ubuntu is a next
version of Debian and easy to use for newbies. It
comes with a lots of pre-installed apps and easy to
use repositories libraries.
• 2) Linux Mint
• Mint is based on Ubuntu and uses its repository
software so some packages are common in both.
• Earlier it was an alternative of Ubuntu because
media codecs and proprietary software are
included in mint but was absent in Ubuntu. But
now it has its own popularity and it uses cinnamon
and mate desktop instead of Ubuntu's unity
desktop environment
• 3) Debian
• Debian has its existence since 1993 and releases its
versions much slowly then Ubuntu and mint.
• This makes it one of the most stable Linux
distributor.
• Ubuntu is based on Debian and was founded to
improve the core bits of Debian more quickly and
make it more user friendly
• 4) Red Hat Enterprise / CentOS
• Red hat is a commercial Linux distributor. There
products are red hat enterprise Linux (RHEL) and
Fedora which are freely available. RHEL is well
tested before release and supported till seven years
after the release, whereas, fedora provides faster
update and without any support.
• 5) Fedora
• It is a project that mainly focuses on free software
and provides latest version of software. It doesn't
make its own desktop environment but used
'upstream' software. By default it has GNOME3
desktop environment. It is less stable but provides
the latest stuff.
linux kernel and shell
• 1. Shell :
• A shell is an environment or a special user program
which provide an interface to user to use operating
system services. It executes programs based on the
input provided by the user.
• 2. Kernel :
• Kernel is the heart and core of an Operating System
that manages operations of computer and hardware. It
acts as a bridge between the user and the resources of
the system by accessing various computer resources
like the CPU, I/O devices and other resources
• The Linux® kernel is the main component of a Linux
operating system (OS) and is the core interface
between a computer’s hardware and its processes.
It communicates between the 2, managing
resources as efficiently as possible.
• What the kernel does
• The kernel has 4 jobs:
• Memory management: Keep track of how much memory
is used to store what, and where
• Process management: Determine which processes can
use the central processing unit (CPU), when, and for how
long
• Device drivers: Act as mediator/interpreter between the
hardware and processes
• System calls and security: Receive requests for service
from the processes
• The shell can be defined as a command interpreter
within an operating system like Linux/GNU or Unix.
It is a program that runs other programs. The shell
facilitates every user of the computer as an
interface to the Unix/GNU Linux system. Hence, the
user can execute different tools/utilities or
commands with a few input data.
• The shell sends the result to the user over the
screen when it has completed running a program
which is the common output device. That's why it is
known as "command interpreter".
• The shell is not just a command interpreter. Also,
the shell is a programming language with complete
constructs of a programming language such as
functions, variables, loops, conditional execution,
and many others.
• For this reason, GNU/Unix Linux Shell is stronger
than the Windows shell.
• Broadly, the shell is categorized into two
• Graphical Shells
• These shells specifies the manipulation of programs
that are based on the graphical user interface (GUI)
by permitting for operations like moving, closing,
resizing, and opening windows and switching focus
among windows as well.
• Command-line Shell
• Various shells could be accessed with the help of a
command-line interface by users. A unique program
known as Command prompt in Windows or
Terminal in macOS/Linux is offered for typing in the
human-understandable commands like "ls", "cat",
etc and after that, it is being run. The result is
further shown to the user on the terminal.
Graphical desktop
• A graphical user interface, commonly known as
GUI, is the graphical environment of your operating
system — where you have a desktop and mouse
pointer. Your screen displays your application
panels and icons as well.
• GNOME
• The GNOME desktop environment has been a
popular choice for many Linux users over the years.
It’s popularity is due to the clean, minimalistic look.
• GNOME has been designed with usability in mind
and is the perfect setup for people that just need
the basics to get some work done on their Linux
machine. All of the features that it offers are tucked
away neatly in a desktop dock or application list.
• Unique user interface
• By far, the most standout aspect of Gnome is that it
looks nothing like anything you have experienced
before
• User friendly
• Despite having an unconventional UI/UX, the
Gnome desktop environment is extremely intuitive
and easy to use.
• Dynamic workspaces
• Gnome comes with an innovative feature called
Dynamic Workspaces. Here, it lets you start with
two workspaces or virtual desktops. Then, if both of
them are populated with apps, it will automatically
generate a new empty workspace for any more
apps you’d like to open.
• KDE Plasma
• KDE Plasma is a very popular desktop environment. Its
lightweight design and customization options make KDE
Plasma very versatile. You have convenient features like
mobile phone integration with your Linux system using
KDE Connect.
• The browser integration allows you to connect with a
smartphone browser and use it as a remote control for
browsing on your desktop, skipping music tracks on your
computer, receiving notifications, and more. You can also
share the clipboard between all devices connected with
KDE Connect which is very handy.
• Integration. KDE is well integrated with many
applications of all kinds. Applications do not have to be
written specifically for KDE, and all of the applications
that are typically part of the GNOME desktop also work
just fine in KDE.
• Looks. I like the many ways in which I can change the
look of the KDE Plasma workspace. Sometimes I like to
set colors and looks to suit my moods. Icons, widgets,
fonts, pointers, the window decorations, and much
more can also be changed, and I can download and
install new ones if those already installed are not right
for me.
• flexibility
• One or two clicks to open files and folders,
Bluetooth and other connectivity can be configured
easily, and power management can be adjusted. I
also like the various configuration options for
multiple monitors, which is very helpful when
giving presentations using a projector.
• Multiple desktops
Linux File System
• Linux file system is a structured collection of files on
a disk drive or a partition. A partition is a segment
of memory and contains some specific data. In our
machine, there can be various partitions of the
memory. Generally, every partition contains a file
system.
• The Linux file system contains the following
sections:
• The root directory (/)
• A specific data storage format (EXT3, EXT4, BTRFS,
XFS and so on)
• A partition or logical volume having a particular file
system.
• Linux file system has a hierarchal file structure as it
contains a root directory and its subdirectories. All
other directories can be accessed from the root
directory. A partition usually has only one file
system, but it may have more than one file system
• The first two parts of the given file system together
called a Linux virtual file system. It provides a single
set of commands for the kernel and developers to
access the file system. This virtual file system
requires the specific system driver to give an
interface to the file system.
• Linux File System Features
• Specifying paths: Linux does not use the backslash (\) to separate
the components; it uses forward slash (/) as an alternative. For
example, as in Windows, the data may be stored in C:\ My
Documents\ Work, whereas, in Linux, it would be stored in /home/
My Document/ Work.
• Partition, Directories, and Drives: Linux does not use drive letters to
organize the drive as Windows does. In Linux, we cannot tell
whether we are addressing a partition, a network device, or an
"ordinary" directory and a Drive.
• Case Sensitivity: Linux file system is case sensitive. It distinguishes
between lowercase and uppercase file names. Such as, there is a
difference between test.txt and Test.txt in Linux. This rule is also
applied for directories and Linux commands.
• File Extensions: In Linux, a file may have the extension '.txt,'
but it is not necessary that a file should have a file extension.
While working with Shell, it creates some problems for the
beginners to differentiate between files and directories. If
we use the graphical file manager, it symbolizes the files and
folders.
• Hidden files: Linux distinguishes between standard files and
hidden files, mostly the configuration files are hidden in
Linux OS. Usually, we don't need to access or read the
hidden files. The hidden files in Linux are represented by a
dot (.) before the file name (e.g., .ignore). To access the files,
we need to change the view in the file manager or need to
use a specific command in the shell.
• Types of files in the Linux system.
• General Files – It is also called ordinary files. It may be an
image, video, program, or simple text files. These types of files
can be in ASCII or Binary format. It is the most commonly used
file in the Linux system.
• Directory Files – These types of files are a warehouse for other
file types. It may be a directory file within a directory
(subdirectory).
• Device Files – In a Windows-like operating system, devices like
CD-ROM, and hard drives are represented as drive letters like
F: G: H whereas in the Linux system device are represented as
files. As for example, /dev/sda1, /dev/sda2 and so on.
• bin – binary or executable programs.
• /etc – system configuration files.
• /home – home directory. It is the default current
directory.
• /opt – optional or third-party software.
• /tmp – temporary space, typically cleared on
reboot.
• /usr – User related programs.
• /var – log files.
• /boot- It contains all the boot-related information files and folders such as conf,
grub, etc.
• /dev – It is the location of the device files such as dev/sda1, dev/sda2, etc.
• /lib – It contains kernel modules and a shared library.
• /lost+found – It is used to find recovered bits of corrupted files.
• /media – It contains subdirectories where removal media devices inserted.
• /mnt – It contains temporary mount directories for mounting the file system.
• /proc – It is a virtual and pseudo-file system to contains info about the running
processes with a specific process ID or PID.
• /run – It stores volatile runtime data.
• /sbin – binary executable programs for an administrator.
• /srv – It contains server-specific and server-related files.
• /sys – It is a virtual filesystem for modern Linux distributions to store and allows
modification of the devices connected to the system.

You might also like