TCP/IP Based Cruise Control in Traffic Situation Using Raspberry Pi” Submitted in the Partial Fulfillment of the Requirement for the Award of the Degree Of

Total Page:16

File Type:pdf, Size:1020Kb

TCP/IP Based Cruise Control in Traffic Situation Using Raspberry Pi” Submitted in the Partial Fulfillment of the Requirement for the Award of the Degree Of Visvesvaraya Technological University Belagavi-590018, Karnataka A Project Dissertation on “TCP/IP Based Cruise Control in Traffic Situation Using Raspberry pi” Submitted in the partial fulfillment of the requirement for the award of the degree of BACHELOR OF ENGINEERING in ELECTRONICS AND COMMUNICATION ENGINEERING Submitted by SURAJ KUMAR USN 1NH13EC757 ANJIT SOMANI USN 1NH13EC707 MOHAMMED SADIQ USN 1NH13EC733 Under the guidance of Ms. Divya Sharma Senior Assistant Professor Department of Electronics & Communication Engineering NHCE, Bangalore-560103 Department of Electronics & Communication Engineering, NHCE, Bangalore-560103 2016-17 NEW HORIZON COLLEGE OF ENGINEERING, BANGALORE Autonomous College affiliated to VTU, approved by AICTE & UGC Accredited by NAAC with ‘A’ Grade Outer Ring Road, Marathalli, Bangalore-560103 DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGINEERING Certificate Certified that the project work entitled TCP/IP Based Cruise Control in Traffic Situation Using Raspberry pi carried out by SURAJ KUMAR (USN 1NH13EC757), ANJIT SOMANI (1NH13EC707 ) and MOHAMMED SADIQ ( 1NH13EC733 ) , bonafide students of 8th semester in partial fulfillment for the award of degree of Bachelor of Engineering in Electronics and communications Engineering of Visvesvaraya Technological University, Belgaum during the year 2016-17. It is certified that all corrections/suggestions indicated for internal assessment have been incorporated in the report deposited in the departmental library. The project report has been approved as it satisfies the academic requirements in respect to Project work prescribed for the said Degree. (SIGNATURE OF THE GUIDE) (SIGNATURE OF THE HOD) (SIGNATURE OF THE PRINCIPAL) Ms. Divya Sharma Dr. Sanjay Jain Dr. Manjunatha Senior Assistant Professor Head of Department Principal Department of Department of NHCE, Bangalore Electronics & Communication Engineering Electronics & Communication Engineering NHCE, Bangalore NHCE, Bangalore External Viva Name of the Examiners Signature with Date 1._____________________ _____________________ 2. _____________________ _____________________ ABSTRACT This paper deals with the design of new cruise control systems that can help in safe maneuver in traffic condition. It consists of two Raspberry Pi’s, one act as slave and other controller as a master. Slave consists of different sensor network accelerometer, ultrasonic sensor and humidity sensor. It consists IR sensor to gauge the recurrence of revolution of vehicle's wheel Using TCP/IP protocol slave module transmit the data i.e. from accelerometer, ultrasonic sensor, ir sensor, humidity sensor to the master module on the other end. The values of the sensors should be less than the threshold value, if it raise above the threshold then it give alert to driver to reduce speed of DC motor of the vehicle. The values of the sensors are displayed on the LCD. ACKNOWLEDGMENT The satisfaction that accompanies the successful completion of any task would be incomplete without due reverence given to those who made it possible, whose constant guidance and encouragement crowned our efforts with success. Firstly, we would like to express thanks to our college which has given us this opportunity to work on this project. We convey our sincere gratitude to Dr. Manjunatha, Principal, NHCE, Bangalore for facilities provided in college and for the support in numerous ways. We remain indebted to Dr. Sanjay Jain, HOD, Department of E&C, NHCE for permitting us to take up the project work. We would like to express our profound gratitude to our internal guide Ms. Divya Sharma, Senior Assistant Professor, Department of E&C, NHCE. We would like to express our deepest sense of gratitude to our parents and friends who have been a great source of moral support, courage, for giving us a helping hand and making us go smiles with their lovable presence during our tough times and relieving us from stress throughout our project endeavor. We also thank our teaching and non-teaching staff members of Department of E&C, NHCE TABLE OF CONTENTS Chapter 1 INTRODUCTION………………………………………………………..…...1 1.1 Problem and Motivation………………………………………………………………….1 1.2 Cruise Control System……………………………………………………………………..1 Chapter 2 LITERATURE SURVEY……….………………………………………...2-3 2.1 Literature Survey…………………..……………………………………………..………….2 2.2 Objective……………………………….…………………………………………………….….2 2.3 History of cruise control (cc)….………………………………………………………..3 Chapter 3 BLOCK DIAGRAM…………….……….…………………………………4-5 3.1 Block Diagram………………………………….………………………………………………4 3.2 Working …………………………………………….……………………………………………4 3.3 Components Requirements………….………………………………………………… 5 Chapter 4 HARDWARE SPECIFICATIONS I..………………….…………....6-27 4.1 TCP/IP Module (DSL modem)…….…………………………………………………….6 4.1.1 TCP/IP Layer…………………………………………………………………………...7 4.2 Raspberry Pi…………………………………………………………………………………….8 4.2.1 General Specifications…………………..…………………………………………8 4.2.2 Overview…………………………………………..…………………………………….9 4.2.3 Hardware……………………………………………..…………………….…………10 4.2.4 Processor……………………………………………………………………………… 11 4.2.5 RAM…………………………………………………………..………………………….12 4.2.6 Networking…………………………………………………..……………………….12 4.2.7 Peripherals…………………………………………………………………………….13 4.2.8 Video……………………………………………………………….…………………….13 4.2.9 Real-time Clock…………..………………….……………………………………..13 4.3 Generation of Raspberry Pi…………………….………………………………....….15 4.4 General Purpose Input-Output (GPIO) Connector…….……………………18 4.5 Software…………………………………………………………………….…...…………….19 4.5.1 Operating System…………….……………………………………….….………19 4.5.2 Driver APIs…………………………….………………………………….….………22 4.5.3 Firmware………………………………..…..…………………………….….……..23 4.5.4 Third Party Application Software……….……….………………………..23 4.5.5 Software Development Tools Firmware…………….…………...…...24 4.5.6 Reception and Use……………..…………………………………..……………25 Chapter 5 HARDWARE SPECIFICATION II………………..…………...…27-47 5.1 Humidity Sensor…………………………………………………………….……………....27 5.1.1 Relevant Moisture Terms…………………………………………..…………..28 5.1.2 Humidity Sensing - Classification & Principles.…..……................29 5.1.3 Pros and Cons………..………………………………………….…..………………31 5.1.4 Other Humidity Sensing Mechanisms.……..…………………………….32 5.1.5 Humidity Sensors Characteristics……………..…….…………………..…32 5.1.6 Selecting a Humidity Sensors………………..…………...….………..…...34 5.2 Ultrasonic Sensor…………………………………………………………….……...........35 5.2.1 Working of Ultrasonic Sensor….…………….…….………….…………....38 5.3 LCD………………………………………………………………………….………….………..…39 5.3.1 Registers……………………………………….………………….……………………39 5.3.2 Pin Description…………………..…………………………….………..............40 5.3.3 Commands on LCD………………………………..………………….……………42 5.4 IR Sensor………………………………………………………………..………….………...…43 5.4.1 Types of IR Sensor………………………………………………..…….………….43 5.5 DC Motor……………………………………………………………………………..….….....45 5.6 Piezo Buzzer……………………………………………………………………….……………46 5.7 IC MCP3008…………………………………………………………………..…………….….47 Chapter 6 SOFTWARE SPECIFICATION………………………….………48-52 6.1 Python……………………………………………………………………………………………48 6.1.1 About Python…………………………………………………………………………49 6.2 IDLE………………………………………………………………………..…………..…………50 6.2.1 Features……………………………………………………….…………………….…51 6.3 NOOBS………………………………………………………………………..……………...…51 Chapter 7 WORK FLOW……………………………………………….…………..52-54 7.1 Working of Proposed System…………………………………...……………...52 Chapter 8 GETTING CONNECTED…………………………………………….55-57 Chapter 9 CONCLUSION………………………………………………………………..58 Chapter 10 REFRENCES………………………………………………………………..59 APPENDIX……………………………………………………………………………….60-64 TCP/IP Based Cruise Control in Traffic Situation Using Raspberry Pi 2016-17 CHAPTER 1 INTRODUCTION 1.1 Problem and Motivation Recent studies demonstrate that 33% of the road accidents are connected with unreasonable or wrong speed, and changes in the roadway (like the presence of street work or sudden hindrances).To reduce the number of accidents and their consequences are the great concern for the traffic authorities.There are several control systems available for vehicle today that provide high safety and comfort and one such is the driver assistance system in cruise control, which as capability of maintaining a safe distance from the vehicle ahead. Cruise Control (CC) is the control system that automatically controls the speed of the vehicle and maintain a distance from an obstacle and vehicles on the road. If the sensors on the cruise control detects any obstacle then it will alert driver to controls the speed of the vehicle in order to avoid the collisions and save loss of life. 1.2 Cruise Control System Cruise Control System (CCS) may use various sensors like (range finder, humidity sensor, RADAR, etc.) to detect the obstacle ahead and the sensor send the information to the controller and the data is processed to control the vehicle’s motor speed. DEPARTMENT OF ELECTRONICS AND COMMUNICATION, NHCE 1 | Page TCP/IP Based Cruise Control in Traffic Situation Using Raspberry Pi 2016-17 CHAPTER 2 LITERATURE SURVEY 2.1 Literature Survey Nowadays mishaps are happening as often, loss of life by making a small mistake while driving (school zone, slopes region, highways etc). So, with a specific end goal to stay away from such sort of mischance and to caution the drivers and to control their vehicle speed in such sort of spots the roadway authorities have put the signboard. Once in a while it might to conceivable to view that sort of signboards and there is a chance for accidents. So, to alert the driver about the road condition and the speed restrain consequently, is done by utilizing RF technology. Cruise Control is an expansion of existing control frameworks,
Recommended publications
  • 24 Bit 96 Khz Digital Audio Workstation Using High Performance Be Operating System on a Multiprocessor Intel Machine
    24 bit 96 kHz Digital Audio Workstation using high performance Be Operating System on a multiprocessor Intel machine by: Michal Jurewicz - Mytek, Inc., New York, NY, USA Timothy Self - Be, Inc., Menlo Park, CA, USA ABSTRACT Digital Audio Workstation (DAW) has quickly established itself as the most important digital audio production tool. With the advent of high-resolution multi-channel audio formats and Internet audio exchange, the high performance and flawless operations of the desktop DAW have become a necessity. The authors explaining why current popular computer architectures are not suited to these new tasks, explore the possibilities of the new Be Operating System (BeOS)- specifically designed and optimized to handle digital audio and video. New features, unattainable with current operating systems, are discussed. 1. Introduction Ever increasing performance of computers has caused a gradual migration of the key audio production tools from hardware embodiments to the virtual world of computers. This trend will continue, propelled by bottom line economics and the appearance of new features such as network audio exchange. Although current computer hardware is up to the task, existing general purpose operating systems are the actual performance bottleneck . Designed over 10 years ago for general purpose computing, they fail to meet increasing demands for speed and file size. The new BeOS has been designed from ground up to handle high bandwidth digital audio and video in a modern multiprocessing and multitasking environment. The paper focuses solely on the use of commodity personal computers (IBM Compatibles and Apple) and their operating systems (Windows, MacOS, BeOS and Linux). Although number of specialized platforms such as SGI provides superior performance, they were omitted, as their presence in the current professional audio environment is minimal.
    [Show full text]
  • Ebook - Informations About Operating Systems Version: August 15, 2006 | Download
    eBook - Informations about Operating Systems Version: August 15, 2006 | Download: www.operating-system.org AIX Internet: AIX AmigaOS Internet: AmigaOS AtheOS Internet: AtheOS BeIA Internet: BeIA BeOS Internet: BeOS BSDi Internet: BSDi CP/M Internet: CP/M Darwin Internet: Darwin EPOC Internet: EPOC FreeBSD Internet: FreeBSD HP-UX Internet: HP-UX Hurd Internet: Hurd Inferno Internet: Inferno IRIX Internet: IRIX JavaOS Internet: JavaOS LFS Internet: LFS Linspire Internet: Linspire Linux Internet: Linux MacOS Internet: MacOS Minix Internet: Minix MorphOS Internet: MorphOS MS-DOS Internet: MS-DOS MVS Internet: MVS NetBSD Internet: NetBSD NetWare Internet: NetWare Newdeal Internet: Newdeal NEXTSTEP Internet: NEXTSTEP OpenBSD Internet: OpenBSD OS/2 Internet: OS/2 Further operating systems Internet: Further operating systems PalmOS Internet: PalmOS Plan9 Internet: Plan9 QNX Internet: QNX RiscOS Internet: RiscOS Solaris Internet: Solaris SuSE Linux Internet: SuSE Linux Unicos Internet: Unicos Unix Internet: Unix Unixware Internet: Unixware Windows 2000 Internet: Windows 2000 Windows 3.11 Internet: Windows 3.11 Windows 95 Internet: Windows 95 Windows 98 Internet: Windows 98 Windows CE Internet: Windows CE Windows Family Internet: Windows Family Windows ME Internet: Windows ME Seite 1 von 138 eBook - Informations about Operating Systems Version: August 15, 2006 | Download: www.operating-system.org Windows NT 3.1 Internet: Windows NT 3.1 Windows NT 4.0 Internet: Windows NT 4.0 Windows Server 2003 Internet: Windows Server 2003 Windows Vista Internet: Windows Vista Windows XP Internet: Windows XP Apple - Company Internet: Apple - Company AT&T - Company Internet: AT&T - Company Be Inc. - Company Internet: Be Inc. - Company BSD Family Internet: BSD Family Cray Inc.
    [Show full text]
  • Beos and RADAR 24 - Topic
    BeOS and RADAR 24 - Topic http://recordingtheworld.infopop.cc/eve/forums/a/tpc/f/831603982/m... Home Products Purchase Support Forum News About Contact iZ Technology Corporation www.izcorp.com www.izcorp.com iZ Product Forums RADAR 24, V, 6 - iZ Multitrack Recorder BeOS and RADAR 24 Moderators: President Go New Find Notify Tools Reply BeOS and RADAR 24 Login/Join <President> posted May 30, 2002 06:09 I saw a query on rec.audio.pro regarding RADAR 24 and BeOS. I answered him directly via email but I thought everyone would be interested in my answer here: Hi Tony, Regarding your post on BeOS: tony espinoza ([email protected]) "...i'm considering a Radar 24 system for my studio... only one question is nagging at me. living in the bay area, i know folks that have worked long and hard on the BeOS. but since Palm recently acquired the company, everyone I know associated with BeOS has either been let go or has split. i can see palm keeping a couple DTS guys around doing support on the OS, but knowing their financial situation (and management situation), i can't see them committing resources to it for very long without significant returns. i certainly can't see key features that iZ might be interested in continue to be the focus of the OS..." None of our development so far depends on any support from Be Inc or Palm. Those companies probably don't even know we exist. If we got updates on the OS we'd be nervous about sending it out since we now have over 2 years of stable track record with it.
    [Show full text]
  • Chapter 1. Origins of Mac OS X
    1 Chapter 1. Origins of Mac OS X "Most ideas come from previous ideas." Alan Curtis Kay The Mac OS X operating system represents a rather successful coming together of paradigms, ideologies, and technologies that have often resisted each other in the past. A good example is the cordial relationship that exists between the command-line and graphical interfaces in Mac OS X. The system is a result of the trials and tribulations of Apple and NeXT, as well as their user and developer communities. Mac OS X exemplifies how a capable system can result from the direct or indirect efforts of corporations, academic and research communities, the Open Source and Free Software movements, and, of course, individuals. Apple has been around since 1976, and many accounts of its history have been told. If the story of Apple as a company is fascinating, so is the technical history of Apple's operating systems. In this chapter,[1] we will trace the history of Mac OS X, discussing several technologies whose confluence eventually led to the modern-day Apple operating system. [1] This book's accompanying web site (www.osxbook.com) provides a more detailed technical history of all of Apple's operating systems. 1 2 2 1 1.1. Apple's Quest for the[2] Operating System [2] Whereas the word "the" is used here to designate prominence and desirability, it is an interesting coincidence that "THE" was the name of a multiprogramming system described by Edsger W. Dijkstra in a 1968 paper. It was March 1988. The Macintosh had been around for four years.
    [Show full text]
  • The Linux Device File-System
    The Linux Device File-System Richard Gooch EMC Corporation [email protected] Abstract 1 Introduction All Unix systems provide access to hardware via de- vice drivers. These drivers need to provide entry points for user-space applications and system tools to access the hardware. Following the \everything is a file” philosophy of Unix, these entry points are ex- posed in the file name-space, and are called \device The Device File-System (devfs) provides a power- special files” or \device nodes". ful new device management mechanism for Linux. Unlike other existing and proposed device manage- This paper discusses how these device nodes are cre- ment schemes, it is powerful, flexible, scalable and ated and managed in conventional Unix systems and efficient. the limitations this scheme imposes. An alternative mechanism is then presented. It is an alternative to conventional disc-based char- acter and block special devices. Kernel device drivers can register devices by name rather than de- vice numbers, and these device entries will appear in the file-system automatically. 1.1 Device numbers Devfs provides an immediate benefit to system ad- ministrators, as it implements a device naming scheme which is more convenient for large systems Conventional Unix systems have the concept of a (providing a topology-based name-space) and small \device number". Each instance of a driver and systems (via a device-class based name-space) alike. hardware component is assigned a unique device number. Within the kernel, this device number is Device driver authors can benefit from devfs by used to refer to the hardware and driver instance.
    [Show full text]
  • Filesystems HOWTO Filesystems HOWTO Table of Contents Filesystems HOWTO
    Filesystems HOWTO Filesystems HOWTO Table of Contents Filesystems HOWTO..........................................................................................................................................1 Martin Hinner < [email protected]>, http://martin.hinner.info............................................................1 1. Introduction..........................................................................................................................................1 2. Volumes...............................................................................................................................................1 3. DOS FAT 12/16/32, VFAT.................................................................................................................2 4. High Performance FileSystem (HPFS)................................................................................................2 5. New Technology FileSystem (NTFS).................................................................................................2 6. Extended filesystems (Ext, Ext2, Ext3)...............................................................................................2 7. Macintosh Hierarchical Filesystem − HFS..........................................................................................3 8. ISO 9660 − CD−ROM filesystem.......................................................................................................3 9. Other filesystems.................................................................................................................................3
    [Show full text]
  • Workstation Operating Systems Mac OS 9
    15-410 “Now that we've covered the 1970's...” Plan 9 Nov. 25, 2019 Dave Eckhardt 1 L11_P9 15-412, F'19 Overview “The land that time forgot” What style of computing? The death of timesharing The “Unix workstation problem” Design principles Name spaces File servers The TCP file system... Runtime environment 3 15-412, F'19 The Land That Time Forgot The “multi-core revolution” already happened once 1982: VAX-11/782 (dual-core) 1984: Sequent Balance 8000 (12 x NS32032) 1985: Encore MultiMax (20 x NS32032) 1990: Omron Luna88k workstation (4 x Motorola 88100) 1991: KSR1 (1088 x KSR1) 1991: “MCS” paper on multi-processor locking algorithms 1995: BeBox workstation (2 x PowerPC 603) The Land That Time Forgot The “multi-core revolution” already happened once 1982: VAX-11/782 (dual-core) 1984: Sequent Balance 8000 (12 x NS32032) 1985: Encore MultiMax (20 x NS32032) 1990: Omron Luna88k workstation (4 x Motorola 88100) 1991: KSR1 (1088 x KSR1) 1991: “MCS” paper on multi-processor locking algorithms 1995: BeBox workstation (2 x PowerPC 603) Wow! Why was 1995-2004 ruled by single-core machines? What operating systems did those multi-core machines run? The Land That Time Forgot Why was 1995-2004 ruled by single-core machines? In 1995 Intel + Microsoft made it feasible to buy a fast processor that fit on one chip, a fast I/O bus, multiple megabytes of RAM, and an OS with memory protection. Everybody could afford a “workstation”, so everybody bought one. Massive economies of scale existed in the single- processor “Wintel” universe.
    [Show full text]
  • Programming the Be Operating System
    Table of Contents Preface ................................................................................................................... vii 1. BeOS Programming Overview ............................................................. 1 Features of the BeOS ....................................................................................... 1 Structure of the BeOS ...................................................................................... 5 Software Kits and Their Classes ...................................................................... 7 BeOS Programming Fundamentals ............................................................... 13 BeOS Programming Environment ................................................................. 28 2. BeIDE Projects .......................................................................................... 31 Development Environment File Organization .............................................. 31 Examining an Existing BeIDE Project ........................................................... 34 Setting up a New BeIDE Project ................................................................... 47 HelloWorld Source Code ............................................................................... 65 3. BeOS API Overview ................................................................................ 75 Overview of the BeOS Software Kits ............................................................ 75 Software Kit Class Descriptions ....................................................................
    [Show full text]
  • ECE 598 – Advanced Operating Systems Lecture 1
    ECE 598 { Advanced Operating Systems Lecture 1 Vince Weaver http://web.eece.maine.edu/~vweaver [email protected] 23 January 2018 Announcements • Distribute and go over syllabus http://web.eece.maine.edu/~vweaver/classes/ece598_2018s/ece598_2018s.pdf 1 Syllabus Summary • Does require some C and low-level Assembly. For the non-computer engineers will try to go over it as much as possible. • Will involve setting up an ARM toolchain (possibly cross- compiler) that also can be tricky at first. • There will be some manner of low-level serial port access which is hard at first. • Please, please, no academic dishonesty. 2 • There will be a final project • If you need help on homeworks, come to me sooner rather than later. 3 Hardware for the Class Assignments • Raspberry Pi Model 2 or 3. We need multicore, so no B+, B, A, A+, or zero. I can potentially loan one out if you do not have one. • Micro-USB cable (To provide power) • 4GB SD memory card (or larger) { preloaded with Linux if possible • USB/Serial adapter { something similar to http://www.adafruit.com/products/954 I will loan these out, no need to buy one 4 • Some way to write an SD-card If you are starting from scratch, getting a kit like http://www.adafruit.com/products/1014 might be convenient (but expensive) getting the parts individually might be cheaper. I have a limited number of Raspberry Pi boards I can loan out if necessary. 5 Optional Hardware (not necessary for class but might make development easier) • Case to hold the Pi • GPIO breakout cable • ethernet cable • HDMI cable • USB keyboard 6 Why Use an Operating System? • Provides Layers of Abstraction { Abstract hardware: hide hardware differences.
    [Show full text]
  • The Evolution of File Systems
    The Evolution of File Systems Thomas Rivera, Hitachi Data Systems Craig Harmer, April 2011 SNIA Legal Notice The material contained in this tutorial is copyrighted by the SNIA. Member companies and individuals may use this material in presentations and literature under the following conditions: Any slide or slides used must be reproduced without modification The SNIA must be acknowledged as source of any material used in the body of any document containing material from these presentations. This presentation is a project of the SNIA Education Committee. Neither the Author nor the Presenter is an attorney and nothing in this presentation is intended to be nor should be construed as legal advice or opinion. If you need legal advice or legal opinion please contact an attorney. The information presented herein represents the Author's personal opinion and current understanding of the issues involved. The Author, the Presenter, and the SNIA do not assume any responsibility or liability for damages arising out of any reliance on or use of this information. NO WARRANTIES, EXPRESS OR IMPLIED. USE AT YOUR OWN RISK. The Evolution of File Systems 2 © 2012 Storage Networking Industry Association. All Rights Reserved. 2 Abstract The File Systems Evolution Over time additional file systems appeared focusing on specialized requirements such as: data sharing, remote file access, distributed file access, parallel files access, HPC, archiving, security, etc. Due to the dramatic growth of unstructured data, files as the basic units for data containers are morphing into file objects, providing more semantics and feature- rich capabilities for content processing This presentation will: Categorize and explain the basic principles of currently available file system architectures (e.g.
    [Show full text]
  • Nix(OS) - Revolutionizing Packaging and Configuration Management!
    Nix(OS) - Revolutionizing packaging and configuration management! The Purely Functional Linux Distribution 1 Before we begin (FYI) Ask questions at any time Please ask lots of questions :) The slides contain some redundancy There are a few optional slides at the end Please give me feedback Louder Faster/slower More/less details Etc. 2 About me Michael Weiss aka. primeos Computer science student at the University of Tübingen I love free soware, etc. First nixpkgs commit: 2016-10-05 I maintain ~41 packages and ~3 modules (2018-06-08) I also love privacy (i.e. no more details :P) Email: [email protected] (#privacy) 3 Main components Nix (package manager) Nixpkgs (Nix packages collection) NixOS (operating system) NixOps (DevOps / cloud deployment tool) 4 Nix* ISO/OSI model NixOps NixOS Nixpkgs Nix 5 Other tools Hydra (Nix based continuous build system) Disnix (distributed services deployment) PatchELF (change dynamic linker and RPATH) {cabal,go,node,pip,python,pypi,composer,hex,bower,vim,...}2 6 History Started as a research project (with funding) First paper in 2004 (many will follow) Nix package manager developed by Eelco Dolstra as part of his PhD research (~2003) First NixOS prototype developed by Armijn Hemel as his master's thesis project Hydra developed as part of the LaQuSo Buildfarm project 7 Timeline 2003: init (research begins) 2007: NixOS becomes usable + x86_64 support 2008: Website moved to nixos.org 2009: Nix logo + Nix(OS) build on Hydra 2011: Migration from Subversion to Git(Hub) 2013: Switch from Upstart to systemd +
    [Show full text]
  • Nixos: Järjestelmäkonfiguraation Hallintaan Erikoistunut Linux-Jakelu
    Kalle Kumpulainen NIXOS: JÄRJESTELMÄKONFIGURAATION HALLINTAAN ERIKOISTUNUT LINUX-JAKELU Informaatioteknologian ja viestinnän tiedekunta Kandidaatintyö Toukokuu 2019 i TIIVISTELMÄ Kalle Kumpulainen: NixOS: Järjestelmäkonfiguraation Hallintaan Erikoistunut Linux-jakelu English title: NixOS: A Linux Distribution Specialized in System Configuration Management Kandidaatintyö Tampereen yliopisto Tieto- ja sähkötekniikka Toukokuu 2019 Työn analyysin kohteena oli hollantilaisen Eelco Dolstran tutkimusprojektina alkanut ja sittem- min väitöskirjaksi asti päätynyt projekti NixOS, joka on järjestelmäkonfiguroinnin hallintaan ja oh- jelmistojen jakeluun liittyvien ongelmakohtien ratkaisemiseen erikoistunut Linux-pohjainen käyt- töjärjestelmä. Tämän työn tarkoituksena oli selvittää tarkemmin mitä nämä ongelmakohdat tosia- siassa ovat, millaisilla ratkaisuilla niitä on NixOS:ssä ratkaistu ja millaisia eroavaisuuksia NixOS si- sältää verrattuna muihin suosittuihin Linux-käyttöjärjestelmiin. Tämän lisäksi tavoitteena oli myös selvittää millaisiin käyttökohteisiin NixOS sopii. Työssä perehdyttiin aluksi tavallisten Linux-jakeluiden rakenteeseen, josta erityisesti pakettien- hallintaan, koska se on NixOS:n poikkeuksellisin ja tärkein komponentti. Näillä tiedoilla siirryttiin NixOS:n esittelyyn, josta käytiin läpi sen historiaa, rakennetta ja erityisiä ominaisuuksia. Tämän jälkeen keskityttiin NixOS:n tärkeimpään ominaisuuteen, eli sen pakettienhallintajärjestelmään. Siitä käytiin läpi sen toimintaperiaate ja erot muihin pakettienhallintajärjestelmiin.
    [Show full text]