Free and open source Software, Study notes of Computer Fundamentals

Open source software: features,free software, policies,GPL,Free OS, history and features of linux,linux kernel and shell,graphical desktops,GNOME,KDE

Typology: Study notes

2020/2021

Uploaded on 03/21/2021

devika-s-j
devika-s-j 🇮🇳

4.8

(4)

4 documents

1 / 14

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Open Source Software
A software whose source code is freely distributed with a license to study,
change and further distributed to anyone for any purpose is called open
source software.
Open source software is generally a team effort where dedicated
programmers improve upon the source code and share the changes within the
community.
Open source software provides these advantages to the users Security
Affordability
Transparent
Interoperable on multiple platforms
Flexible due to customizations
Localization is possible
Proprietary Software
Software that can be used only by obtaining license from its developer after
paying for it is called proprietary software. An individual or a company can
own such proprietary software. Its source code is often closely guarded
secret and it can have major restrictions like
No further distribution
Number of users that can use it
Type of computer it can be installed on, example multitasking or single
user, etc.
For example, Microsoft Windows is a proprietary operating software that
comes in many editions for different types of clients like single-user, multi-
user, professional, etc.
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe

Partial preview of the text

Download Free and open source Software and more Study notes Computer Fundamentals in PDF only on Docsity!

Open Source Software A software whose source code is freely distributed with a license to study, change and further distributed to anyone for any purpose is called open source software. Open source software is generally a team effort where dedicated programmers improve upon the source code and share the changes within the community. Open source software provides these advantages to the users Security

  • Affordability
  • Transparent
  • Interoperable on multiple platforms
  • Flexible due to customizations
  • Localization is possible Proprietary Software Software that can be used only by obtaining license from its developer after paying for it is called proprietary software. An individual or a company can own such proprietary software. Its source code is often closely guarded secret and it can have major restrictions like
  • No further distribution
  • Number of users that can use it
  • Type of computer it can be installed on, example multitasking or single user, etc.

For example, Microsoft Windows is a proprietary operating software that comes in many editions for different types of clients like single-user, multi- user, professional, etc.

Advantages of Open Source Software over Proprietary Software

  1. Lesser hardware costs Open source solutions are easily portable,it takes lesser hardware power to carry out the same tasks when compared to the hardware power it takes on servers, such as Windows. With this less hardware power advantage, you can even use cheaper or older hardware and still get the desired results.
  2. High-quality software Open source software is mostly high-quality software. When you use the open source software, the source code is available. Most open source software are well-designed. These reasons make open source software an ideal choice for organizations.
  3. No vendor lock-in IT managers in organizations face constant frustration when dealing with vendor lock-ins'. Lack of portability, expensive license fees and inability to customize software are some of the other disadvantages. Using open source software gives you more freedom and you can effectively address all these disadvantages.
  4. Integrated management By using open source software, you can benefit from integrated management. Open source software uses technologies, such as, common information model (CIM) and web based enterprise management (WBEM). These high-end technologies enable you to integrate and combine server, application, service and workstation management. This integration would result in efficient administration.
  5. Simple license management When you use open source software, you would no longer need to worry about licenses. Open source software enables you to install it several times and also use it from any location. You will be free from monitoring, tracking or counting license compliance.
  1. Free to Download:- No cost to download free software
  2. Many Choices:- There are more than 6,500 pieces of free software available today.
  3. Large Communities:-Many free software programs have large and active communities online that offer support to users of free software via blogs and forums.
  4. Supportive of Social Movement:- The use of free software supports a movement that believes computer users should be free from technology that conducts surveillance and gathers information about what users do on their devices.
  5. Shared Improvements:-Users are allowed to have source code, study it, make functional changes to a program, and redistribute the modified software to others in any way they choose. Free Software Movement(FSM) The free software movement is a world wide effort that campaigns for the creation, use, and adoption of free software that entitles users to four essential freedoms:
  • Freedom 0-The freedom to run the program as they wish, for any purpose
  • Freedom 1-The freedom to study how the program works, and change it so it does their computing as they wish Access to the source code is a precondition for this.
  • Freedom 2-The freedom to redistribute copies so they can help others
  • Freedom 3-The freedom to distribute copies of their modified versions to By doing this they can give the whole community a chance to benefit from their changes. Access to the source code is a precondition for this.

