linux and free software - Çankaya...

29
Linux and Free Software Linux and Free Software Efe ÇİFTCİ, October 2018 Efe ÇİFTCİ, October 2018 Çankaya University - Department of Computer Engineering Çankaya University - Department of Computer Engineering

Upload: others

Post on 21-Sep-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Linux and Free Software - Çankaya Üniversitesiacademic.cankaya.edu.tr/~efeciftci/docs/ceng105_fall18...386 task switching etc), and it probably never will support anything other

Linux and Free SoftwareLinux and Free Software

Efe ÇİFTCİ, October 2018Efe ÇİFTCİ, October 2018Çankaya University - Department of Computer EngineeringÇankaya University - Department of Computer Engineering

Page 2: Linux and Free Software - Çankaya Üniversitesiacademic.cankaya.edu.tr/~efeciftci/docs/ceng105_fall18...386 task switching etc), and it probably never will support anything other

Table of ContentsTable of Contents

● Before Linux…

● Who is Richard Stallman?● What is Free Software?

● Who is Linus Torvalds?● Birth of Linux

● Advantages of Free Software and Linux● Distribution? What is that?● Operating System Architecture

● Some Numbers● Some Charts● Some Questions● Your Questions?● Some Links

● References

Page 3: Linux and Free Software - Çankaya Üniversitesiacademic.cankaya.edu.tr/~efeciftci/docs/ceng105_fall18...386 task switching etc), and it probably never will support anything other

Before Linux...Before Linux...

Unix

Page 4: Linux and Free Software - Çankaya Üniversitesiacademic.cankaya.edu.tr/~efeciftci/docs/ceng105_fall18...386 task switching etc), and it probably never will support anything other

Before Linux...Before Linux...

MINIX (Mini UNIX)

Page 5: Linux and Free Software - Çankaya Üniversitesiacademic.cankaya.edu.tr/~efeciftci/docs/ceng105_fall18...386 task switching etc), and it probably never will support anything other

Who is Richard Stallman?Who is Richard Stallman?

● He is an American software developer and expert on computer systems, who was born in 1953.

● By the end of 1970's, distribution of computer software has shifted towards closed-source distribution because of copyrights.

● Stallman felt uncomfortable of this, because he believed software should be free for all users, not just owned by developers.

Page 6: Linux and Free Software - Çankaya Üniversitesiacademic.cankaya.edu.tr/~efeciftci/docs/ceng105_fall18...386 task switching etc), and it probably never will support anything other

Who is Richard Stallman?Who is Richard Stallman?

● As a result, In 1983 he has starting developing a free UNIX-like (similar, but no UNIX codes) operating system and has completed almost everything except the kernel itself.

● GNU: GNU’s Not Unix

● According to Stallman, closed source software is the cause of many problems. To overcome these problems, he has published the first version of “General Public License” (GPL), which proposes the term “free software” in 1989.

Page 7: Linux and Free Software - Çankaya Üniversitesiacademic.cankaya.edu.tr/~efeciftci/docs/ceng105_fall18...386 task switching etc), and it probably never will support anything other

What is Free Software?What is Free Software?

● Free software is a computer software which is distributed with its source code and allows its users the following “freedoms” [1]:

0. The freedom to run the program for any purpose.

1. The freedom to study how the program works, and change it to make it do what you wish.

2. The freedom to redistribute copies so you can help your neighbour.

3. The freedom to improve the program, and release your improvements (and modified versions in general) to the public, so that the whole community benefits.

[1] http://www.gnu.org/philosophy/free-sw.html

Page 8: Linux and Free Software - Çankaya Üniversitesiacademic.cankaya.edu.tr/~efeciftci/docs/ceng105_fall18...386 task switching etc), and it probably never will support anything other

What is Free Software?What is Free Software?

● “Free software” should not be confused with “open source”.

– Open source is a software development method.● Free software is not unlicensed / freeware software.

– Free software are licensed with General Public License.● Free software should not be confused with free of charge software.

– “Free software” is a matter of liberty, not price. To understand the concept, you should think of “free” as in “free speech”, not as in “free beer”.

