CertNote/ Commute Study Notes
Roadmap
KOEN
CLF-C02 · FoundationalCloud Practitioner - Foundational
DVA-C02 · AssociateDeveloper - Associate
SAA-C03 · AssociateSolutions Architect - Associate
SOA-C02 · AssociateCloudOps Engineer - Associate
SAP-C02 · ProfessionalSolutions Architect - Professional
DOP-C02 · ProfessionalDevOps Engineer - Professional
Linux Master 2 · 2급KAIT Linux Master - Level 2
  • Week 1
    • 1.Operating Systems and the Kernel: What Linux Does
    • 2.The Birth of Linux: From Unix to Linus
    • 3.Free Software and Open Source: What a License Decides
    • 4.Distributions: The Unit That Bundles the Kernel and Tools for Sale
    • 5.Week 1 Review: The Identity Behind the Name Linux
  • Week 2
  • Week 3
  • Week 4
  • Week 5
  • Week 6
  • Week 7
  • Week 8
  • Week 9
  • Week 10
  • Week 11
SCS-C03 · SpecialtySecurity - Specialty
Linux Master 1 · 1급KAIT Linux Master - Level 1
MLA-C01 · AssociateMachine Learning Engineer - Associate
AIF-C01 · FoundationalAI Practitioner - Foundational
DEA-C01 · AssociateData Engineer - Associate
MLS-C01 · SpecialtyMachine Learning - Specialty
SQLD · 개발자SQL Developer (SQLD)

© CertNote · 주간랩스

  • About
  • Changelog
  • Contact
  • Terms
  • Privacy
← Linux Master 2/Week 1/Day 2

Based on the Linux Master 2 exam syllabus·Report an error

Linux Master 2· AssociateWeek 1 · Day 2~22 min read

Day 2 - The Birth of Linux: From Unix to Linus

📌 Key Takeaways

  • Unix was created in 1969 at Bell Labs by Ken Thompson and Dennis Ritchie, and it gained portability when it was rewritten in the C language in 1973.
  • Unix split into the BSD family (Berkeley) and the System V family (AT&T).
  • The GNU project (1983, Richard Stallman) aimed at a free Unix-compatible OS and built all the tools, but its kernel (HURD) was left unfinished.
  • The Linux kernel (1991, Linus Torvalds) began inspired by MINIX, and combined with the GNU tools it became a complete OS.
  • POSIX is a standard specification created so that Unix-family systems are compatible with one another.

Unix: The Starting Point of Everything

YearEvent
1969Ken Thompson starts developing Unix at Bell Labs
1971Early Unix — written in assembly
1973Unix is rewritten in the C language created by Dennis Ritchie
1977Berkeley begins distributing BSD
1983AT&T releases System V
  • Rewriting it in C was decisive. Assembly has to be rewritten for each CPU, but C only needs to be recompiled to run on another machine.
  • This property is called portability, and it is the biggest reason Unix spread.

Unix Splits into Two Branches

CategoryBSD familySystem V family
OriginUniversity of California, BerkeleyAT&T Bell Labs
CharacterAcademic and research-oriented, freely distributedCommercially oriented
DescendantsFreeBSD, OpenBSD, NetBSD, macOSAIX, HP-UX, Solaris
Boot scripts/etc/rc.d style/etc/rc.d/init.d + runlevels
  • Linux is not a descendant of either side. It is a kernel built from scratch without inheriting Unix code.
  • However, its behavior and command system were modeled on Unix. That's why it is called "Unix-like."

Before Unix: Lessons from Multics

  • In the 1960s, MIT, General Electric (GE), and Bell Labs were building a huge time-sharing operating system called Multics together.
  • It was too large and complex, progress was slow, and Bell Labs pulled out of the project in 1969.
  • Ken Thompson, who had taken part, rebuilt it "small and simple" on a spare small computer, the PDP-7, and that became Unix.
  • The name itself is a pun twisting the Multi (many) in Multics into Uni (one). The reflection on complexity is built into the name.

