Pragpub #022, April 2011

Total Page:16

File Type:pdf, Size:1020Kb

Pragpub #022, April 2011 The Pragmatic Bookshelf PragPubThe First Iteration IN THIS ISSUE * Advanced Arduino Hacking * Create your Own Arduino IDE * Testing Arduino Code * Test Abstraction * When Did That Happen? The Arduino Issue In which we bring serious software development tools to the popular single-board platform. Issue #22 April 2011 PragPub • April 2011 Contents FEATURES Advanced Arduino Hacking ................................................................................ 4 by Maik Schmidt You want to get into this popular open-source electronics prototyping platform, but you don’t want to have to work with development tools designed for artists and hobbyists. Maik shows you how to develop software for Arduino in a professional way. Create your Own Arduino IDE ........................................................................ 22 by Maik Schmidt If you’re going to do serious Arduino development, you may want to work in an environment more like your day job. Here Maik shows how to set up your own IDE. Testing Arduino Code ......................................................................................... 24 by Ian Dees Ian brings the testing power of the Ruby-based Cucumber testing library to the Arduino. Test Abstraction .................................................................................................... 33 by Jeff Langr, Tim Ottinger Use the techniques in this article to sniff out problems and improve tests by increasing their level of abstraction. When Did That Happen? ................................................................................... 42 by Dan Wohlbruck Claude Shannon was born in this month in 1916. Two decades later, he made history. — i — DEPARTMENTS Up Front ..................................................................................................................... 1 by Michael Swaine Just because it’s a hobby that doesn’t mean you don’t need power tools. Choice Bits ................................................................................................................ 2 A few selected sips from the Twitter stream. The Quiz ................................................................................................................... 45 by Michael Swaine Just your basic Arduino Sudoku. Calendar ..................................................................................................................... 47 After a slow-ish winter, things are really heating up this spring. Shady Illuminations .............................................................................................. 58 by John Shade Some elements of Sun Microsystems were never going to survive the move to Oracle. John runs down the Doomed from the Get-Go list. Except where otherwise indicated, entire contents copyright © 2011 The Pragmatic Programmers. Feel free to distribute this magazine (in whole, and for free) to anyone you want. However, you may not sell this magazine or its content, nor extract and use more than a paragraph of content in some other publication without our permission. Published monthly in PDF, mobi, and epub formats by The Pragmatic Programmers, LLC, Dallas, TX, and Raleigh, NC. E-Mail [email protected], phone +1-800-699-7764. The editor is Michael Swaine ([email protected]). Visit us at http://pragprog.com for the lowdown on our books, screencasts, training, forums, and more. ISSN: 1948-3562 — ii — Up Front Bringing Serious Software Welcome to our first-ever Arduino issue! Development to the Arduino Arduino, as the whole geek-speaking world knows by now, is an extremely by Michael Swaine accessible open-source single-board microcontroller designed for pursuing electronics projects. Also as the whole geek-speaking world knows by now, Arduino is very popular. Over 100,000 boards have been sold so far, and the fascination shows no signs of abating. We’re a hard-core software developers’ magazine, so that’s the approach we’re taking to Arduino in this issue. We figure you want to get into this popular open-source electronics prototyping platform, but you don’t want to have to work with development tools designed for artists and hobbyists. So Arduino master Maik Schmidt shows you how to develop software for Arduino in a professional way. Ian Dees gets into the act, too, showing how to bring serious software testing to the Arduino. Just because it’s a hobby that doesn’t mean you don’t need power tools. Of course we also have lots of other good stuff in this packed issue. Jeff Langr and Tim Ottinger offer up a thoughtful article on Test Abstraction, Dan Wohlbruck offers another in his series on computer history, John Shade has some thoughts on Sun, Oracle, and the Doomed List, and there is a quiz (Arduino-themed, of course). Arduino Resources We recommend that you include in your Arduino toolkit Maik’s book, Arduino: A Quick-Start Guide [U1]. But there are other books to check out, including these two new ones from O’Reilly: Arduino Cookbook [U2] by Michael Margolis and Make: Arduino Bots and Gadgets [U3] by Tero Karvinen and Kimmo Karvinen. Also, here are three sites Maik tells us are must-visits for the Arduino hacker: makershed.com [U4], adafruit.com [U5], and hackaday.com [U6]. External resources referenced in this article: [U1] http://pragprog.com/refer/pragpub22/titles/msard/arduino [U2] http://oreilly.com/catalog/9780596802486/ [U3] http://oreilly.com/catalog/0636920010371/ [U4] http://makershed.com [U5] http://adafruit.com [U6] http://hackaday.com/ PragPub April 2011 1 Choice Bits Top 11 books, tweets from the coding life, and better beer through Arduino What’s Hot hacking... Top-Ten lists are passé—ours goes to 11. These are the top titles that folks are interested in currently, along with their rank from last month. This is based If you can’t do it with an Arduino, is it really worth solely on direct sales from our online store. doing? 1 NEW iOS Recipes 2 1 Agile Web Development with Rails 3 3 The RSpec Book 4 NEW Programming Concurrency on the JVM 5 5 Crafting Rails Applications 6 7 Programming Ruby 1.9 7 4 Rails Test Prescriptions 8 2 Hello, Android 9 9 Seven Languages in Seven Weeks 10 6 HTML5 and CSS3 11 NEW Pragmatic Thinking and Learning My Arduino Why would you want to buy and program an open-source, single-board microcontroller? Why, to improve your home-brewed beer, of course! • Wooh! got our #arduino powered 1950s telephone up and running! #knowledgelives — @bluec • Making a temperature logger for my fermentation with an #arduino Gonna be interesting :) #homebrew — @stoffers • Etch a Sketch clock: http://bit.ly/b5Gdfw #awesome #maker #arduino — @erinldoyle • Arduino Tic-Tac-Toe http://bit.ly/hcHs48 #arduino — @tipie • A networked candy grabber http://www.pimedius.com/Candygrabber #arduino — @dboardman • Spent a very interesting afternoon writing laser harp control software in #arduino. — @moray_macdonald • Made a bunch of optimizations on the #oracle database. Now everything is running smoothly on an #arduino. I'm very proud of myself! — @cscmeu • How to Make a Brain-controlled Device http://bit.ly/dKXL3H #arduino — @romainsauvez • HIDUINO: Your #Arduino is Now A #MIDI Interface http://bit.ly/eAlK36 — @jocequelo • Monkey Automatons! http://bit.ly/egyXH7 #arduino — @tipie PragPub April 2011 2 This Coding Life • I'm missing out. Apparently, I need to stop coding so much and spend more time on twitter arguing about how best to write code. — @benrady • I also feel that "fast-paced work environment" means "disorganized with lots of overtime." http://bit.ly/gC4JSA — @bphogan • Have to say this again: Regex section of Stackoverflow is the outstanding late Saturday night infotainment http://bit.ly/i4esC4 — @staffannoteberg • I may be the last living human who remembers using submit and supersub in CP/M. — @tottinge • @coreyhaines As context-driven testers, we've named at least three contexts in which context-driven is a bad idea. Craft demands that. — @michaelbolton • You know what keeps me grounded? The aluminum case on my MacBook Pro. #shocking — @benrady • SpacebarOnTheMacQuitWorkingTakingItToTheGeninusBar — @venkat_s Need to Know • Dogs are the new fashion exercise accessory. http://j.mp/goUwfH /via @khoi — @tswicegood • Antique clown shoes: The nouvelle vague of hipsterism twitpic.com/4bb2u7 — @noradio • Acid test: RT @Fritinancy: RT @Mxrk: Adding lime juice to any recipe is low-cal way to find out if you have any paper cuts — @makower • ProTip: calling self when you mean to call super can lead to bad, bad things happening. — @jeff_lamarche • Today was better than yesterday. Tomorrow will be better than today. And so on. #recursion #tailcalloptimization — @chadfowler • note to self: laptop as alarm clock works best when plugged into wall #savebytriplelyredundantalarms — @adamgoucher • Must be just about leave-secret-iPhone-in-a-bar time of year. (via @drewmccormack) — @dimsumthinking • nothing says "viable and sustainable business model" like building an app on top of a service owned by someone else. — @bphogan • Cegłowski's first law of Internet business: "Never get in the way of people trying to give you money" http://pinboard.in/blog/173/ — @tottinge • Why does my iPhone insist on correcting thing to thong? Amusing, but not helpful. — @duncan This month we were tuned to the tweeting channel of David Boardman, Michael Bolton, James Duncan Davidson, Erin Doyle, Chad Fowler, Adam Goucher, Corey Haines, Brian Hogan, knowledgelives, Jeff Lamarche, Moray Macdonald, Joel Makower, Marcel Molina, Staffan Nöteberg, Christophe Nowicki, Tim Ottinger, Tius
Recommended publications
  • Logiciel Libre, Une Introduction Part I Perspective Historique Des Étapes
    Logiciel libre, une introduction Logiciel libre, une introduction Logiciel libre, une introduction Part I Roberto Di Cosmo Perspective historique Université Paris Diderot UFR Informatique Laboratoire Preuves, Programmes et Systèmes [email protected] 7 Février 2012 Logiciel libre, une introduction Logiciel libre, une introduction Une brève histoire du logiciel Une brève histoire du logiciel Des étapes importantes Une brève histoire du logiciel I Années 50-60: Logiciel libre ante litteram Logiciel Libre aux origines La propriétarisation du logiciel I Années 70: La proprietarisation du logiciel I Années 70-80: Les briques de base I Donald Knuth et TEX Le logiciel libre ante litteram I X Windows System Le système TEX I AT&T et Unix Le système X I Années 80: le matériel devient suffisamment puissant pour des AT&T et Unix vrai OS Linux I Années 80: Richard Stallman, GNU et la Free Software Foundation Le logiciel libre formalisé I Années 1990: Linux, GNU/Linux etc.: la prise de conscience I Années 2000 : l’expansion Les années 1990 Logiciel libre, une introduction Logiciel libre, une introduction Une brève histoire du logiciel Une brève histoire du logiciel Logiciel Libre aux origines Logiciel Libre aux origines Au début le logiciel fût distribué librement. c’était une nécéssité Jusqu’à la fin des années 1960, le logiciel, avec les sources, était N’oublions pas les raisons techniques de cette réalité: distribué gratuitement, comme un complément pour les ordinateurs I modèle de service clé en main comprenant hw & sw & vendus (très chers) à l’époque. service I logiciel très dépendant de la machine utilisateur (n.
    [Show full text]
  • BSD Projects IV – BSD Certification • Main Features • Community • Future Directions a (Very) Brief History of BSD
    BSD Overview Jim Brown May 24, 2012 BSD Overview - 5/24/2012 - Jim Brown, ISD BSD Overview I – A Brief History of BSD III – Cool Hot Stuff • ATT UCB Partnership • Batteries Included • ATT(USL) Lawsuit • ZFS , Hammer • BSD Family Tree • pf Firewall, pfSense • BSD License • Capsicum • Virtualization Topics • Jails, Xen, etc. • Desktop PC-BSD II – The Core BSD Projects IV – BSD Certification • Main Features • Community • Future Directions A (Very) Brief History of BSD 1971 – ATT cheaply licenses Unix source code to many organizations, including UCB as educational material 1975 – Ken Thompson takes a sabbatical from ATT, brings the latest Unix source on tape to UCB his alma mater to run on a PDP 11 which UCB provided. (Industry/academic partnerships were much more common back then.) Computer Science students (notably Bill Joy and Chuck Haley) at UCB begin to make numerous improvements to Unix and make them available on tape as the “Berkeley Software Distribution” - BSD A (Very) Brief History of BSD Some notable CSRG • 1980 – Computer Science Research Group members (CSRG) forms at UCB with DARPA funding to make many more improvements to Unix - job control, autoreboot, fast filesystem, gigabit address space, Lisp, IPC, sockets, TCP/IP stack + applications, r* utils, machine independence, rewriting almost all ATT code with UCB/CSRG code, including many ports • 1991 – The Networking Release 2 tape is released on the Internet via anon FTP. A 386 port quickly follows by Bill and Lynne Jolitz. The NetBSD group is formed- the first Open Source community entirely on the Internet • 1992 – A commercial version, BSDI (sold for $995, 1-800-ITS-UNIX) draws the ire of USL/ATT.
    [Show full text]
  • Linux on the Move
    Guest Editors’ Introduction What is Linux? And why should you care? This focus section has insights for both newcomers and diehard fans. Linux on the Move Terry Bollinger, The Mitre Corporation Peter Beckman, Los Alamos National Laboratory inux is a free, open-source operating system that looks like Unix, L except that it runs on PCs as well as other platforms. Linux was created by Linus Torvalds in 1991. Today, Linux is cooperatively improved by Torvalds and thousands of volunteers from around the world using open-source development methods. At this point in time, “Linux” generally refers to the entire suite of software in a distribution, from the operating system kernel to the Web server and graphical user interface. When we say that Linux is “free” we mean, well…free. You do not need to pay money to get a copy of it, although it is usually more convenient to buy an inexpen- sive CD-ROM copy than download an entire distribution over the Internet. Once you get a copy of Linux, you also have the right to make as many copies of it as you want. 30 IEEE Software January/February 1999 0740-7459/99/$10.00 © 1999 . DEFINING TERMS GETTING RESULTS By “open source”we mean that you also have the The only traditional software practice that open- right to get copies of all the source code from which source software developers do follow is peer review, Linux and its associated tools were originally com- and they do that with a vengeance. Each piece of piled. There are no magical, mysterious binary files, source code is placed on display in front of a global although you can of course get the Linux system precompiled if you prefer.
    [Show full text]
  • History of Unix.Pdf
    History of Unix In order to define UNIX, it helps to look at its history. In 1969, Ken Thompson, Dennis Ritchie and others started work on what was to become UNIX on a "little-used PDP-7 in a corner" at AT&T Bell Labs. For ten years, the development of UNIX proceeded at AT&T in numbered versions. V4 (1974) was re-written in C -- a major milestone for the operating system's portability among different systems. V6 (1975) was the first to become available outside Bell Labs -- it became the basis of the first version of UNIX developed at the University of California Berkeley. Bell Labs continued work on UNIX into the 1980s, culminating in the release of System V (as in "five," not the letter) in 1983 and System V, Release 4 (abbreviated SVR4) in 1989. Meanwhile, programmers at the University of California hacked mightily on the source code AT&T had released, leading to many a master thesis. The Berkeley Standard Distribution (BSD) became a second major variant of "UNIX." It was widely deployed in both university and corporate computing environments starting with the release of BSD 4.2 in 1984. Some of its features were incorporated into SVR4. As the 1990s opened, AT&T's source code licensing had created a flourishing market for hundreds of UNIX variants by different manufacturers. AT&T sold its UNIX business to Novell in 1993, and Novell sold it to the Santa Cruz Operation two years later. In the meantime, the UNIX trademark had been passed to the X/Open consortium, which eventually merged to form The Open Group.1 While the stewardship of UNIX was passing from entity to entity, several long- running development efforts started bearing fruit.
    [Show full text]
  • Introduction to Free Software-SELF
    Introduction to Free Software Jordi Mas Hernández (coordinador) David Megías Jiménez (coordinador) Jesús M. González Barahona Joaquín Seoane Pascual Gregorio Robles XP07/M2101/02708 © FUOC • XP07/M2101/02708 Introduction to Free Software Jordi Mas Hernández David Megías Jiménez Jesús M. González Barahona Founding member of Softcatalà and Computer Science Engineer by the Professor in the Department of Tele- of the telematic network RedBBS. Universitat Autònoma de Barcelona matic Systems and Computation of He has worked as a consultant in (UAB, Spain). Master in Advanced the Rey Juan Carlos University (Ma- companies like Menta, Telépolis, Vo- Process Automatisation Techniques drid, Spain), where he coordinates dafone, Lotus, eresMas, Amena and by the UAB. PhD. in Computer Sci- the research group LibreSoft. His Terra España. ence by the UAB. Associate Profes- professional areas of interest include sor in the Computer Science, Multi- the study of free software develop- media and Telecommunication De- ment and the transfer of knowledge partment of the Universitat Oberta in this field to the industrial sector. de Catalunya (UOC, Spain) and Di- rector of the Master Programme in Free Software at the UOC. Joaquín Seoane Pascual Gregorio Robles PhD. Enigeer of Telecommunicati- Assistant professor in the Rey Juan ons in the Politechnical University Carlos University (Madrid, Spain), of Madrid (Spain). He has worked where he acquired his PhD. de- in the private sector and has al- gree in February 2006. Besides his so taught in the Computer Scien- teaching tasks, he researches free ce Faculty of that same university. software development from the Nowadays he is professor in the De- point of view of software enginee- partment of Telematic Systems En- ring, with special focus in quantitati- gineering, and has taught courses ve issues.
    [Show full text]
  • A Brief Introduction to Linux
    ABriefIntroductiontoLinux What is it? What can I use it for? Alexander B. Pacheco LTS Research Computing September 8, 2015 Outline 1 Introduction to Linux 2 Linux Components 3 Live Demo 2/25 Introduction to Linux Unix History I Unix was conceived and implemented in 1969 at AT&T Bell labs by Ken Thompson, Dennis Ritchie, Douglas McIlroy, and Joe Ossanna. First released in 1971 and was written in assembler. In 1973, Unix was re-written in the programming language C by Dennis Ritchie (with exceptions to the kernel and I/O). The availability of an operating system written in a high-level language allowed easier portability to di↵erent computer platforms. The GNU Project, started in 1983 by Richard Stallman, had the goal of creating a “complete Unix-compatible software system” composed entirely of free software. 386BSD released in 1992 and written by Berkeley alumni Lynne Jolitz and William Jolitz. FreeBSD, NetBSD, OpenBSD and NextStep (Mac OSX) descended from this Andrew S. Tanenbaum wrote and released MINIX, an inexpensive minimal Unix-like operating system, designed for education in computer science Frustated with licensing issues with MINIX, Linus Torvalds, a student at University of Helsinki began working on his own operating system which eventually became the ”Linux Kernel” Linus released his kernel for anyone to download and help further development. 4/25 Unix History II Linus’s message to comp.os.minix on Aug 26, 1991 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.
    [Show full text]
  • ﻫﻤﺎﻳﺶ ﻣﻌﺮﻓﻲ ﺧﺎﻧﻮﺍﺩﻩ BSD ﺩﺭ ﺍﻳﺮﺍﻥ ۹ ﺍﺭﺩﻳﺒﻬﺸﺖ ۱۳۹۵ ﺳﺎﻟﻦ ﻫﻤﺎﻳﺶ ﺁﻓﺘﺎﺏ List of Contents
    MeetBSD.ir ﻫﻤﺎﻳﺶ ﻣﻌﺮﻓﻲ ﺧﺎﻧﻮﺍﺩﻩ BSD ﺩﺭ ﺍﻳﺮﺍﻥ ۹ ﺍﺭﺩﻳﺒﻬﺸﺖ ۱۳۹۵ ﺳﺎﻟﻦ ﻫﻤﺎﻳﺶ ﺁﻓﺘﺎﺏ list of contents Introduction of speakers History of BSD Kernel models PKGNG Firewalls in FreeBSD and OpenBSD ZFS Introduction of speakers Abdourahman Homaei BSD Certified NIX Samurai Mohammad Abedini BSD Certified OpenBSD Guy Mohammad Nikkhesal Linux Instructor OpenBSD Addicted History of BSD Berkeley Software Distribution UNIX developed in the 1970s at the Bell Labs research center by Ken Thompson, Dennis Ritchie, and others University of California, Berkeley acquired a UNIX source license from AT&T The BSD project was founded in 1976 by Bill Joy History of BSD Berkeley Software Distribution all recipients had to get a license from AT&T first in order to use BSD In June 1989 Work on replacing AT&T code began and, after 18 months, much of the AT&T code was replaced However, six files containing AT&T code remained in the kernel History of BSD Berkeley Software Distribution In 1992 William Jolitz and Lynne Jolitz wrote replacements for those six missing files They released 386BSD via an anonymous FTP server a group of 386BSD users decided to branch out on their own and create FreeBSD History of BSD Berkeley Software Distribution The first version of FreeBSD was released on November 1993 NetBSD 0.8, was made in April, 1993 OpenBSD released on 1 October 1996 from NetBSD DragonFly BSD released on 12 July 2004 from FreeBSD BSD philosophy Complete OS NOT only KERNEL:Device Driver,Kernel-land,User-land Unified configuration Geek-friendly “If it ain't broke, don't fix it”
    [Show full text]
  • Pragpub #023, May 2011
    The Pragmatic Bookshelf PragPubThe First Iteration IN THIS ISSUE * A CoffeeScript Intervention * Trench Warfare * Catch the Pig! * Agile Reflections * When Did That Happen? The Bright Light of Metaphor Wherein we view software development as trench warfare, but remember that a model is not Issue #23 reality. May 2011 PragPub • May 2011 Contents FEATURES A CoffeeScript Intervention .............................................................................. 14 by Trevor Burnham Trevor takes us on a tour of some of the ways this hot new language improves on JavaScript. Trench Warfare ..................................................................................................... 18 by Jared Richardson Today’s software shops are often run like WWI military operations. It’s time to get out of the trenches. Catch the Pig! ......................................................................................................... 21 by Brian Tarbox When everything is crashing down around you, sometimes the best thing you can do is to let it crash. Agile Reflections .................................................................................................... 23 by Jeff Langr, Tim Ottinger Jeff and Tim take a break from their recent articles on agile practices to reflect on their personal experiences with agile practices, and specifically extreme programming (XP). When Did That Happen? ................................................................................... 28 by Dan Wohlbruck How a hand-written document composed on a train
    [Show full text]
  • OPENSOURCES Voices from the Open Source Revolution Michael Tiemann Future of Cygnus Solutions: an Entrepreneur’S Account
    Eric S. Raymond A Brief History of Hackerdom Marshall Kirk McKusick Twenty Years of Berkeley Unix: From AT&T-Owned to Freely Redistributable Scott Bradner The Internet Engineering Task Force Richard Stallman The GNU Operating System and the Free Software Movement OPENSOURCES Voices from the Open Source Revolution Michael Tiemann Future of Cygnus Solutions: An Entrepreneur’s Account Paul Vixie Software Engineering Linus Torvalds The Linux Edge Robert Young Giving It Away: How Red Hat Software Stumbled Across a New Economic Model and Helped Improve an Industry Larry Wall Diligence, Patience, and Humility Bruce Perens The Open Source Definition Tim O'Reilly Hardware, Software, and Infoware Jim Hamerly and Tom Paquin with Susan Walton Freeing the Source: The Story of Mozilla Eric S. Raymond Edited by The Revenge of the Hackers Chris DiBona, Sam Ockman and Mark Stone OPENSOURCES Voices from the Open Source Revolution Edited by Chris DiBona, Sam Ockman and Mark Stone Copyright “Free Software” is Copyright c ; 1998 Richard M. Stallman Verbatim copying and duplication is permitted in any medium provided this notice is preserved. “A Brief History of Hackerdom” and “Revenge of the Hackers” are Copyright c ; 1998 Eric S. Raymond. These essays are free; you can redistribute them and/or modify them under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. These essays are distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
    [Show full text]
  • The Penguin'sguidetodaemonland
    !!! EARLYDRAFT !!! The Penguin’s Guide to Daemonland An Introduction to FreeBSD for Linux Users 2nd January 2021 Contents Legal 7 Contents 9 Chapter Overview .......................... 9 Types of Readers / How to Read .................... 10 Preface 13 About This Book ........................... 13 Audience .............................. 14 Why Even Bother? .......................... 15 FreeBSD for Linux Users ........................ 17 I FreeBSD Quickstart 1 Popular Penguin Pitfalls! 23 2 (Some) Important Differences to be Aware of 25 3 Your FreeBSD Toy VM 27 4 Administration Basics for the Impatient 29 5 Identifying “Linuxisms” and Living Without them 31 II Managing FreeBSD 6 Installation 35 7 Disk Partitioning and Filesystems 37 Penguin’s Guide to Daemonland page 3 / 157 8 System Boot & Service Management 39 9 Users and Permissions 41 10 Networking 43 11 Updating the OS 45 12 Timekeeping 47 13 Package Management 49 14 Logging 51 15 Firewalling 53 16 System Mail 55 17 Foreign Filesystems & FUSE 57 III (Slightly) Advanced Topics 18 Breaking and Repairing the System 61 19 Using ZFS 63 20 Tuning FreeBSD 65 21 Secure Levels 67 22 Updating from Source 69 23 Using Ports 71 24 Jails 73 25 Bhyve 75 26 mfsBSD 77 27 Linux Emulation 79 2nd January 2021 page 4 / 157 Penguin’s Guide to Daemonland IV FreeBSD by Example 28 Rolling Customized Packages 83 29 NFS Server 85 30 ZFS Replication 87 31 Simple Web Stack 89 32 DNS Server with BIND 91 33 VPN with OpenVPN 93 34 Jailing Web, DB, BIND and OpenVPN 95 35 Managing TLS Certificates with LE 97 36 Mailserver
    [Show full text]
  • A First Course to Openfoam
    Introduction to Linux Feng Chen HPC User Services LSU HPC & LONI [email protected] Louisiana State University Baton Rouge January 21, 2015 Outline What is Linux Variables Basic commands File permissions Processes and jobs File editing 01/21/2015 Introduction to Linux 2 Outline What is Linux Variables Basic commands File permissions Processes and jobs File editing 01/21/2015 Introduction to Linux 3 What Do Operating Systems Do? Application Operating systems work as a bridge between hardware and Shell applications Kernel – Kernel: hardware drivers etc. – Shell: user interface to kernel – Some applications (system Hardware utilities) Operating System 01/21/2015 Introduction to Linux 4 History of Linux (1) Unix was conceived and implemented in 1969 at AT&T Bell labs by Ken Thompson, Dennis Ritchie, Douglas McIlroy, and Joe Ossanna. First released in 1971 and was written in assembler. In 1973, Unix was re-written in the programming language C by Dennis Ritchie (with exceptions to the kernel and I/O). The availability of an operating system written in a high-level language allowed easier portability to different computer platforms. The GNU Project, started in 1983 by Richard Stallman, had the goal of creating a “complete Unix-compatible software system” composed entirely of free software. 386BSD released in 1992 and written by Berkeley alumni Lynne Jolitz and William Jolitz. FreeBSD, NetBSD, OpenBSD and NextStep (Mac OSX) descended from this. Andrew S. Tanenbaum wrote and released MINIX, an inexpensive minimal Unix-like operating system, designed for education in computer science. 01/21/2015 Introduction to Linux 5 History of Linux (2) Frustrated with licensing issues with MINIX, Linus Torvalds, a student at University of Helsinki began working on his own operating system which eventually became the "Linux Kernel" Linus released his kernel for anyone to download and help further development.
    [Show full text]
  • Hackers Built the Internet
    Hackers Built the Internet Eric S. Raymond http://catb.org/~esr/ Who are the Hackers? There is a community, a shared culture, of expert programmers and networking wizards that traces its history back through decades to the first time-sharing minicomputers and the earliest ARPAnet experiments. The members of this culture originated the term 'hacker'. Hackers built the Internet. Hackers made the Unix operating system what it is today. Hackers run Usenet. Hackers make the World Wide Web work. In the beginning, there were Real Programmers... " 1945: Eckert & Mauchly's first ENIAC " The Real Programmers typically came out of engineering or physics backgrounds. They were often amateur-radio hobbyists. They wore white socks and polyester shirts and ties and thick glasses and coded in machine language and assembler and FORTRAN and half a dozen ancient languages now forgotten. The Early Hackers " 1961: MIT AI Lab. acquired the first PDP-1 " 1967: DEC released PDP-10, PDP-1 successor " 1969: first year of the ARPANET (the first transcontinental, high-speed computer network built by DoD) " 1969: T. Hoff (Intel) creates first microprocessor " 1971: Dennis Ritchie invented a new language called 'C' for use under Thompson's embryonic Unix " 70s: Saymour Cray coded an OS of his own design in octal with no errors. XEROX PARC " July 70-Early 80s: XEROX PARC (Palo Alto Research Center, 3180 Porter Drive in Palo Alto, California). They invented mouse, windows, icons style of software interface, laser printer, and the local-area network. " PARC's series of D machines anticipated the powerful personal computers of the 1980s by a decade The Rise of Unix " 1978: Thompson and Ritchie wrote Unix in C (not assembler as it used to be) on PDP-11 based on the “Keep It Simple, Stupid” philosophy " Unix had its networking (UUCP), email, USENET.
    [Show full text]