Richard Stallman

Page 9: Linux and Free Software - Çankaya Üniversitesiacademic.cankaya.edu.tr/~efeciftci/docs/ceng105_fall18...386 task switching etc), and it probably never will support anything other

What is Free Software?What is Free Software?

[2] http://aprogrammerslife.info/2011/08/15/the-freelance/

Page 10: Linux and Free Software - Çankaya Üniversitesiacademic.cankaya.edu.tr/~efeciftci/docs/ceng105_fall18...386 task switching etc), and it probably never will support anything other
Page 11: Linux and Free Software - Çankaya Üniversitesiacademic.cankaya.edu.tr/~efeciftci/docs/ceng105_fall18...386 task switching etc), and it probably never will support anything other

Who is Linus Torvalds?Who is Linus Torvalds?

● He is a Finnish computer engineer who was born in 1969.

● In 1991, while a student, he decided to develop his own operating system kernel components, because of educational limitations of Minix operating system.

● In time, the additional features he implemented on this project has become an independent Unix-based operating system kernel.

● Thus, the “Linux” kernel was born.

Page 12: Linux and Free Software - Çankaya Üniversitesiacademic.cankaya.edu.tr/~efeciftci/docs/ceng105_fall18...386 task switching etc), and it probably never will support anything other

Birth of LinuxBirth of Linux

[3] https://groups.google.com/d/msg/comp.os.minix/dlNtH7RRrGA/SwRavCzVE7gJ

● Linus Torvalds has announced this project publicly by posting the following announcement [3] on a newsgroup on Aug. 25, 1991:

From: [email protected] (Linus Benedict Torvalds)To: Newsgroup: comp.os.minixSubject: What would you like to see most in minix?Summary: small poll for my new operating system

Hello everybody out there using minix -

I'm doing a (free) operating system (just a hobby, won't be big and professional like gnu) for 386(486) AT clones. This has been brewing since april, and is starting to get ready. I'd like any feedback on things people like/dislike in minix, as my OS resembles it somewhat (same physical layout of the file-system (due to practical reasons) among other things).

I've currently ported bash(1.08) and gcc(1.40), and things seem to work. This implies that I'll get something practical within a few months, and I'd like to know what features most people would want. Any suggestions are welcome, but I won't promise I'll implement them :-)

Linus ([email protected])

PS. Yes - it's free of any minix code, and it has a multi-threaded fs. It is NOT protable (uses 386 task switching etc), and it probably never will support anything other than AT-harddisks, as that's all I have :-(.

Page 13: Linux and Free Software - Çankaya Üniversitesiacademic.cankaya.edu.tr/~efeciftci/docs/ceng105_fall18...386 task switching etc), and it probably never will support anything other

Advantages of Free Software and LinuxAdvantages of Free Software and Linux

● Linux (GNU/Linux) based operating systems support working with multiple users. They can manage thousands of users, their files and running programs simultaneosly.

● Linux based operating systems come with open source and freely modifiable free software.

● Linux based operating systems are highly customizable.

● Since the distribution of free software is completely free, their users are not dependent on only one company.

● Free software do not spy on their users.

● Free software are secure and stable. A Linux server can run untouched without encountering any software problems (faults, malware, etc) for many years.

Page 14: Linux and Free Software - Çankaya Üniversitesiacademic.cankaya.edu.tr/~efeciftci/docs/ceng105_fall18...386 task switching etc), and it probably never will support anything other

Advantages of Free Software and LinuxAdvantages of Free Software and Linux

● Linux can be modified to run on low-end devices.

● Linux can be modified to run on many different architectures and devices such as desktop computers, laptop computers, mobile phones, tablet computers, servers, smart TV’s, cars, IoT devices, modems etc.

● With the availability of many different distributions, everyone can find the best Linux based distribution that fits themselves.

Page 15: Linux and Free Software - Çankaya Üniversitesiacademic.cankaya.edu.tr/~efeciftci/docs/ceng105_fall18...386 task switching etc), and it probably never will support anything other

Distribution? What is that?Distribution? What is that?

● Linux is the name of just the operating system kernel.