The Unix Philosophy

The exam scope explicitly lists the "philosophy." The design principles Unix left behind live on in the Linux command system.

PrincipleHow it shows up in Linux
Small programs that do one thing wellls only lists, sort only sorts, wc only counts
Programs are chained togetherA pipe (|) passes one command's output as the next command's input
Text is the common languageCommand input/output and the config files under /etc are all human-readable text
Everything is a fileDevices like disks and terminals are also handled as files under /dev
who | wc -l          # Passes the list of logged-in users (who) to line counting (wc -l)
ls /etc | grep release   # Picks only the names containing "release" from the /etc listing
$ who | wc -l
3
$ ls /etc | grep release
lsb-release
os-release
  • They didn't build a separate command to "tell you the number of current users." Chaining two small tools does the job. This is the essence of the Unix philosophy.

💡 Concept: The terms the exam uses for Unix features are interactive system, multi-user, multi-tasking, high portability, and hierarchical file system. The near overlap with yesterday's Linux features is because Linux was modeled on Unix.

Traces of the Two Branches in Linux

Linux is a descendant of neither side, but it adopted the conventions of both. The ps command for viewing the process list is the classic example.

UsageOriginFeature
ps auxBSD styleNo - before the options
ps -efSystem V styleA - before the options
  • Both commands mean "show all processes." Linux's ps understands both notations.
  • Booting traditionally followed System V's runlevels (covered in next week's boot lessons).

The GNU Project: Everything but the Kernel

Richard Stallman started it in 1983.

  • Goal: to build a Unix-compatible operating system that anyone can freely use and modify.
  • The name is a recursive acronym for "GNU is Not Unix."
  • 1985: the Free Software Foundation (FSF) is founded; 1989: the GPL is released.

By the early 1990s, GNU had completed almost everything an operating system needs.

  • The compiler GCC, the shell bash, the editor Emacs, the core command collection coreutils (ls cp mv …)
  • Only one thing was missing: the kernel. GNU's own kernel, HURD, dragged along in development.

The Linux Kernel: A Student's Hobby Project

  • In 1991, Linus Torvalds of the University of Helsinki in Finland started it.
  • The trigger was MINIX — a small Unix-like OS that Professor Andrew Tanenbaum built for teaching. Its features were limited, so he decided to build his own.
  • Version 0.01 was released in September 1991, and the following year the license was changed to the GPL, which drew developers from all over the world.
  • The mascot is the penguin Tux.

The process of GNU, which had only tools, and Linux, which had only a kernel, coming together to become GNU/Linux

This one picture is the answer to "why is it called GNU/Linux?"

Linux Kernel Timeline

PeriodEvent
August 1991Linus announces on the MINIX newsgroup (comp.os.minix) that he is "making an operating system as a hobby"
September 1991Version 0.01 released
October 1991Version 0.02 — the first version officially announced on the newsgroup
1992License changed to the GPL
March 1994Version 1.0 released
1996Version 2.0 released — supports SMP, using multiple CPUs. The mascot Tux appears
December 2003Version 2.6 released — the point where the even/odd version rule disappeared
2011Version 3.0 released
  • The numbers the exam asks about are usually 1991 (first release) and 1994 (1.0).
  • At its first release, it had its own license that prohibited commercial distribution. Only after switching to the GPL could companies and distributions take part.

📚 Case: In 1992, Tanenbaum posted "Linux is obsolete" to the newsgroup. The gist was that a monolithic kernel is an outdated design and the microkernel is the right one. Linus rebutted, citing practicality and performance. The "Linux = monolithic, MINIX = microkernel" distinction you learned yesterday is exactly the two sides of this debate.

POSIX: A Standard That Lets Systems Interoperate

  • POSIX (Portable Operating System Interface) is an interface standard for Unix-family operating systems created by the IEEE.
  • Purpose: to make a program written on any Unix-family system run on other Unix-family systems too.
  • It specifies how system calls, commands, the shell, and so on behave.
  • Linux follows POSIX mostly but has not received official certification.

