FOSS
Free and open-source software (FOSS) is a term used to refer to groups of
software consisting of both free software and open-source software where
anyone is freely licensed to use, copy, study, and change the software in any
way, and the source code is openly shared so that people are encouraged to
voluntarily improve the design of the software.
This is in contrast to proprietary software, where the software is under
restrictive copyright licensing and the source code is usually hidden from the
users.
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.
The Free Software Directory maintains a large database of free-software
packages. Some of the best-known examples include the Linux kernel, the BSD
and Linux operating systems, the GNU Compiler Collection and C library; the
MySQL relational database; the Apache web server; and the Sendmail mail
transport agent.
"Four Essential Freedoms
The freedom to run the program as you wish, for any purpose (freedom 0).
The freedom to study how the program works, and change it so it does your
computing as you wish (freedom 1).
Access to the source code is a precondition for this.The freedom to redistribute
copies so you can help others (freedom 2).
The freedom to distribute copies of your modified versions to others (freedom
3).
By doing this we can give the whole community a chance to benefit from your
changes. Access to the source code is a precondition for this.
Open source software (OSS)
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.
Open Open source software (OSS) is software that is distributed with its source
code, making it available for use, modification, and distribution with its original
rights.
Difference between Free Software and Open Source Software:
OSS Philosophy
FS Philosophy
In response to the restrictions of free
1 It was coined by the Free Software software, the phrase “open source”
. Foundation in the 1980s. was coined in the late 1990s.
Software is just software. There are
2 Software is an important part of people’s no ethics associated directly with it.
. lives.
3 Software freedom translates to social Ethics are to be associated with the
. freedom. people not with the software.
OSS Philosophy
FS Philosophy
Freedom is not an absolute concept.
4 Freedom is a value that is more Freedom should be allowed, not
. important than any economic advantage. imposed.
Every open-source software is not
5 free software.
Every free software is open source.
.
There are many different open-
source software licenses, and some
6 There is no such issue that exists in free of them are quite restricted, resulting
. software. in open-source software that is not
free.
Open-source software occasionally
7 No restrictions are imposed on free imposes some constraints on users.
. software.
8. Examples: Prime examples of open-
source products are the Apache
HTTP Server, the e-commerce
Examples: The Free Software Directory platform Open Source Commerce,
maintains a large database of free internet browsers Mozilla Firefox,
software packages. Some of the best- and Chromium (the project where
known examples include the Linux the vast majority of development of
kernel, the BSD and Linux operating the freeware Google Chrome is
systems, the GNU Compiler Collection done), and the full office suite
and C library; the MySQL relational LibreOffice.
database; the Apache web server; and the
Sendmail mail transport agent.
OSS Philosophy
FS Philosophy
Communication is defined as a process in
which more than one computer transfers
information, instructions to each other and for
sharing resources. Or in other words,
communication is a process or act in which
we can send or receive data.
Components of Data Communication
A communication system is made up of the
following components:
1. Message: A message is a piece of
information that is to be transmitted
from one person to another. It could be
a text file, an audio file, a video file,
etc.
2. Sender: It is simply a device that
sends data messages. It can be a
computer, mobile, telephone, laptop,
video camera, or workstation, etc.
3. Receiver: It is a device that receives
messages. It can be a computer,
telephone mobile, workstation, etc.
4. Transmission Medium /
Communication Channels:
Communication channels are the
medium that connect two or more
workstations. Workstations can be
connected by either wired media or
wireless media.
5. Set of rules (Protocol): When
someone sends the data (The sender),
it should be understandable to the
receiver also otherwise it is
meaningless. For example, Sonali
sends a message to Chetan. If Sonali
writes in Hindi and Chetan cannot
OSS Philosophy
FS Philosophy
understand Hindi, it is a meaningless
conversation.
Type of data communication
As we know that data communication is communication in which we can send or receive
data from one device to another. The data communication is divided into three types:
6. Simplex Communication: It is one-way communication or we can say that
unidirectional communication in which one device only receives and another
device only sends data and devices uses their entire capacity in transmission. For
example, IoT, entering data using a keyboard, listing music using a speaker, etc.
7. Half Duplex communication: It is a two-way communication or we can say that
it is a bidirectional communication in which both the devices can send and receive
data but not at the same time. When one device is sending data then another device
is only receiving and vice-versa. For example, walkie-talkie.
8. Full-duplex communication: It is a two-way communication or we can say that it
is a bidirectional communication in which both the devices can send and receive
data at the same time. For example, mobile phones, landlines, etc.
TCP(Transmission Control Protocol): It is responsible for dividing messages
into packets on the source computer and reassembling the received packet at the
destination or recipient computer. It also makes sure that the packets have the
information about the source of the message data, the destination of the message
data, the sequence in which the message data should be re-assembled, and checks
if the message has been sent correctly to the specific destination.
IP(Internet Protocol): Do You ever wonder how does computer determine which
packet belongs to which device. What happens if the message you sent to your
friend is received by your father? Scary Right. Well! IP is responsible for handling
the address of the destination computer so that each packet is sent to its proper
destination.