● Extra software bundled with the kernel (such as desktop environments, office software, multimedia, web tools, development tools, games, etc) makes a “distribution”.

Gentoo Kubuntu

Linux Mint openSUSEMandriva

Pardus Ubuntu

CentOS

Fedora

DebianArch Linux

Red HatEnterpriseLinux

and many more...

Page 16: Linux and Free Software - Çankaya Üniversitesiacademic.cankaya.edu.tr/~efeciftci/docs/ceng105_fall18...386 task switching etc), and it probably never will support anything other

Distribution? What is that?Distribution? What is that?

[4] http://en.wikipedia.org/wiki/File:Linux_Distribution_Timeline.svg

Page 17: Linux and Free Software - Çankaya Üniversitesiacademic.cankaya.edu.tr/~efeciftci/docs/ceng105_fall18...386 task switching etc), and it probably never will support anything other

Operating System ArchitectureOperating System Architecture

● Linux is a monolithic operating system kernel.

● On monolithic operating systems, tasks such as interprocess communication, memory management, scheduling etc. are handled by the kernel itself.

● On a typical Linux based operating system, the software hierarchy is similar to the one presented here.

Computer Hardware

Linux Kernel

System Libraries

System Services

User Interfaces

Applications

Page 18: Linux and Free Software - Çankaya Üniversitesiacademic.cankaya.edu.tr/~efeciftci/docs/ceng105_fall18...386 task switching etc), and it probably never will support anything other

Operating System ArchitectureOperating System Architecture

[5]

[5] http://en.wikipedia.org/wiki/File:OS-structure2.svg

Page 19: Linux and Free Software - Çankaya Üniversitesiacademic.cankaya.edu.tr/~efeciftci/docs/ceng105_fall18...386 task switching etc), and it probably never will support anything other

Some NumbersSome Numbers

● 1991 – Linux 0.02 has been announced.

● 1992 – 10 users worldwide.

● 1993 – Linux 1.0 has been announced, more than 200 users.

● 1994 – 100.000 users worldwide.

● 1995 – Almost 500.000 users.

● 1996 – Linux 2.0 has been announced.

● 1997 – Almost 5.000.000 users.

● 1998 – Almost 10.000.000 users.

● 1999 – Linux 2.2 has been announced.

● 2001 – Linux 2.4 has been announced.

● 2003 – Linux 2.6 has been announced.

● 2011 – Linux 3.0 has been announced.

● 2015 – Linux 4.0 has been announced.

Page 20: Linux and Free Software - Çankaya Üniversitesiacademic.cankaya.edu.tr/~efeciftci/docs/ceng105_fall18...386 task switching etc), and it probably never will support anything other

Some NumbersSome Numbers

● The development of Linux kernel continues with Version 4.18. Total number of both active and inactive distributions is over 300.

● Number of kernel contributors is estimated to be over 15.000 from over 1.000 different companies.

● It is estimated to be used by millions of people all around the world.

[6] https://en.wikipedia.org/wiki/Linux_kernel

Page 21: Linux and Free Software - Çankaya Üniversitesiacademic.cankaya.edu.tr/~efeciftci/docs/ceng105_fall18...386 task switching etc), and it probably never will support anything other

Some ChartsSome Charts

Desktop Operating SystemStatistics [7]

Windows

macOS

Linux

Chrome OS

FreeBSD

Unknown

Mobile Operating SystemStatistics [8]

Android

iOS

Windows

BlackBerry

Symbian

Others

[7] https://en.wikipedia.org/wiki/Usage_share_of_operating_systems[8] https://en.wikipedia.org/wiki/Mobile_operating_system

Page 22: Linux and Free Software - Çankaya Üniversitesiacademic.cankaya.edu.tr/~efeciftci/docs/ceng105_fall18...386 task switching etc), and it probably never will support anything other

Some ChartsSome Charts

Stack Overflow Developer Survey [7]

Windows

macOS

Linux

BSD/Unix

[7] https://en.wikipedia.org/wiki/Usage_share_of_operating_systems[9] https://store.steampowered.com/hwsurvey

