Embedded Linux Day 2
|
|
- Ethel Henry
- 5 years ago
- Views:
Transcription
1 Embedded Linux Day 2
2 Stuffs HW1 posted today Shooting for 1-2 hours. Review scheduling stuff & licensing. HW0 in lab Sign up for group meetings for next Thursday posted today.
3 Review I got a number of questions yesterday which led me to believe there are some fundamental misunderstandings. I think I dove in too deep without looking around first. So we ll address that. About Linux, but also about the larger picture.
4 In this class, we are exploring a number of environments we could use on an embedded processor. One is barebones In the context of this class, this means that you are just writing C or assembly and not using any library support (or at least no significant library support). This is what we did in 373 To do I/O, you need to read the processor specification and figure out which memory-mapped I/O locations you want to use and how to use them. Advantages: Code can be really small (only have what you want) and efficient. You have complete control. Disadvantages: Lots of work (reading, programming) Error prone
5 Environments One is a set of libraries that you can call. This is generally just a set of hardware interface functions that have been written for you. Advantages: Don t need to do as much reading. Hopefully the interface is the same across different boards/chips. Makes porting so much easier. Disadvantages Libraries might not support what you want to do. Maybe no support for a 10-bit SPI device for example Libraries might be ineffiecent as they are trying to do more than you want. Still need to handle scheduling yourself (which may be trivial, but might not be )
6 Environments One is an RTOS Basically a bunch of libraries with a scheduler. Can be more than this (shell support, memory management, file system, all kinds of things) FreeRTOS is an example of a fairly simple one of these. Supports memory management and even a FAT file system if you want it, but not hugely featureful support. Advantages All the advantages of the libraries, but with a scheduler and other things. Win! Disadvantages More to learn about the software. Can be hard to justify if you can t amortize it over more than one project. Porting to new boards/chips tends to be harder, so often the port options are more limited. More bloat (code you don t need) that could take up space. Might be doing things you don t want (using timers, wanting control of interrupts, wanting control of memory layout, etc.)
7 RTOS (some more) Again, RTOSes can be huge or quite small; complex or very simple. Linux can be an RTOS with work. WinCE is one too. All that s needed is real-time support. But in here I m talking about RTOSes similar to FreeRTOS Small, modular, and fairly easy to understand. Doesn t try to (say) support every I/O device on the planet (which Windows and Linux does). Means less bureaucratic overhead than one might find in those OSes. Smaller means less features, but what you can do is often faster and easier. Make the common case fast.
8 user OS that s real-time (or not) Taking a full-fledged OS designed to deal with logged in users Simultaneous Multi-user support, graphics, support for big applications (e.g. Word, Matlab), etc. Advantages Familiar environment. Support for applications. Want to do vision work, just use OpenCV. Want to do motion planning? Can do it in Matlab. Abstracts nearly all hardware issues away. Often highly portable. Given enough memory/cpu Disadvantages Often huge bloat May not be real-time; may not have control of scheduling as much as you d like While it effectively has massive library hardware support, if it doesn t support what you want to do, it can be a pain to figure out how to do it yourself.
9 So Much of the first half of this class is about exposing you to these different options. 373 did barebones Arduino is a library (with a bit more the loop) FreeRTOS lets you see a fairly basic (and good) RTOS Lab 4, Linux device drivers, will let you see some of the difficulties of using a user OS in an embedded system. The win is pretty large (OpenCV for example) But there is a cost. Lab 4 (and this lecture) Get you to see how to deal with one of the problems with such an OS How to write (and use ) a device driver in Linux. You re on your own for Windows
10 What we did last time I tried to get you some idea of what you might see on a minimal Linux install File system, busybox, boot process, flash drive, etc. If you are dealing with a very small version of Linux (often the case with embedded systems) you ll be exposed to a lot of that.
11 Today Jump back to slides from last time Cover device drivers in Linux at a high level
12 Modules: Some thinky stuff Two devices crw-r--r-- 1 root root 60, :36 /dev/mem2 crw-rw-rw- 1 root root 60, :32 /dev/memory Created two devices, each with different minor numbers But same driver Recall that we print the minor number to the log on open. After a cat to /dev/memory and /dev/mem2 Nov 1 11:34:37 admin373-desktop kernel: [ ] Minor: 0 Nov 1 11:43:00 admin373-desktop kernel: [ ] Minor: 3
13 Modules: Some thinky stuff Notes: One important note is that module stuff is written in kernel space. That means you can t do a lot of things you might want to! File I/O is a really bad idea See next slide. Talking to memory-mapped I/O devices requires effort Still have virtual memory Things like malloc don t quite work Thus kmalloc, kprint, etc. Can be an unpleasant place to live
14 Modules: Some thinky stuff A rant from on-line (Dick Johnson) The kernel is not a process. A file-descriptor needs a process-context for it to mean anything. Otherwise how would the kernel keep your STDIN_FILENO separate from somebody else's STDIN_FILENO? Coding a kernel module is not like coding a user-mode program. You should never write a module that requires reading or writing to any logical device. The kernel is the thing that translates physical I/O to logical I/O. Attempting to perform logical I/O in the kernel is effectively going backwards. If you need to get "outside world" information into your module, it's easy. Your module can have code for open(), read(), write(), ioctl(), and close(). That said, it is possible to do file I/O in the kernel, but doing so is a severe violation of standard practice. It is also complicated and can lead to races and crashes if, for instance, a file is removed while your module has it open. You can readily code a kernel module so that it can be controlled from a user-mode script such as: insmod my-thing.o my_device < parameters Until you understand this, you should not attempt to write a kernel module. If you need human input for your module, it works the same way. A user-mode program can open() the device and perform any kind of device-specific ioctl() (or read or write or whatever) that it wants. This means that there is never, never, ever, never any real reason to attempt to perform logical (like file) I/O within the kernel at all.
15 Sources [1] Very useful overview on drivers, a fair bit of text and many figures come from here. [2] Wikipedia [3] Nice overview covering modules in general. A bit out of date?
Memory Management. Kevin Webb Swarthmore College February 27, 2018
Memory Management Kevin Webb Swarthmore College February 27, 2018 Today s Goals Shifting topics: different process resource memory Motivate virtual memory, including what it might look like without it
More informationData Structures and Algorithms Dr. Naveen Garg Department of Computer Science and Engineering Indian Institute of Technology, Delhi.
Data Structures and Algorithms Dr. Naveen Garg Department of Computer Science and Engineering Indian Institute of Technology, Delhi Lecture 18 Tries Today we are going to be talking about another data
More informationBlackfin Online Learning & Development
Presentation Title: Multimedia Starter Kit Presenter Name: George Stephan Chapter 1: Introduction Sub-chapter 1a: Overview Chapter 2: Blackfin Starter Kits Sub-chapter 2a: What is a Starter Kit? Sub-chapter
More information(Refer Slide Time: 02.06)
Data Structures and Algorithms Dr. Naveen Garg Department of Computer Science and Engineering Indian Institute of Technology, Delhi Lecture 27 Depth First Search (DFS) Today we are going to be talking
More informationLecture #7: Implementing Mutual Exclusion
Lecture #7: Implementing Mutual Exclusion Review -- 1 min Solution #3 to too much milk works, but it is really unsatisfactory: 1) Really complicated even for this simple example, hard to convince yourself
More informationStanko Tadić
State of modern JavaScript development 04.02.2017. Stanko Tadić HELLO, MY NAME IS STANKO TADIĆ and I m a Principal Developer at Work & Co. I love development, music and cartoons. You might say I m a geek.
More informationCS 326: Operating Systems. Process Execution. Lecture 5
CS 326: Operating Systems Process Execution Lecture 5 Today s Schedule Process Creation Threads Limited Direct Execution Basic Scheduling 2/5/18 CS 326: Operating Systems 2 Today s Schedule Process Creation
More informationTerm Definition Introduced in: This option, located within the View tab, provides a variety of options to choose when sorting and grouping Arrangement
60 Minutes of Outlook Secrets Term Definition Introduced in: This option, located within the View tab, provides a variety of options to choose when sorting and grouping Arrangement messages. Module 2 Assign
More informationCS 104 Computer Organization and Design
CS 104 Computer Organization and Design Exceptions and Interrupts CS104: Exceptions and Interrupts 1 Exceptions and Interrupts App App App System software Mem CPU I/O Interrupts: Notification of external
More informationLesson 9 Transcript: Backup and Recovery
Lesson 9 Transcript: Backup and Recovery Slide 1: Cover Welcome to lesson 9 of the DB2 on Campus Lecture Series. We are going to talk in this presentation about database logging and backup and recovery.
More informationIn today s video I'm going show you how you can set up your own online business using marketing and affiliate marketing.
Hey guys, Diggy here with a summary of part two of the four part free video series. If you haven't watched the first video yet, please do so (https://sixfigureinc.com/intro), before continuing with this
More informationCOSC 2P95. Introduction. Week 1. Brock University. Brock University (Week 1) Introduction 1 / 18
COSC 2P95 Introduction Week 1 Brock University Brock University (Week 1) Introduction 1 / 18 Lectures and Labs Lectures are Thursdays, from 3pm 5pm (AS/STH 217) There are two lab sections Lab 1 is Mondays,
More informationHow to approach a computational problem
How to approach a computational problem A lot of people find computer programming difficult, especially when they first get started with it. Sometimes the problems are problems specifically related to
More informationProblem Solving through Programming In C Prof. Anupam Basu Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur
Problem Solving through Programming In C Prof. Anupam Basu Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur Lecture 15 Branching : IF ELSE Statement We are looking
More information/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Priority Queues / Heaps Date: 9/27/17
01.433/33 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Priority Queues / Heaps Date: 9/2/1.1 Introduction In this lecture we ll talk about a useful abstraction, priority queues, which are
More informationECE 471 Embedded Systems Lecture 12
ECE 471 Embedded Systems Lecture 12 Vince Weaver http://www.eece.maine.edu/~vweaver vincent.weaver@maine.edu 8 October 2015 Announcements Homework grades have been sent out, let me know if you did not
More informationECE 471 Embedded Systems Lecture 16
ECE 471 Embedded Systems Lecture 16 Vince Weaver http://web.eece.maine.edu/~vweaver vincent.weaver@maine.edu 15 October 2018 Announcements Midterm is graded Don t forget HW#5 No class Wednesday, Career
More informationKernels & Processes The Structure of the Operating System
COMP 111: Operating Systems (Fall 2013) Kernels & Processes The Structure of the Operating System Noah Mendelsohn Tufts University Email: noah@cs.tufts.edu Web: http://www.cs.tufts.edu/~noah Based on a
More informationCS 326: Operating Systems. CPU Scheduling. Lecture 6
CS 326: Operating Systems CPU Scheduling Lecture 6 Today s Schedule Agenda? Context Switches and Interrupts Basic Scheduling Algorithms Scheduling with I/O Symmetric multiprocessing 2/7/18 CS 326: Operating
More informationThe first thing we ll need is some numbers. I m going to use the set of times and drug concentration levels in a patient s bloodstream given below.
Graphing in Excel featuring Excel 2007 1 A spreadsheet can be a powerful tool for analyzing and graphing data, but it works completely differently from the graphing calculator that you re used to. If you
More informationHow to Stay Safe on Public Wi-Fi Networks
How to Stay Safe on Public Wi-Fi Networks Starbucks is now offering free Wi-Fi to all customers at every location. Whether you re clicking connect on Starbucks Wi-Fi or some other unsecured, public Wi-Fi
More informationRecall: Address Space Map. 13: Memory Management. Let s be reasonable. Processes Address Space. Send it to disk. Freeing up System Memory
Recall: Address Space Map 13: Memory Management Biggest Virtual Address Stack (Space for local variables etc. For each nested procedure call) Sometimes Reserved for OS Stack Pointer Last Modified: 6/21/2004
More informationIntro to Programming. Unit 7. What is Programming? What is Programming? Intro to Programming
Intro to Programming Unit 7 Intro to Programming 1 What is Programming? 1. Programming Languages 2. Markup vs. Programming 1. Introduction 2. Print Statement 3. Strings 4. Types and Values 5. Math Externals
More informationComputer Science 322 Operating Systems Mount Holyoke College Spring Topic Notes: Processes and Threads
Computer Science 322 Operating Systems Mount Holyoke College Spring 2010 Topic Notes: Processes and Threads What is a process? Our text defines it as a program in execution (a good definition). Definitions
More information_APP A_541_10/31/06. Appendix A. Backing Up Your Project Files
1-59863-307-4_APP A_541_10/31/06 Appendix A Backing Up Your Project Files At the end of every recording session, I back up my project files. It doesn t matter whether I m running late or whether I m so
More informationModule 6. Campaign Layering
Module 6 Email Campaign Layering Slide 1 Hello everyone, it is Andy Mackow and in today s training, I am going to teach you a deeper level of writing your email campaign. I and I am calling this Email
More informationWelcome to Lab! Feel free to get started until we start talking! The lab document is located on the course website:
Welcome to Lab! Feel free to get started until we start talking! The lab document is located on the course website: https://users.wpi.edu/~sjarvis/ece2049_smj/ We will come around checking your pre-labs
More informationSpring 2017 :: CSE 506. Device Programming. Nima Honarmand
Device Programming Nima Honarmand read/write interrupt read/write Spring 2017 :: CSE 506 Device Interface (Logical View) Device Interface Components: Device registers Device Memory DMA buffers Interrupt
More informationMITOCW ocw f99-lec07_300k
MITOCW ocw-18.06-f99-lec07_300k OK, here's linear algebra lecture seven. I've been talking about vector spaces and specially the null space of a matrix and the column space of a matrix. What's in those
More informationFractions and their Equivalent Forms
Fractions Fractions and their Equivalent Forms Little kids use the concept of a fraction long before we ever formalize their knowledge in school. Watching little kids share a candy bar or a bottle of soda
More informationAsynchronous Programming
Asynchronous Programming Turn-in Instructions A main file, called gui.py See previous slides for how to make it main I ll run it from the command line Put in a ZIP file, along with any additional needed
More informationLecture 3: O/S Organization. plan: O/S organization processes isolation
6.828 2012 Lecture 3: O/S Organization plan: O/S organization processes isolation topic: overall o/s design what should the main components be? what should the interfaces look like? why have an o/s at
More informationProving Dekker with SPIN and PROMELA
15-410...fairness disabled... Proving Dekker with SPIN and PROMELA Joshua Wise With help from Greg Hartman L36_SPIN 1 Synchronization Project 4 due Wednesday Everyone having fun? Kernel interviews If you
More informationCS61 Scribe Notes Lecture 18 11/6/14 Fork, Advanced Virtual Memory
CS61 Scribe Notes Lecture 18 11/6/14 Fork, Advanced Virtual Memory Roger, Ali, and Tochi Topics: exploits fork shell programming rest of course announcements/ending (for later info) final (not as time
More informationThese are notes for the third lecture; if statements and loops.
These are notes for the third lecture; if statements and loops. 1 Yeah, this is going to be the second slide in a lot of lectures. 2 - Dominant language for desktop application development - Most modern
More information<layer> or the ingrained habits of web development. Peter-Paul Koch HTML Special, 16 June 2016
or the ingrained habits of web development Peter-Paul Koch http://quirksmode.org http://twitter.com/ppk HTML Special, 16 June 2016 Who here remembers the tag? Essentially what we
More informationEECS 203 Spring 2016 Lecture 8 Page 1 of 6
EECS 203 Spring 2016 Lecture 8 Page 1 of 6 Algorithms (3.1-3.3) Algorithms are a huge topic. In CSE we have 2 theory classes purely dedicated to algorithms (EECS 477 and EECS 586) and a number of classes
More informationValuable points from Lesson 6 Adobe Flash CS5 Professional Classroom in a Book
Valuable points from Lesson 6 Adobe Flash CS5 Professional Classroom in a Book You are expected to understand and know how to use/do each of these tasks in Flash CS5, unless otherwise noted below. If you
More informationThe Art and Science of Memory Allocation
Logical Diagram The Art and Science of Memory Allocation Don Porter CSE 506 Binary Formats RCU Memory Management Memory Allocators CPU Scheduler User System Calls Kernel Today s Lecture File System Networking
More informationOS Structure. Kevin Webb Swarthmore College January 25, Relevant xkcd:
OS Structure Kevin Webb Swarthmore College January 25, 2018 Relevant xkcd: One of the survivors, poking around in the ruins with the point of a spear, uncovers a singed photo of Richard Stallman. They
More informationSeparable Kernels and Edge Detection
Separable Kernels and Edge Detection CS1230 Disclaimer: For Filter, using separable kernels is optional. It makes your implementation faster, but if you can t get it to work, that s totally fine! Just
More informationCoding Workshop. Learning to Program with an Arduino. Lecture Notes. Programming Introduction Values Assignment Arithmetic.
Coding Workshop Learning to Program with an Arduino Lecture Notes Table of Contents Programming ntroduction Values Assignment Arithmetic Control Tests f Blocks For Blocks Functions Arduino Main Functions
More informationINTRODUCTION. 2
1 INTRODUCTION It is of no secret that Android is loved by millions of people around the world. Created and developed by Google, it would be most developers dream job. That being said, there are a lot
More informationSpring Modern Computer Science in a Unix Like Environment CIS c
Spring 2009 Modern Computer Science in a Unix Like Environment http://www.seas.upenn.edu/~cis399ux 25/01/09 Slide 1 What is Unix/Linux? Linux itself is an Operating System Kernel Linux is often used to
More informationAdding content to your Blackboard 9.1 class
Adding content to your Blackboard 9.1 class There are quite a few options listed when you click the Build Content button in your class, but you ll probably only use a couple of them most of the time. Note
More informationStorage Systems Dr. K. Gopinath Department of Computer Science and Engineering Indian Institute of Science, Bangalore
Storage Systems Dr. K. Gopinath Department of Computer Science and Engineering Indian Institute of Science, Bangalore Types of Storage Devices and Systems, Long-term Storage Lecture 11 USB Storage: Introduction,
More informationPage 1. Logistics. Introduction to Embedded Systems. Last Time. ES Software Design. Labs start Wed CS/ECE 6780/5780. Al Davis
Logistics Introduction to Embedded Systems CS/ECE 6780/5780 Al Davis Today s topics: logistics - minor synopsis of last lecture software desig finite state machine based control Labs start Wed make sure
More informationAn Illustrated Guide to Shell Magic: Standard I/O & Redirection
An Illustrated Guide to Shell Magic: Standard I/O & Redirection Created by Brennen Bearnes Last updated on 2015-03-03 05:15:07 PM EST Guide Contents Guide Contents Overview Input & Output Standard I/O
More information(Refer Slide Time: 01:25)
Computer Architecture Prof. Anshul Kumar Department of Computer Science and Engineering Indian Institute of Technology, Delhi Lecture - 32 Memory Hierarchy: Virtual Memory (contd.) We have discussed virtual
More informationExcel Basics Rice Digital Media Commons Guide Written for Microsoft Excel 2010 Windows Edition by Eric Miller
Excel Basics Rice Digital Media Commons Guide Written for Microsoft Excel 2010 Windows Edition by Eric Miller Table of Contents Introduction!... 1 Part 1: Entering Data!... 2 1.a: Typing!... 2 1.b: Editing
More informationWelcome Back! Without further delay, let s get started! First Things First. If you haven t done it already, download Turbo Lister from ebay.
Welcome Back! Now that we ve covered the basics on how to use templates and how to customise them, it s time to learn some more advanced techniques that will help you create outstanding ebay listings!
More informationIntroducing Shared-Memory Concurrency
Race Conditions and Atomic Blocks November 19, 2007 Why use concurrency? Communicating between threads Concurrency in Java/C Concurrency Computation where multiple things happen at the same time is inherently
More informationSpring 2017 :: CSE 506. Introduction to. Virtual Machines. Nima Honarmand
Introduction to Virtual Machines Nima Honarmand Virtual Machines & Hypervisors Virtual Machine: an abstraction of a complete compute environment through the combined virtualization of the processor, memory,
More informationProtecting binaries. Andrew Griffiths
Protecting binaries Andrew Griffiths andrewg@felinemenace.org Introduction This presentation is meant to be useful for people of all skill levels. Hopefully everyone will get something out of this presentation.
More informationWin-Back Campaign- Re-Engagement Series
Win-Back Campaign- Re-Engagement Series At this point the re-engagement campaign has ended, so if the prospect still hasn t responded it s time to turn up the heat. NOTE: In the emails below, everywhere
More informationPROFESSOR: Last time, we took a look at an explicit control evaluator for Lisp, and that bridged the gap between
MITOCW Lecture 10A [MUSIC PLAYING] PROFESSOR: Last time, we took a look at an explicit control evaluator for Lisp, and that bridged the gap between all these high-level languages like Lisp and the query
More informationRunning Wordstar 6 on Windows 7 Using vdos
Running Wordstar 6 on Windows 7 Using vdos Thanks to Dennis McCunney for helping me learn how to set vdos up. DISCLAIMER #1: As explained below, I am running Wordstar 6 for DOS on a Windows 7 (64- bit)
More informationObject-Oriented Analysis and Design Prof. Partha Pratim Das Department of Computer Science and Engineering Indian Institute of Technology-Kharagpur
Object-Oriented Analysis and Design Prof. Partha Pratim Das Department of Computer Science and Engineering Indian Institute of Technology-Kharagpur Lecture 06 Object-Oriented Analysis and Design Welcome
More informationCS 162 Operating Systems and Systems Programming Professor: Anthony D. Joseph Spring Lecture 18: Naming, Directories, and File Caching
CS 162 Operating Systems and Systems Programming Professor: Anthony D. Joseph Spring 2004 Lecture 18: Naming, Directories, and File Caching 18.0 Main Points How do users name files? What is a name? Lookup:
More informationn! = 1 * 2 * 3 * 4 * * (n-1) * n
The Beauty and Joy of Computing 1 Lab Exercise 9: Problem self-similarity and recursion Objectives By completing this lab exercise, you should learn to Recognize simple self-similar problems which are
More informationThis video is part of the Microsoft Virtual Academy.
This video is part of the Microsoft Virtual Academy. 1 In this session we re going to talk about building for the private cloud using the Microsoft deployment toolkit 2012, my name s Mike Niehaus, I m
More informationDavid DeFlyer Class notes CS162 January 26 th, 2009
1. Class opening: 1. Handed out ACM membership information 2. Review of last lecture: 1. operating systems were something of an ad hoc component 2. in the 1960s IBM tried to produce a OS for all customers
More informationWeb Hosting. Important features to consider
Web Hosting Important features to consider Amount of Storage When choosing your web hosting, one of your primary concerns will obviously be How much data can I store? For most small and medium web sites,
More informationProject 0: Linux & Virtual Machine Dabbling
Project 0: Linux & Virtual Machine Dabbling CS-3013 Operating Systems Hugh C. Lauer (Slides include materials from Slides include materials from Modern Operating Systems, 3 rd ed., by Andrew Tanenbaum
More informationCS 162 Operating Systems and Systems Programming Professor: Anthony D. Joseph Spring Lecture 18: Naming, Directories, and File Caching
CS 162 Operating Systems and Systems Programming Professor: Anthony D. Joseph Spring 2002 Lecture 18: Naming, Directories, and File Caching 18.0 Main Points How do users name files? What is a name? Lookup:
More informationGetting Started. Excerpted from Hello World! Computer Programming for Kids and Other Beginners
Getting Started Excerpted from Hello World! Computer Programming for Kids and Other Beginners EARLY ACCESS EDITION Warren D. Sande and Carter Sande MEAP Release: May 2008 Softbound print: November 2008
More information12 Follow-up Templates
12 Follow-up Email Templates that help turn prospects into customers in 2018 When you look at the sales process of most B2B sales teams, there s typically A LOT of things that you could improve. I generally
More informationData Management CS 4720 Mobile Application Development
Data Management Mobile Application Development Desktop Applications What are some common applications you use day-to-day? Browser (Chrome, Firefox, Safari, etc.) Music Player (Spotify, itunes, etc.) Office
More informationAccess Control. Steven M. Bellovin September 13,
Access Control Steven M. Bellovin September 13, 2016 1 Security Begins on the Host Even without a network, hosts must enforce the CIA trilogy Something on the host the operating system aided by the hardware
More informationCS197U: A Hands on Introduction to Unix
CS197U: A Hands on Introduction to Unix Lecture 4: My First Linux System Tian Guo University of Massachusetts Amherst CICS 1 Reminders Assignment 2 was due before class Assignment 3 will be posted soon
More informationFileWave 10 Webinar Q&A
FileWave 10 Webinar Q&A When will 10 be released? October 14 th, but you can sign up today to get into the beta program. Link: www.filewave.com/beta-program How stable is the beta? Should we use it for
More informationCS4450. Computer Networks: Architecture and Protocols. Lecture 11 Rou+ng: Deep Dive. Spring 2018 Rachit Agarwal
CS4450 Computer Networks: Architecture and Protocols Lecture 11 Rou+ng: Deep Dive Spring 2018 Rachit Agarwal 2 Goals for Today s Lecture Learning about Routing Protocols Link State (Global view) Distance
More information9 R1 Get another piece of paper. We re going to have fun keeping track of (inaudible). Um How much time do you have? Are you getting tired?
Page: 1 of 14 1 R1 And this is tell me what this is? 2 Stephanie x times y plus x times y or hm? 3 R1 What are you thinking? 4 Stephanie I don t know. 5 R1 Tell me what you re thinking. 6 Stephanie Well.
More informationOODA Security. Taking back the advantage!
OODA Security Taking back the advantage! About Me Kevin Fiscus Owner Cyber Defense Advisors 24 Years in IT 13 Years in security SANS Certified Instructor GIAC Security Expert Cyber Guardian Red/Blue Team
More informationScheduling, part 2. Don Porter CSE 506
Scheduling, part 2 Don Porter CSE 506 Logical Diagram Binary Memory Formats Allocators Threads Today s Lecture Switching System to CPU Calls RCU scheduling File System Networking Sync User Kernel Memory
More informationCS510 Operating System Foundations. Jonathan Walpole
CS510 Operating System Foundations Jonathan Walpole Course Overview Who am I? Jonathan Walpole Professor at PSU since 2004, OGI 1989 2004 Research Interests: Operating System Design, Parallel and Distributed
More informationTHE AUDIENCE FOR THIS BOOK. 2 Ajax Construction Kit
Introduction This whole book idea started as a bet I had with my editor that we couldn t pick two random techie topics and tie them together in a book. Two darts flew through the air and the topics Ajax
More informationProcesses, Context Switching, and Scheduling. Kevin Webb Swarthmore College January 30, 2018
Processes, Context Switching, and Scheduling Kevin Webb Swarthmore College January 30, 2018 Today s Goals What is a process to the OS? What are a process s resources and how does it get them? In particular:
More informationIncoherent Rant about Code
Incoherent Rant about Code Aras Pranckevičius Unity Unity Bootcamp II, 2010 Nov-Dec This is pretty much on random code related things with no structure. Expect lots of topic jumps for no reason at all!
More informationHello World! Computer Programming for Kids and Other Beginners. Chapter 1. by Warren Sande and Carter Sande. Copyright 2009 Manning Publications
Hello World! Computer Programming for Kids and Other Beginners by Warren Sande and Carter Sande Chapter 1 Copyright 2009 Manning Publications brief contents Preface xiii Acknowledgments xix About this
More informationLearn Linux in a Month of Lunches by Steven Ovadia
Learn Linux in a Month of Lunches by Steven Ovadia Sample Chapter 17 Copyright 2017 Manning Publications brief contents PART 1 GETTING LINUX UP AND RUNNING... 1 1 Before you begin 3 2 Getting to know Linux
More informationMTH 122 Calculus II Essex County College Division of Mathematics and Physics 1 Lecture Notes #11 Sakai Web Project Material
MTH Calculus II Essex County College Division of Mathematics and Physics Lecture Notes # Sakai Web Project Material Introduction - - 0 - Figure : Graph of y sin ( x y ) = x cos (x + y) with red tangent
More information(Refer Slide Time: 01.26)
Data Structures and Algorithms Dr. Naveen Garg Department of Computer Science and Engineering Indian Institute of Technology, Delhi Lecture # 22 Why Sorting? Today we are going to be looking at sorting.
More informationCS 112 Project Assignment: Visual Password
CS 112 Project Assignment: Visual Password Instructor: Dan Fleck Overview In this project you will use Python to implement a visual password system. In the industry today there is ongoing research about
More informationChapter01.fm Page 1 Monday, August 23, :52 PM. Part I of Change. The Mechanics. of Change
Chapter01.fm Page 1 Monday, August 23, 2004 1:52 PM Part I The Mechanics of Change The Mechanics of Change Chapter01.fm Page 2 Monday, August 23, 2004 1:52 PM Chapter01.fm Page 3 Monday, August 23, 2004
More informationHere to take you beyond. ECEP Course syllabus. Emertxe Information Technologies ECEP course syllabus
Here to take you beyond ECEP Course syllabus Module: 1/6 Module name: Linux Systems To get familiar with Linux Operating system Commands, tools and editors Enable you to write Shell scripts To understand
More informationPrivacy and Security in Online Social Networks Department of Computer Science and Engineering Indian Institute of Technology, Madras
Privacy and Security in Online Social Networks Department of Computer Science and Engineering Indian Institute of Technology, Madras Lecture - 04 Tutorial 1, Part 1 Ubuntu Hi everyone, welcome to the first
More informationThe following content is provided under a Creative Commons license. Your support
MITOCW Lecture 10 The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high-quality educational resources for free. To make a
More informationCompiler Design Prof. Y. N. Srikant Department of Computer Science and Automation Indian Institute of Science, Bangalore
Compiler Design Prof. Y. N. Srikant Department of Computer Science and Automation Indian Institute of Science, Bangalore Module No. # 10 Lecture No. # 16 Machine-Independent Optimizations Welcome to the
More informationBasic Reliable Transport Protocols
Basic Reliable Transport Protocols Do not be alarmed by the length of this guide. There are a lot of pictures. You ve seen in lecture that most of the networks we re dealing with are best-effort : they
More informationA CHILD S GUIDE TO DIRECT DATALOGGING WITH EXCEL. (All brickbats and bouquets gladly received - on the Arduino forum)
A CHILD S GUIDE TO DIRECT DATALOGGING WITH EXCEL version 5 (All brickbats and bouquets gladly received - on the Arduino forum) This is an aide memoire for the PLX-DAQ macro for Excel. Parallax do not address
More informationSucuri Webinar Q&A HOW TO IDENTIFY AND FIX A HACKED WORDPRESS WEBSITE. Ben Martin - Remediation Team Lead
Sucuri Webinar Q&A HOW TO IDENTIFY AND FIX A HACKED WORDPRESS WEBSITE. Ben Martin - Remediation Team Lead 1 Question #1: What is the benefit to spammers for using someone elses UA code and is there a way
More informationExploring UNIX: Session 5 (optional)
Exploring UNIX: Session 5 (optional) Job Control UNIX is a multi- tasking operating system, meaning you can be running many programs simultaneously. In this session we will discuss the UNIX commands for
More informationModule 10A Lecture - 20 What is a function? Why use functions Example: power (base, n)
Programming, Data Structures and Algorithms Prof. Shankar Balachandran Department of Computer Science and Engineering Indian Institute of Technology, Madras Module 10A Lecture - 20 What is a function?
More informationWeek - 01 Lecture - 04 Downloading and installing Python
Programming, Data Structures and Algorithms in Python Prof. Madhavan Mukund Department of Computer Science and Engineering Indian Institute of Technology, Madras Week - 01 Lecture - 04 Downloading and
More informationECE 471 Embedded Systems Lecture 15
ECE 471 Embedded Systems Lecture 15 Vince Weaver http://web.eece.maine.edu/~vweaver vincent.weaver@maine.edu 10 October 2018 Midterm is Friday. Announcements 1 Homework #4 Review Still grading the code
More informationWord: Print Address Labels Using Mail Merge
Word: Print Address Labels Using Mail Merge No Typing! The Quick and Easy Way to Print Sheets of Address Labels Here at PC Knowledge for Seniors we re often asked how to print sticky address labels in
More informationWho am I? I m a python developer who has been working on OpenStack since I currently work for Aptira, who do OpenStack, SDN, and orchestration
Who am I? I m a python developer who has been working on OpenStack since 2011. I currently work for Aptira, who do OpenStack, SDN, and orchestration consulting. I m here today to help you learn from my
More information(Refer Slide Time 3:31)
Digital Circuits and Systems Prof. S. Srinivasan Department of Electrical Engineering Indian Institute of Technology Madras Lecture - 5 Logic Simplification In the last lecture we talked about logic functions
More informationThe name of our class will be Yo. Type that in where it says Class Name. Don t hit the OK button yet.
Mr G s Java Jive #2: Yo! Our First Program With this handout you ll write your first program, which we ll call Yo. Programs, Classes, and Objects, Oh My! People regularly refer to Java as a language that
More information