Upgrade to Pro — share decks privately, control downloads, hide ads and more …

How I Learned to Stop Worrying and Love the Linux

Helen
February 28, 2017

How I Learned to Stop Worrying and Love the Linux

An insane general triggers a path to proprietary holocaust that a war room full of software engineers and architects frantically try to stop.

Helen

February 28, 2017
Tweet

More Decks by Helen

Other Decks in Programming

Transcript

  1. Helen Tabunshchyk • MSc in Computer Engineering • Senior Software

    Developer • In industry since 2011 • Now specializing in high performance • Commercial experience: C, C++, Python, Boost, OpenCV, Qt, AMQP, RDBMS, NoSQL, Linux <3, #ihavenospaceleft • Also into: VHDL, Erlang, Rust, machine learning, embedded, robotics and other fun stuff
  2. • 1969: Ken Thompson, Dennis Ritchie and others started working

    on the "little- used PDP-7 in a corner" at Bell Labs and what was to become UNIX. • 1973: It was rewritten in C. This made it portable and changed the history of OS’s. • Its architecture did not change much till now (2017 AD, i.e. 47 years).
  3. The Unix Philosophy (c) Doug McIlroy • Make each program

    do one thing well. • Expect the output of every program to become the input to another, as yet unknown, program. • Design and build software to be tried early. • Use tools in preference to unskilled help to lighten a programming task.
  4. “The whole philosophy of UNIX seems to stay out of

    assembler.” (c) Joseph Henry Condon
  5. GNU

  6. • 1983: Richard Stallman started the GNU project with the

    goal of creating a free UNIX-like operating system. • Freedom rights: users are free to run the software, share it (copy, distribute), study it and modify it. • By the early 1990s the GNU kernel failed to attract enough development effort, leaving GNU incomplete.
  7. • 1987: MINIX, a Unix-like system intended for academic use,

    was released by Andrew S. Tanenbaum to exemplify the principles conveyed in his textbook, Operating Systems: Design and Implementation. • While source code for the system was available, modification and redistribution were restricted.
  8. • 1991: The Linux kernel is publicly announced by the

    21-year-old Finnish student Linus Benedict Torvalds. • 1992: The Linux kernel is relicensed under the GNU GPL. The first Linux distributions are created. • 1994: 150,000 lines of code. • 2017: 25+ million lines of code.
  9. • 95% of all supercomputers • 37% of websites •

    87.5% of global smartphone market share (Android) • 4% of desktop systems
  10. • Intel 80386 • 2 megabytes of RAM • Any

    video card Minimum as in 1992
  11. • Linux Security Modules (SELinux, AppArmor, Smack, TOMOYO Linux and

    Yama) • Firewall • Memory protection • chroot’ing a process Linux Is a Fine-tunable System
  12. • More than 600 penetration testing tools included • Custom

    kernel, patched for wireless injection • Developed in a secure environment • GPG signed packages and repositories • Single user, root access by design • Network services (incl. bluetooth) disabled by default Kali Linux
  13. • The central resource for open source software information, best

    practices, how-to’s: linux.com. • The Linux Foundation YouTube channel: youtube.com/user/TheLinuxFoundation. • The Art of Unix Programming. Book by Eric Steven Raymond. • Systems Performance: Enterprise and the Cloud. Book by Brendan Gregg. • Understanding the Linux kernel. Book by Daniel P. Bovet and Marco Cesati. • Tech Blog “High Scalability”: highscalability.com. Recommended Resources