Besides POSIX, similarly named standards also appear as options together. Tell them apart by who is trying to align what.

StandardCreated byWhat it aims to align
POSIXIEEE (IEEE 1003)The programming interface of Unix-family OSes — system calls, commands, shell
SUS (Single UNIX Specification)The Open GroupThe conditions for using the "UNIX" trademark
LSB (Linux Standard Base)Linux FoundationCompatibility among Linux distributions
FHS (Filesystem Hierarchy Standard)Linux FoundationThe directory structure such as /bin, /etc, /var
  • "UNIX" is now a registered trademark held by The Open Group. Only products that pass certification may be called UNIX.
  • So there are two reasons Linux is "Unix-like" rather than "Unix" — it didn't inherit the code, and it didn't get trademark certification.

Commonly Mistaken Points

  1. "Unix was written in C from the start" → It was assembly at first. It was rewritten in C in 1973.
  2. "The person who created C is Ken Thompson" → It's Dennis Ritchie. Ken Thompson is the one who started developing Unix.
  3. "Linux was made by modifying MINIX" → MINIX was only the trigger; the code was written anew.
  4. "GNU didn't build a kernel" → It tried. That is HURD, and its completion was merely delayed.
  5. "BSD is a commercial Unix made by AT&T" → BSD is from Berkeley; what AT&T made is System V.
  6. "POSIX is a license" → It is a standard specification. Licenses are things like the GPL and BSD.

The Lineage at a Glance

NameYearCreated byCharacter
Unix1969Ken Thompson, Dennis RitchieThe original
BSD1977University of California, BerkeleyA Unix branch
GNU1983Richard StallmanA collection of free software tools
MINIX1987Andrew TanenbaumAn educational Unix-like
Linux kernel1991Linus TorvaldsA free kernel

Tomorrow we cover the ideas that underpinned this flow — free software and open-source licenses.

📖 Glossary

  • Unix (UNIX) : An operating system created at Bell Labs in 1969. The prototype of countless OSes, including Linux.
  • Portability : The property of being able to run a program on another machine without major changes.
  • BSD : A Unix family developed at Berkeley. The root of FreeBSD and macOS.
  • System V : A commercial Unix family created by AT&T. AIX and Solaris belong here.
  • GNU : A recursive acronym for "GNU is Not Unix." A project aiming at a free Unix-compatible OS.
  • HURD : The kernel GNU tried to build. Its completion was delayed, and the Linux kernel took its place.
  • MINIX : An educational Unix-like OS created by Tanenbaum. It was the trigger for Linux development.
  • POSIX : An IEEE standard specification for compatibility among Unix-family operating systems.
  • Tux : Linux's penguin mascot.

📝 Practice Questions

Click a choice to reveal the answer and explanation.

Question 1

Which of the following is the biggest reason Unix was able to spread widely?

Question 2

Which of the following is NOT a correct description of the GNU project?

Question 3

Which of the following was the operating system that directly triggered the development of the Linux kernel?

Question 4

Which of the following is a System V family Unix?

Question 5

Which of the following best describes POSIX?

PreviousOperating Systems and the Kernel: What Linux DoesWeek 1 · Day 1Next Free Software and Open Source: What a License DecidesWeek 1 · Day 3

Official references

  • Linux Master 2 official exam syllabus(opens in a new tab)

On this page

  • Key Takeaways
  • Unix: The Starting Point of Everything
  • Unix Splits into Two Branches
  • Before Unix: Lessons from Multics
  • The Unix Philosophy
  • Traces of the Two Branches in Linux
  • The GNU Project: Everything but the Kernel
  • The Linux Kernel: A Student's Hobby Project
  • Linux Kernel Timeline
  • POSIX: A Standard That Lets Systems Interoperate
  • Commonly Mistaken Points
  • The Lineage at a Glance
  • Glossary
  • Practice Questions