Steam Hardware & Software Survey [9]

Windows

macOS

Linux

Page 23: Linux and Free Software - Çankaya Üniversitesiacademic.cankaya.edu.tr/~efeciftci/docs/ceng105_fall18...386 task switching etc), and it probably never will support anything other

Some ChartsSome Charts

1993

.5

1994

.5

1995

.5

1996

.5

1997

.5

1998

.5

1999

.5

2000

.5

2001

.5

2002

.5

2003

.5

2004

.5

2005

.5

2006

.5

2007

.5

2008

.5

2009

.5

2010

.5

2011

.5

2012

.5

2013

.5

2014

.5

2015

.5

2016

.5

2017

.5

2018

.50%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

Supercomputer OperatingSystem Statistics [10]

Mac

NA/Mixed

BSD

UNIX

Windows

Linux

[10] https://en.wikipedia.org/wiki/Usage_share_of_operating_systems#Supercomputers

Page 24: Linux and Free Software - Çankaya Üniversitesiacademic.cankaya.edu.tr/~efeciftci/docs/ceng105_fall18...386 task switching etc), and it probably never will support anything other

Some QuestionsSome Questions

● Will Linux and other free software run on my computer?

● What is the best Linux distribution?

● Can I really do whatever I want with Linux and free software?

● Does Linux really not crash?

● If Linux is good, why doesn't everybody use it?

● When will obtaining Linux and/or other free software cost money?

● I've started using Linux but I get lots of updates everyday, why?

● Is there any [one/organisations] who are related to Linux and free software? What do they do?

● Who will I get technical support from?

● How can I contribute? I don’t know where to start.

Page 25: Linux and Free Software - Çankaya Üniversitesiacademic.cankaya.edu.tr/~efeciftci/docs/ceng105_fall18...386 task switching etc), and it probably never will support anything other

Your Questions?Your Questions?

Page 26: Linux and Free Software - Çankaya Üniversitesiacademic.cankaya.edu.tr/~efeciftci/docs/ceng105_fall18...386 task switching etc), and it probably never will support anything other

Some LinksSome Links

● Linux Kullanıcıları Derneğihttp://www.lkd.org.tr/

● Linus Torvaldshttps://en.wikipedia.org/wiki/Linus_Torvalds

● Richard Stallmanhttps://en.wikipedia.org/wiki/Richard_Stallman

● Free Softwarehttps://en.wikipedia.org/wiki/Free_software

● GNU General Public Licensehttps://en.wikipedia.org/wiki/GNU_General_Public_License

Page 27: Linux and Free Software - Çankaya Üniversitesiacademic.cankaya.edu.tr/~efeciftci/docs/ceng105_fall18...386 task switching etc), and it probably never will support anything other

Some LinksSome Links

● Linux Gezegenihttp://gezegen.linux.org.tr/

● Ubuntu Türkiyehttps://ubuntu-tr.net/

● OMG! Ubuntu!https://www.omgubuntu.co.uk/

● LinuxInsiderhttps://www.linuxinsider.com/

● Slashdothttps://linux.slashdot.org/

Page 28: Linux and Free Software - Çankaya Üniversitesiacademic.cankaya.edu.tr/~efeciftci/docs/ceng105_fall18...386 task switching etc), and it probably never will support anything other

Some LinksSome Links

● Why Linux is Betterhttp://whylinuxisbetter.net/tr/

● How many people use Ubuntu?https://insights.ubuntu.com/2016/04/07/ubuntu-is-everywhere/

● Linux is Everywherehttps://blog.netdevgroup.com/2016/11/linux-is-everywhere-infographic/

● Ubuntu Connects Everythinghttps://blog.ubuntu.com/2018/07/10/infographic-ubuntu-connects-everything

Page 29: Linux and Free Software - Çankaya Üniversitesiacademic.cankaya.edu.tr/~efeciftci/docs/ceng105_fall18...386 task switching etc), and it probably never will support anything other

Thank You For Listening!Thank You For Listening!

This presentation has been created onFree Operating System KDE neon

withFree Office Suite LibreOffice.

“Free as in free speech, not free beer”