Polices of Free Software Movement The FSM refers to a social movement of activists who believe in and promote five policies of free software

  1. Freedom to run a software program for any purpose;
  2. Freedom to study how the program works and adapt it to their needs;
  3. Freedom to redistribute copies of the software at will;
  4. Freedom to improve the F/OSS program and to distribute the altered version;
  5. Required distribution of the originating license that specifies the freedoms and
  6. rights concerning the preceding properties. General Public License (GPL)
  • GPL or General Public License, sometimes also called GNU GPL, is the most commonly used free software license.
  • It was written by Richard Stallman of Free Software Foundation for GNU Project.
  • This license allows software to be freely used, modified, and redistributed by anyone.
  • WordPress is also released under the GPL license, which means that WordPress is an open source software that can be used, modified, and extended by anyone.
  • It provides the core basic values that the project believes in.
  1. Anyone can download and run the software
  2. Anyone can modify it
  3. Anyone can redistribute free copies of the software
  4. Anyone can distribute modified versions of the software.
  1. Portable − Portability means software can works on different types of hardware in same way. Linux kernel and application programs supports their installation on any kind of hardware platform.
  2. Open Source − Linux source code is freely available and it is community based development project.
  3. Multi-User − Linux is a multiuser system means multiple users can access system resources like memory/ ram/ application programs at same time.
  4. Multiprogramming − Linux is a multiprogramming system means multiple applications can run at same time.
  5. Hierarchical File System − Linux provides a standard file structure in which system files/ user files are arranged.
  6. Shell − Linux provides a special interpreter program which can be used to execute commands of the operating system. It can be used to do various types of operations, call application programs. etc.
  7. Security − Linux provides user security using authentication features like password protection/ controlled access to specific files/ encryption of data. Linux Distributions List / Flavours of Linux There are on an average six hundred Linux distributors providing different features. Here, we'll discuss about some of the popular Linux distros today.
  1. Ubuntu It came into existence in 2004 by Canonical and quickly became popular. Canonical wants 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.

  1. 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.
  2. 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. Every release name of Debian is based on the name of the movie Toy Story.
  3. 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. Red hat uses trademark law to prevent their software from being redistributed. CentOS is a community project that uses red hat enterprise Linux code but removes all its trademark and make it freely available. In other words, it is a free version of RHEL and provide a stable platform for a long time.
  4. Fedora It is a project that mainly focuses on free software and provides latest version of software. It doesn't make its own desktop

It presents a activities overview for easy access to basic tasks, provides a powerful search tool for users to access their work from any place. However, GNOME 3 latest stable release ships in with the following distinguished components and features:

  • Comes with Nautilus as default file manager
  • Supports desktop notifications using a convenient messaging system
  • Enables on/off switching of desktop notifications and many more KDE Plasma 5 KDE is a well-known, powerful and highly customizable desktop environment, designed to offer Linux desktop users absolute control over their desktop. The latest release in the KDE desktop series is the Plasma 5, which has brought in several improvements and new features. It has come with clean and well-polished user interfaces in comparison to previous versions, with improved readability. Built using Qt 5 and frameworks 5, a number of the notable components and new features in Plasma 5 include:
  • Dolphin file manager
  • Kwin window manager
  • A converged shell
  • Updated graphics stack enabling smoother graphics performance
  • Modernized launchers
  • Workflow improvements in the desktop notification area
  • Improved support for high-density (high-DPI) display plus many other minor features Linux File System / File System Hierarchy Structure

The Linux File Hierarchy Structure or the Filesystem Hierarchy Standard (FHS) defines the directory structure and directory contents in Unix-like operating systems.It is maintained by the Linux Foundation.

  • In the FHS, all files and directories appear under the root directory /, even if they are stored on different physical or virtual devices.
  • Some of these directories only exist on a particular system if certain subsystems, such as the X Window System, are installed.
  • Most of these directories exist in all UNIX operating systems and are generally used in much the same way; however, the descriptions here are those used specifically for the FHS, and are not considered authoritative for platforms other than Linux. Linux Directories
  1. / (Root) : Primary hierarchy root and root directory of the entire file system hierarchy.
  • Every single file and directory starts from the root directory
  • Only root user has the right to write under this directory
  • /root is root user’s home directory, which is not same as /
  1. /bin : Essential command binaries that need to be available in single user mode; for all users, e.g., cat, ls, cp.
  • Contains binary executables
  • Common linux commands you need to use in single-user modes are located under this directory.
  • Commands used by all the users of the system are located here e.g. ps, ls, ping, grep, cp
  1. /boot : Boot loader files, e.g., kernels, initrd.
  • Kernel initrd, vmlinux, grub files are located under /boot
  • Add-on applications should be installed under either /opt/ or /opt/ sub- directory.
  1. /sbin : Essential system binaries, e.g., fsck, init, route.
  • Just like /bin, /sbin also contains binary executables.
  • The linux commands located under this directory are used typically by system aministrator, for system maintenance purpose.
  • Example: iptables, reboot, fdisk, ifconfig, swapon
  1. /srv : Site-specific data served by this system, such as data and scripts for web servers, data offered by FTP servers, and repositories for version control systems.
  • srv stands for service.
  • Contains server specific services related data.
  • Example, /srv/cvs contains CVS related data.
  1. /tmp : Temporary files. Often not preserved between system reboots, and may be severely size restricted.
  • Directory that contains temporary files created by system and users.
  • Files under this directory are deleted when system is rebooted.
  1. /usr : Secondary hierarchy for read-only user data; contains the majority of (multi-)user utilities and applications.
  • Contains binaries, libraries, documentation, and source-code for second level programs.
  • /usr/bin contains binary files for user programs. If you can’t find a user binary under /bin, look under /usr/bin. For example: at, awk, cc, less, scp
  1. /proc : Virtual filesystem providing process and kernel information as files. In Linux, corresponds to a procfs mount. Generally automatically generated and populated by the system, on the fly.
    • Contains information about system process.
    • This is a pseudo filesystem contains information about running process. For example: /proc/{pid} directory contains information about the process with that particular pid.