Lab4 Embedded Linux. Introduction

Size: px
Start display at page:

Download "Lab4 Embedded Linux. Introduction"

Transcription

1 Introduction Lab4 Embedded Linux In this lab we will run Embedded Linux on the Arcom board. This allows us to use operating system services (such as inter-task communication) and use existing software (e.g., network stack, web server, etc.) to rapidly create a powerful embedded system. Prepare yourself by reading through the lab instructions and chapter 10, 12 and 13 (page ) in the course textbook. More detailed information can be found in the Arcom Embedded Linux Technical Manual. You should also download and extract the lab4.tar.gz file from the course web page. Deliverables for all assignments Show your solutions to the lab assistant. The program sources should be well documented and you must be able to explain how the program works. Also, both students should submit the written answers and program source code by attaching them to an to the lab assistent with cc to the course leader. Please write your name(s) and address(es) in all documents/program sources that you submit. Write your name and personal number in the . Note: You do not have to demonstrate assignment 1 3 for the lab assistant. Assignment 1 Getting Started with Embedded Linux Start the Arcom board and boot into Linux mode (do not press reset during startup). When the startup-phase is completed you should see the following text in the cutecom terminal. <...text removed...> Arcom Embedded Linux v4i2b (ttys0) viper login: Next, login with user root and password arcom 1. You should now have a command prompt as shown in figure 1. Try some Linux commands, e.g. ls -l /, df, ps, uname -a, and uptime. It behaves more or less as a standard Linux system (running on a PC) doesn t it? Note: Typically, an embedded system has limited system resources compared to a PC. Thus, the standard Linux utilities is often replaced with size-optimized versions (e.g., via This means that these utilities generally have fewer options than their full-featured counterpart. Assignment 2 Setup Network Communication The first step is to connect the network cable, Ethernet LED cable, and Ethernet breakout adapter as shown on page 11 in the VIPER / VIPER-Lite Entry Level Embedded Linux Development Kit, Quickstart Manual. Observe that you must separate the processor board and the I/O board to connect the network cable (requires a screwdriver). You must be very careful when re-assembling the boards since it is easy to bend (destroy) the pins connecting the two boards. Contact the lab assistant if you need help. Login as root on the Arcom board (using cutecom) and use the ifconfig command to tempo- 1 You can also login as a normal user with username arcom and password arcom. Programming Embedded Systems, Spring 2009 Lab4 Page 1 of 9

2 Figure 1: Linux command prompt. rary 2 configure the network as follows: root@viper root# ifconfig eth netmask up This command sets the IP address of the Arcom board to and the netmask to Verify that you can reach the Arcom board over the network interface by using the ping command on the PC (Press Ctrl+C to terminate the program): $ ping PING ( ) 56(84) bytes of data. 64 bytes from : icmp_seq=1 ttl=254 time=0.898 ms... The next step is to make the network configuration permanent by modifying the /etc/network/interfaces configuration file on the Arcom board. Copy the lab4/network/interfaces file (from lab4.tar.gz) to the Arcom board with the following commands: $ cd lab4/network $ scp interfaces root@ :/etc/network/interfaces Answer yes to continue when scp 3 prints a warning that the authenticity of host The configuration will be lost when you restart the Arcom board. 3 scp (Secure Copy) is a program to copy files between network-connected computers. It is a part of the OpenSSH ( connectivity toolset. Programming Embedded Systems, Spring 2009 Lab4 Page 2 of 9

3 can t be established. Enter arcom when prompted for the password. Finally, verify that everything works by restarting the board and open a new SSH 4 connection once Linux start-up phase has completed. That is, wait for the login prompt in cutecom and open a SSH connection by writing the following command in a terminal window (on the PC): $ ssh root@ Optional: Setup SSH Public Key Authentication It soon becomes a tedious task to write the password every time you want to access the Arcom board. One approach to avoid this is to setup SSH public key authentication. Start by generating private and public keys with the following commands on your PC: $ mkdir $HOME/.ssh # Not needed if it already exists $ chmod 700 $HOME/.ssh $ ssh-keygen -f $HOME/.ssh/arcom -t rsa Generating public/private rsa key pair. Enter passphrase (empty for no passphrase): Enter same passphrase again: Press Enter when prompted for passphrase. NB: You should only use these keys with the Arcom board since we don t protect them with a password 5. Next, copy the public key to the root account on the Arcom board with the following command: $ scp $HOME/.ssh/arcom.pub root@ :/root Login to the Arcom board (using ssh root@ ) and use the following commands to setup the server: root@viper root# mkdir $HOME/.ssh # Not needed if it already exists root@viper root# chmod 700 $HOME/.ssh root@viper root# cat arcom.pub >> $HOME/.ssh/authorized_keys root@viper root# chmod 600 $HOME/.ssh/authorized_keys root@viper root# rm arcom.pub Next, verify that everything works by logging out (from the Arcom board) and re-connect to the Arcom board using ssh -i $HOME/.ssh/arcom root@ This time you should get a command shell directly (without having to write the password). Finally, create the file $HOME/.ssh/config (on your PC) with the following contents: IdentityFile ~/.ssh/arcom to avoid having to specify the identity file every time you connect. Now, it should be sufficient to write ssh root@ to connect to the Arcom board. Assignment 3 Your First Embedded Linux Program Start by creating a simple test program (e.g., hello_world.c) as shown below. here. Listing 1: hello world.c 4 SSH (Secure Shell) allows you to log in to a remote computer. 5 It is better to use passwords and let the ssh-agent manage the keys, but we use the quick-and-dirty approach Programming Embedded Systems, Spring 2009 Lab4 Page 3 of 9

4 #include <stdio. h> int main (void) { p r intf ( Hello, World! \n ) ; return ( 0 ); } To build this program, you must use a cross compiler that is configured to generate binaries for the ARM Linux target (arm-linux-gcc). This cross compiler is installed in /opt/arcom directory on the computers in the lab room 6. Thus, you should add the following lines to your $HOME/.bashrc file: Listing 2:.bashrc snippet export PATH=$PATH:/ opt/arcom/bin export MANPATH=$MANPATH:/ opt/ arcom/man Start a new terminal window and verify the settings with the following command: $ arm-linux-gcc -v Reading specs from... Next, compile (and link) the program using the arm-linux-gcc program: $ arm-linux-gcc -g -Wall -o hello_world hello_world.c Use scp (secure copy) to download the program to the Arcom board using the following command: $ scp hello_world root@ :/tmp Password: arcom Next, open a ssh connection to the Arcom board and execute the program using the following commands: $ ssh root@ # <-- executed on the PC Password: arcom root@viper root# cd /tmp # <-- executed on the Arcom board root@viper tmp#./hello_world # <-- executed on the Arcom board Finally, let s try out the arm-linux-insight debugger. Use the existing ssh connection to start gdbserver with the following command: gdbserver host:1000 hello_world where host:1000 means that we are listening for a TCP connection on port 1000 and hello_world is the program that we want to debug. Start arm-linux-insight on the PC and load the hello_world program via File->Open. Next, open File->Target Settings and specify the following parameters: Target: Remote/TCP Hostname: Port: 1000 Deselect "Download Program" under "More Options" 6 See Appendix A for information on how to install this compiler on your own computer. Programming Embedded Systems, Spring 2009 Lab4 Page 4 of 9

5 Now it only remains to setup the breakpoints and hit the Run button. Assignment 4a Blinking LED in Linux The operating system (usually) controls all hardware resources so we are not allowed to modify the GPIO registers directly as we did in lab 1 3. Instead, we will use the libdevmem 7 library available in Arcom Embedded Linux. The API for libdevmem is described in the /opt/arcom/arm-linux/include/libdevmem.h file. Look at the lab4/led/led.c file (available in lab4.tar.gz) for an example on how to use the libdevmem library. When compiling this example, you must tell the linker to look for object files to include in the libdevmem library by adding -ldevmem to the compilation command, that is: $ arm-linux-gcc -Wall -g -o led led.c -ldevmem NB: The course textbook uses the mmap system call instead of the libdevmem. You can use either mmap or libdevmem in these assignments, but we recommend libdevmem since it is easier to use. Your assignment is to port the light switch assignment from lab1 to Linux. That is, button SW0 SW2 should turn on/off the corresponding LED and button SW3 should change the state of all LEDs. Assignment 4b Blinking LED Using POSIX Threads One important feature provided by an operating system is multitasking. This enables several tasks to share the processor under the control of an operating system. Tasks 8 often make the design and implementation of embedded software easier by enabling us to divide a large program into smaller pieces. We will use the POSIX thread library to manage the tasks in this assignment. See lab4/pthread/pthread_example.c for an example on how to create and use threads. When compiling this example, you must add the libthread library to the compilation command, that is: $ arm-linux-gcc -Wall -o pthread_example pthread_example.c -lpthread Your assignment is to create a multitasking (multithreaded) application that toggles the three LEDs at different speeds. You should assign one LED per task so you will get three tasks in total. Optional: How would you implement this assignment in a single program? Discuss advantages and drawbacks of using multiple tasks. Optional: What are the advantages and drawbacks of using POSIX threads compared to normal processes? Assignment 4c Blinking LED Using Communicating Tasks In this assignment 9 you should create a light switch using two communicating tasks. The first task (producertask) should monitor the buttons (SW0 SW3), and once a button is pressed, 7 See Arcom Embedded Linux Technical Manual, page for more information 8 Sometimes called threads 9 This is an extended version of the textbook example in chapter 12. Programming Embedded Systems, Spring 2009 Lab4 Page 5 of 9

6 the producer sends a message to the second task (consumertask). The consumer task receives the message and turns on/off the LEDs according to the specification in assignment 4a. Assignment 5 Controlling LEDs Using CGI Scripts In this assignment you should use the web server and CGI 10 scripts on the Arcom board to turn on/off the LEDs. First, you must configure the web server 11 on the Arcom board. Copy the lab4/thttpd/thttpd.conf file to the Arcom board with the following commands: $ cd lab4/thhtpd $ scp thttpd.conf root@ :/etc/thttpd.conf You should also create the cgi-bin directory on the Arcom board (if it does not exist) by opening a SSH connection to the board and write the following command: root@viper root# mkdir /var/www/cgi-bin Next, restart the web-server by writing the following command: root@viper root# /etc/init.d/thttpd restart Open a web browser on the PC (e.g., Firefox) and write in the URL (address) bar. You should now see the web page shown in figure 2. Figure 2: Default web page on the Arcom board. Note: The html file for this web page is stored at /var/www/index.html on the Arcom board. The next step is to create an example web page that calls a CGI application. Look at lab4/cgi/hello.html and lab4/cgi/hello.c for an example on how to create and use CGI 10 CGI Common Gateway Interface, is a protocol for interfacing external application software with a web server. 11 The Arcom board comes with the thttpd web server. Programming Embedded Systems, Spring 2009 Lab4 Page 6 of 9

7 scripts. Compile the hello.c file (the source code for our CGI application) with the following command: $ arm-linux-gcc -Wall -o hello hello.c Upload hello.html and hello to the web server with the following commands: $ scp hello root@ :/var/www/cgi-bin $ scp hello.html root@ :/var/www Verify that the CGI application works by opening /hello.html in a web browser and press the Run button. If everything works you should see the text string Hello, World! in your web-browser. Your assignment is to create an application that allows you to turn on/off the LEDs using a web-browser. There are no special requirements on the design of the web interface, but you must be able to turn on/off the individual LEDs on the board from the web page. Assignment 6 Serial Driver in Linux In this assignment you will extend the POSIX serial driver from lab 2 to include both reading and writing capabilities. Furthermore, you should create an API (Application Programming Interface) so that applications can utilize this driver to communicate over the serial port. You are free to design the API, but it must include capabilities to initiate, read, and write to the serial port. NB: You should connect a VT100 terminal emulator to the middle connector (out of the five available connectors) on the serial port to test your driver. Then use/dev/ttys1 to communicate over this port. Assignment 7 Mini-Project You should either implement the Code Lock assignment or propose a mini-project yourself. Code Lock Your assignment is to design and implement a code lock system for a device (e.g., a door). The code lock system consists of three main parts: 1. A graphical user interface on the VT100 terminal emulator where the user enters login name and password to open the device. The device should either lock down automatically when some time has elapsed or be locked explicitly by the user. 2. The current status of the device should be indicated using the LEDs on the VIPER I/O board (e.g., green=open, red=locked). 3. A web interface (using CGI scripts) where the system administrator can see the current status of the lock (open/locked) and the number of failed login attempts. The application should be divided into three tasks where the first task manages the user interface, the second task turns on/off the LEDs, and the third task handles user authentication. The third task should also communicate with the other tasks and create a log file with current lock status and number of failed login attempts. The application should store a list of valid users and the corresponding passwords in a text file on the Arcom board (you do not have to encrypt 12 the passwords). Optional: Add functionality 12 You can use the crypt function to encrypt the passwords if you like. Programming Embedded Systems, Spring 2009 Lab4 Page 7 of 9

8 to add and remove users via the web interface. The CGI script should read the log file produced by the application and present the information on a web page. Custom Mini-Project NB: You must discuss your project ideas with the lab assistant before you start to work on the design and implementation. General project requirements: The application should have a web interface where you can display results from and/or setup some parameters to the application. You should use the VT100 terminal emulator as a user interface (both input and output). You can use the LEDs, buttons, and buzzer on the VIPER I/O board if you like. The application should be divided into (at least) two communicating tasks, where one manages the user interface and the other performs some processing. Programming Embedded Systems, Spring 2009 Lab4 Page 8 of 9

9 Appendix A: Software Installation Notes This appendix shows how to install the Arcom Embedded Linux (AEL) cross compiler on your own computer (the software is already installed in the lab rooms). You can find more information in the Programming Embedded Systems book, appendix E. You can install the AEL cross compiler either from the CD provided in the development kit or by extracting the arcom-tools.tar.bz2 file from the course web-page. NB: You cannot use cygwin in this lab this cross compiler only works in a Linux environment! Install from CD Insert the CD labeled Development Kit CD into the CD-ROM drive and execute the install script by: $ su # (or sudo sh) to start a root shell # perl /cdrom/install If you want to use the arm-linux-insight debugger, you must install it separately by executing the build_arm-linux-insight.sh script available on the course web-page. Install from arcom-tools.tar.bz2 Download the arcom-tools.tar.bz2 from the course web-page and use the following commands to extract the toolchain: $ su # (or sudo sh) to start a root shell # cd /opt # tar xvjf arcom-tools.tar.bz2 Note: This archive contains the arm-linux-insight debugger. Programming Embedded Systems, Spring 2009 Lab4 Page 9 of 9

1. Conventions in this tutorial Introduction Check and change configuration settings as needed Start Digi ESP...

1. Conventions in this tutorial Introduction Check and change configuration settings as needed Start Digi ESP... This tutorial introduces the power and features of Digi ESP for Embedded Linux as a development environment. It shows how to create a simple Linux application, transfer it to a target development board,

More information

Pengwyn Documentation

Pengwyn Documentation Pengwyn Documentation Release 1.0 Silica October 03, 2016 Contents 1 Introduction 3 1.1 Platforms................................................. 3 1.2 Hardware requirements.........................................

More information

Assignment 1: Build Environment

Assignment 1: Build Environment Read the entire assignment before beginning! Submit deliverables to CourSys: https://courses.cs.sfu.ca/ Late penalty is 10% per calendar day (each 0 to 24 hour period past due, max 2 days). This assignment

More information

LTC Data Converter Board For The Arrow SoCKit Linux Application User s Guide

LTC Data Converter Board For The Arrow SoCKit Linux Application User s Guide LTC Data Converter Board For The Arrow SoCKit Linux Application User s Guide Revision 7.0 21 Aug 2013 1 of 32 Table of Contents Introduction... 4 Board Connections... 4 Board Setup... 4 Installing Linux...

More information

Labs instructions for Enabling BeagleBone with TI SDK 5.x

Labs instructions for Enabling BeagleBone with TI SDK 5.x Labs instructions for Enabling BeagleBone with TI SDK 5.x 5V power supply µsd ethernet cable ethernet cable USB cable Throughout this document there will be commands spelled out to execute. Some are to

More information

Oregon State University School of Electrical Engineering and Computer Science. CS 261 Recitation 1. Spring 2011

Oregon State University School of Electrical Engineering and Computer Science. CS 261 Recitation 1. Spring 2011 Oregon State University School of Electrical Engineering and Computer Science CS 261 Recitation 1 Spring 2011 Outline Using Secure Shell Clients GCC Some Examples Intro to C * * Windows File transfer client:

More information

ELE409 SPRING2018 LAB0

ELE409 SPRING2018 LAB0 ELE409 SPRING2018 LAB0 Getting familiar with the LXDE system Objectives: Pre-Lab: 1. Burn the linux system onto a micro-sd card 2. Get familiar with basic linux commands 3. Be able to communicate with

More information

MVAPICH MPI and Open MPI

MVAPICH MPI and Open MPI CHAPTER 6 The following sections appear in this chapter: Introduction, page 6-1 Initial Setup, page 6-2 Configure SSH, page 6-2 Edit Environment Variables, page 6-5 Perform MPI Bandwidth Test, page 6-8

More information

Linux Systems Administration Getting Started with Linux

Linux Systems Administration Getting Started with Linux Linux Systems Administration Getting Started with Linux Network Startup Resource Center www.nsrc.org These materials are licensed under the Creative Commons Attribution-NonCommercial 4.0 International

More information

Exercise 1: Basic Tools

Exercise 1: Basic Tools Exercise 1: Basic Tools This exercise is created so everybody can learn the basic tools we will use during this course. It is really more like a tutorial than an exercise and, you are not required to submit

More information

Access Server: User's and Developer's Guide <<< Previous Next >>>

Access Server: User's and Developer's Guide <<< Previous Next >>> 1 of 14 12/9/2008 10:18 AM Access Server: User's and Developer's Guide > Chapter 2. Getting Started with Access Server Access Server can be controlled in three ways: by using the WWW

More information

Unix/Linux Operating System. Introduction to Computational Statistics STAT 598G, Fall 2011

Unix/Linux Operating System. Introduction to Computational Statistics STAT 598G, Fall 2011 Unix/Linux Operating System Introduction to Computational Statistics STAT 598G, Fall 2011 Sergey Kirshner Department of Statistics, Purdue University September 7, 2011 Sergey Kirshner (Purdue University)

More information

Lab 1: Accessing the Linux Operating System Spring 2009

Lab 1: Accessing the Linux Operating System Spring 2009 CIS 90 Linux Lab Exercise Lab 1: Accessing the Linux Operating System Spring 2009 Lab 1: Accessing the Linux Operating System This lab takes a look at UNIX through an online experience on an Ubuntu Linux

More information

Parallel Programming Pre-Assignment. Setting up the Software Environment

Parallel Programming Pre-Assignment. Setting up the Software Environment Parallel Programming Pre-Assignment Setting up the Software Environment Authors: B. Wilkinson and C. Ferner. Modification date: Aug 21, 2014 (Minor correction Aug 27, 2014.) Software The purpose of this

More information

First Steps. DNP/SK18 Embedded Linux Starter Kit

First Steps. DNP/SK18 Embedded Linux Starter Kit DNP/SK18 Embedded Linux Starter Kit First Steps SSV Embedded Systems Heisterbergallee 72 D-30453 Hannover Phone: +49 (0)511/40 000-0 Fax: +49 (0)511/40 000-40 E-mail: sales@ist1.de Manual Revision: 1.0

More information

Unix. Examples: OS X and Ubuntu

Unix. Examples: OS X and Ubuntu The Command Line A terminal is at the end of an electric wire, a shell is the home of a turtle, tty is a strange abbreviation, and a console is a kind of cabinet. - Some person on SO Learning Resources

More information

LECTURE 7. Readings: - SSH: The Definitive Guide; D.J. Barret et al.; O Reilly Lecture outline: - SSH. Marco Spaziani Brunella, Manuel Campo

LECTURE 7. Readings: - SSH: The Definitive Guide; D.J. Barret et al.; O Reilly Lecture outline: - SSH. Marco Spaziani Brunella, Manuel Campo LECTURE 7 Readings: - SSH: The Definitive Guide; D.J. Barret et al.; O Reilly Lecture outline: - SSH Remote Managing In real life, physical access to network nodes is not always an option. Often, we need

More information

GNU/Linux 101. Casey McLaughlin. Research Computing Center Spring Workshop Series 2018

GNU/Linux 101. Casey McLaughlin. Research Computing Center Spring Workshop Series 2018 GNU/Linux 101 Casey McLaughlin Research Computing Center Spring Workshop Series 2018 rccworkshop IC;3df4mu bash-2.1~# man workshop Linux101 RCC Workshop L101 OBJECTIVES - Operating system concepts - Linux

More information

LAN Setup Reflection. Ask yourself some questions: o Does your VM have the correct IP? o Are you able to ping some locations, internal and external?

LAN Setup Reflection. Ask yourself some questions: o Does your VM have the correct IP? o Are you able to ping some locations, internal and external? LAN Setup Reflection Ask yourself some questions: o Does your VM have the correct IP? o Are you able to ping some locations, internal and external? o Are you able to log into other VMs in the classroom?

More information

Systems Programming/ C and UNIX

Systems Programming/ C and UNIX Systems Programming/ C and UNIX Alice E. Fischer Lecture 6: Processes October 9, 2017 Alice E. FischerLecture 6: Processes Lecture 5: Processes... 1/26 October 9, 2017 1 / 26 Outline 1 Processes 2 Process

More information

Download, Install and Setup the Linux Development Workload Create a New Linux Project Configure a Linux Project Configure a Linux CMake Project

Download, Install and Setup the Linux Development Workload Create a New Linux Project Configure a Linux Project Configure a Linux CMake Project Table of Contents Download, Install and Setup the Linux Development Workload Create a New Linux Project Configure a Linux Project Configure a Linux CMake Project Connect to Your Remote Linux Computer Deploy,

More information

Z-Stack Linux Gateway Quick Start Guide Version 1.0

Z-Stack Linux Gateway Quick Start Guide Version 1.0 Z-Stack Linux Gateway Quick Start Guide Version 1.0 Texas Instruments, Inc. San Diego, California USA Copyright 2014 Texas Instruments, Inc. All rights reserved. Table of Contents 1. INSTALL THE SDK PACKAGE...

More information

IoT with Intel Galileo Gerardo Carmona. makerobots.tk

IoT with Intel Galileo Gerardo Carmona. makerobots.tk IoT with Intel Galileo Gerardo Carmona Outline What is Intel Galileo? Hello world! In Arduino Arduino and Linux Linux via SSH Playing around in Linux Programming flexibility How GPIOs works Challenge 1:

More information

CENG393 Computer Networks Labwork 1

CENG393 Computer Networks Labwork 1 CENG393 Computer Networks Labwork 1 Linux is the common name given to a large family of operating systems. All Linux-based operating systems are essentially a large set of computer software that are bound

More information

Bitnami Re:dash for Huawei Enterprise Cloud

Bitnami Re:dash for Huawei Enterprise Cloud Bitnami Re:dash for Huawei Enterprise Cloud Description Re:dash is an open source data visualization and collaboration tool. It was designed to allow fast and easy access to billions of records in all

More information

Development Environment Embedded Linux Primer Ch 1&2

Development Environment Embedded Linux Primer Ch 1&2 Development Environment Embedded Linux Primer Ch 1&2 Topics 1) Systems: Host and Target 2) Host setup 3) Host-Target communication CMPT 433 Slides #3 Dr. B. Fraser 18-05-05 2 18-05-05 1 Host & Target Host

More information

Welcome to getting started with Ubuntu Server. This System Administrator Manual. guide to be simple to follow, with step by step instructions

Welcome to getting started with Ubuntu Server. This System Administrator Manual. guide to be simple to follow, with step by step instructions Welcome to getting started with Ubuntu 12.04 Server. This System Administrator Manual guide to be simple to follow, with step by step instructions with screenshots INDEX 1.Installation of Ubuntu 12.04

More information

LinX Software Suite v3 Getting Started

LinX Software Suite v3 Getting Started 2018-03-19 LinX Software Suite v3 Getting Started Product revision: V3.0.2 Document revision: 1.0 www.crosscontrol.com Contents Revision history...2 1. Brief Introduction...3 2. Components and Installation...3

More information

Laboratory 1 Semester 1 11/12

Laboratory 1 Semester 1 11/12 CS2106 National University of Singapore School of Computing Laboratory 1 Semester 1 11/12 MATRICULATION NUMBER: In this lab exercise, you will get familiarize with some basic UNIX commands, editing and

More information

Spring 2017 Gabriel Kuri

Spring 2017 Gabriel Kuri Lab 2 ECE 431L Spring 2017 Gabriel Kuri This lab is made up of two parts. Part 1 will consist of familiarizing yourself with the Raspberry Pi (RPi). It includes running Unix/Linux commands to become somewhat

More information

Lab #9: Basic Linux Networking

Lab #9: Basic Linux Networking CTEC1767 Data Communications & Networking 2017 Lab #9: Basic Linux Networking Understanding Linux networks starts with understanding Linux network commands and the information they provide. We will use

More information

This guide is used as an entry point into the Petalinux tool. This demo shows the following:

This guide is used as an entry point into the Petalinux tool. This demo shows the following: Petalinux Design Entry Guide. This guide is used as an entry point into the Petalinux tool. This demo shows the following: How to create a Linux Image for a Zc702 in Petalinux and boot from the SD card

More information

Cryptography Application : SSH. Cyber Security & Network Security March, 2017 Dhaka, Bangladesh

Cryptography Application : SSH. Cyber Security & Network Security March, 2017 Dhaka, Bangladesh Cryptography Application : SSH Cyber Security & Network Security 20-22 March, 2017 Dhaka, Bangladesh Issue Date: [31-12-2015] Revision: [v.1] What is Safely Authentication I am Assured of Which Host I

More information

PROJECT INFRASTRUCTURE AND BASH INTRODUCTION MARKUS PILMAN<

PROJECT INFRASTRUCTURE AND BASH INTRODUCTION MARKUS PILMAN< PROJECT INFRASTRUCTURE AND BASH INTRODUCTION MARKUS PILMAN< MPILMAN@INF.ETHZ.CH> ORGANIZATION Tutorials on Tuesdays - Sometimes, will be announced In General: no exercise sessions (unless you get an email

More information

LAN Setup Reflection

LAN Setup Reflection LAN Setup Reflection After the LAN setup, ask yourself some questions: o Does your VM have the correct IP? o Are you able to ping some locations, internal and external? o Are you able to log into other

More information

Cryptography - SSH. Network Security Workshop May 2017 Phnom Penh, Cambodia

Cryptography - SSH. Network Security Workshop May 2017 Phnom Penh, Cambodia Cryptography - SSH Network Security Workshop 29-31 May 2017 Phnom Penh, Cambodia What is Safely Authentication I know who I am talking with Our communication is Encrypted Telnet Servers Terminal Routers

More information

Problem Set 1: Unix Commands 1

Problem Set 1: Unix Commands 1 Problem Set 1: Unix Commands 1 WARNING: IF YOU DO NOT FIND THIS PROBLEM SET TRIVIAL, I WOULD NOT RECOMMEND YOU TAKE THIS OFFERING OF 300 AS YOU DO NOT POSSESS THE REQUISITE BACKGROUND TO PASS THE COURSE.

More information

What is Secure. Authenticated I know who I am talking to. Our communication is Encrypted

What is Secure. Authenticated I know who I am talking to. Our communication is Encrypted Crypto App - SSH 1 What is Secure Authenticated I know who I am talking to Our communication is Encrypted Telnet clear text Servers Terminal clear text Routers SSH encrypted channel encrypted text Servers

More information

Bitnami Piwik for Huawei Enterprise Cloud

Bitnami Piwik for Huawei Enterprise Cloud Bitnami Piwik for Huawei Enterprise Cloud Description Piwik is a real time web analytics software program. It provides detailed reports on website visitors: the search engines and keywords they used, the

More information

Cryptography - SSH. Network Security Workshop. 3-5 October 2017 Port Moresby, Papua New Guinea

Cryptography - SSH. Network Security Workshop. 3-5 October 2017 Port Moresby, Papua New Guinea Cryptography - SSH Network Security Workshop 3-5 October 2017 Port Moresby, Papua New Guinea 1 What is Secure Authentication I know who I am talking to Our communication is Encrypted Telnet Servers Terminal

More information

CS 642 Homework #4. Due Date: 11:59 p.m. on Tuesday, May 1, Warning!

CS 642 Homework #4. Due Date: 11:59 p.m. on Tuesday, May 1, Warning! CS 642 Homework #4 Due Date: 11:59 p.m. on Tuesday, May 1, 2007 Warning! In this assignment, you will construct and launch attacks against a vulnerable computer on the CS network. The network administrators

More information

CS197U: A Hands on Introduction to Unix

CS197U: A Hands on Introduction to Unix CS197U: A Hands on Introduction to Unix Lecture 3: UNIX Operating System Organization Tian Guo CICS, Umass Amherst 1 Reminders Assignment 2 is due THURSDAY 09/24 at 3:45 pm Directions are on the website

More information

Linux Kung Fu. Stephen James UBNetDef, Spring 2017

Linux Kung Fu. Stephen James UBNetDef, Spring 2017 Linux Kung Fu Stephen James UBNetDef, Spring 2017 Introduction What is Linux? What is the difference between a client and a server? What is Linux? Linux generally refers to a group of Unix-like free and

More information

MB/ Starter Kit: First Steps

MB/ Starter Kit: First Steps MB/1520-100 Starter Kit: First Steps The Application Board MB/1520-100 Starter Kit contains everything you need to get started to build your safe embedded communication environment via Ethernet technology.

More information

Bitnami Dolibarr for Huawei Enterprise Cloud

Bitnami Dolibarr for Huawei Enterprise Cloud Bitnami Dolibarr for Huawei Enterprise Cloud Description Dolibarr is an open source, free software package for small and medium companies, foundations or freelancers. It includes different features for

More information

Eclipse development with GNU Toolchain

Eclipse development with GNU Toolchain Eclipse development with GNU Toolchain Version 1.0 embedded development tools Acknowledgements Ronetix GmbH Waidhausenstrasse 13/5 1140 Vienna Austria Tel: +43-720-500315 +43-1962-720 500315 Fax: +43-1-

More information

Cloud Computing II. Exercises

Cloud Computing II. Exercises Cloud Computing II Exercises Exercise 1 Creating a Private Cloud Overview In this exercise, you will install and configure a private cloud using OpenStack. This will be accomplished using a singlenode

More information

CSCI 201 Lab 1 Environment Setup

CSCI 201 Lab 1 Environment Setup CSCI 201 Lab 1 Environment Setup "The journey of a thousand miles begins with one step." - Lao Tzu Introduction This lab document will go over the steps to install and set up Eclipse, which is a Java integrated

More information

Comodo Dome Data Protection Software Version 3.8

Comodo Dome Data Protection Software Version 3.8 Comodo Dome Data Protection Software Version 3.8 Installation Guide Guide Version 3.8.102417 Comodo Security Solutions 1255 Broad Street Clifton, NJ 07013 Table of Contents 1.About Dome Data Protection...

More information

EX L-8 User Guide

EX L-8 User Guide EX-9486-2L-8 User Guide Introduction: EX-9486-2L-8 are ARM9-based Linux ready industrial computer. The keyfeatures are as follow: 1. ARM920T ARM Thumb Processor with 200MIPS at 180MHz,Memory Management

More information

Linux Operating System Environment Computadors Grau en Ciència i Enginyeria de Dades Q2

Linux Operating System Environment Computadors Grau en Ciència i Enginyeria de Dades Q2 Linux Operating System Environment Computadors Grau en Ciència i Enginyeria de Dades 2017-2018 Q2 Facultat d Informàtica de Barcelona This first lab session is focused on getting experience in working

More information

FX SERIES. Programmer s Guide. Embedded SDK. MN000540A01 Rev. A

FX SERIES. Programmer s Guide. Embedded SDK. MN000540A01 Rev. A FX SERIES Embedded SDK Programmer s Guide MN000540A01 Rev. A Table of Contents About This Guide Introduction...4 Chapter Descriptions... 4 Notational Conventions...5 Related Documents and Software...5

More information

CS155: Computer Security Spring Project #1

CS155: Computer Security Spring Project #1 CS155: Computer Security Spring 2018 Project #1 Due: Part 1: Thursday, April 12-11:59pm, Parts 2 and 3: Thursday, April 19-11:59pm. The goal of this assignment is to gain hands-on experience finding vulnerabilities

More information

CS Fundamentals of Programming II Fall Very Basic UNIX

CS Fundamentals of Programming II Fall Very Basic UNIX CS 215 - Fundamentals of Programming II Fall 2012 - Very Basic UNIX This handout very briefly describes how to use Unix and how to use the Linux server and client machines in the CS (Project) Lab (KC-265)

More information

Build your own Lightweight Webserver - Hands-on I - Information Network I. Marius Georgescu. Internet Engineering Laboratory. 17 Apr

Build your own Lightweight Webserver - Hands-on I - Information Network I. Marius Georgescu. Internet Engineering Laboratory. 17 Apr Build your own Lightweight Webserver - Hands-on I - Information Network I Marius Georgescu Internet Engineering Laboratory 17 Apr. 2015 iplab Prerequisites Prerequisites Download and Install VirtualBox

More information

Saint Louis University. Intro to Linux and C. CSCI 2400/ ECE 3217: Computer Architecture. Instructors: David Ferry

Saint Louis University. Intro to Linux and C. CSCI 2400/ ECE 3217: Computer Architecture. Instructors: David Ferry Intro to Linux and C CSCI 2400/ ECE 3217: Computer Architecture Instructors: David Ferry 1 Overview Linux C Hello program in C Compiling 2 History of Linux Way back in the day: Bell Labs Unix Widely available

More information

The TinyHPC Cluster. Mukarram Ahmad. Abstract

The TinyHPC Cluster. Mukarram Ahmad. Abstract The TinyHPC Cluster Mukarram Ahmad Abstract TinyHPC is a beowulf class high performance computing cluster with a minor physical footprint yet significant computational capacity. The system is of the shared

More information

Introduction of Linux

Introduction of Linux Introduction of Linux 阳 oslab2018_class1@163.com 寅 oslab2018_class2@163.com PART I Brief Introduction Basic Conceptions & Environment Install & Configure a Virtual Machine Basic Commands PART II Shell

More information

ssh and handson Matsuzaki maz Yoshinobu 1

ssh and handson Matsuzaki maz Yoshinobu  1 ssh and handson Matsuzaki maz Yoshinobu maz@iij.ad.jp 1 Secure Shell (ssh) Replacement for unsecure tools/protocols rsh and telnet Usually listen on tcp/22 Whole communication is encrypted

More information

Docker task in HPC Pack

Docker task in HPC Pack Docker task in HPC Pack We introduced docker task in HPC Pack 2016 Update1. To use this feature, set the environment variable CCP_DOCKER_IMAGE of a task so that it could be run in a docker container on

More information

Bitnami ez Publish for Huawei Enterprise Cloud

Bitnami ez Publish for Huawei Enterprise Cloud Bitnami ez Publish for Huawei Enterprise Cloud Description ez Publish is an Enterprise Content Management platform with an easy to use Web Content Management System. It includes role-based multi-user access,

More information

Siemens PLM Software. HEEDS MDO Setting up a Windows-to- Linux Compute Resource.

Siemens PLM Software. HEEDS MDO Setting up a Windows-to- Linux Compute Resource. Siemens PLM Software HEEDS MDO 2018.04 Setting up a Windows-to- Linux Compute Resource www.redcedartech.com. Contents Introduction 1 On Remote Machine B 2 Installing the SSH Server 2 Configuring the SSH

More information

Introduction to Linux

Introduction to Linux Introduction to Linux Prof. Jin-Soo Kim( jinsookim@skku.edu) TA - Dong-Yun Lee (dylee@csl.skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu What is Linux? A Unix-like operating

More information

No More Passwords (with SSH)

No More Passwords (with SSH) No More Passwords (with SSH) Ted Dustman March 30, 2009 Contents 1 Introduction 1 1.1 Local or Remote?................................. 1 1.2 SSH Command Set................................ 1 2 Authentication

More information

Bitnami OSQA for Huawei Enterprise Cloud

Bitnami OSQA for Huawei Enterprise Cloud Bitnami OSQA for Huawei Enterprise Cloud Description OSQA is a question and answer system that helps manage and grow online communities similar to Stack Overflow. First steps with the Bitnami OSQA Stack

More information

GIGABYTE. Software Reference Guide for MP30 (APM) Platform R01. Document Version:

GIGABYTE. Software Reference Guide for MP30 (APM) Platform R01. Document Version: GIGABYTE Software Reference Guide for MP30 (APM) Platform R01 Document Version: R01 1 CONTENTS BASICS SECTION... 3 1.1 Equipment and tools list... 3 1.2 How to make Ubuntu OS image to SD card... 5 1.3

More information

Lab 6: OS Security for the Internet of Things

Lab 6: OS Security for the Internet of Things Department of Computer Science: Cyber Security Practice Lab 6: OS Security for the Internet of Things Introduction The Internet of Things (IoT) is an emerging technology that will affect our daily life.

More information

EAN-Network Configuration

EAN-Network Configuration EAN-Network Configuration PN: EAN-Network-Configuration 1/25/2018 SightLine Applications, Inc. Contact: Web: sightlineapplications.com Sales: sales@sightlineapplications.com Support: support@sightlineapplications.com

More information

Bitnami Tiny Tiny RSS for Huawei Enterprise Cloud

Bitnami Tiny Tiny RSS for Huawei Enterprise Cloud Bitnami Tiny Tiny RSS for Huawei Enterprise Cloud Description Tiny Tiny RSS is an open source web-based news feed (RSS/Atom) reader and aggregator, designed to allow you to read news from any location,

More information

HOW TO SECURELY CONFIGURE A LINUX HOST TO RUN CONTAINERS

HOW TO SECURELY CONFIGURE A LINUX HOST TO RUN CONTAINERS HOW TO SECURELY CONFIGURE A LINUX HOST TO RUN CONTAINERS How To Securely Configure a Linux Host to Run Containers To run containers securely, one must go through a multitude of steps to ensure that a)

More information

Embedded Linux Systems. Bin Li Assistant Professor Dept. of Electrical, Computer and Biomedical Engineering University of Rhode Island

Embedded Linux Systems. Bin Li Assistant Professor Dept. of Electrical, Computer and Biomedical Engineering University of Rhode Island Embedded Linux Systems Bin Li Assistant Professor Dept. of Electrical, Computer and Biomedical Engineering University of Rhode Island Generic Embedded Systems Structure User Sensors ADC microcontroller

More information

The Balabit s Privileged Session Management 5 F5 Azure Reference Guide

The Balabit s Privileged Session Management 5 F5 Azure Reference Guide The Balabit s Privileged Session Management 5 F5 Azure Reference Guide March 12, 2018 Abstract Administrator Guide for Balabit s Privileged Session Management (PSM) Copyright 1996-2018 Balabit, a One Identity

More information

Blackfin cross development with GNU Toolchain and Eclipse

Blackfin cross development with GNU Toolchain and Eclipse Blackfin cross development with GNU Toolchain and Eclipse Version 1.0 embedded development tools Acknowledgements Ronetix GmbH Waidhausenstrasse 13/5 1140 Vienna Austria Tel: +43-720-500315 +43-1962-720

More information

Contents. Note: pay attention to where you are. Note: Plaintext version. Note: pay attention to where you are... 1 Note: Plaintext version...

Contents. Note: pay attention to where you are. Note: Plaintext version. Note: pay attention to where you are... 1 Note: Plaintext version... Contents Note: pay attention to where you are........................................... 1 Note: Plaintext version................................................... 1 Hello World of the Bash shell 2 Accessing

More information

Commands are in black

Commands are in black Starting From the Shell Prompt (Terminal) Commands are in black / +--------+---------+-------+---------+---------+------ +------ +------ +------ +------ +------ +-- Bin boot dev etc home media sbin bin

More information

Lab 14 - Introduction to the PABLO Payload Autonomy Computer

Lab 14 - Introduction to the PABLO Payload Autonomy Computer Lab 14 - Introduction to the PABLO Payload Autonomy Computer 2.680 Unmanned Marine Vehicle Autonomy, Sensing and Communications Spring, 2018 Michael Benjamin, mikerb@mit.edu Paul Robinette, paulrobi@mit.edu

More information

Linux Kung Fu. Ross Ventresca UBNetDef, Fall 2017

Linux Kung Fu. Ross Ventresca UBNetDef, Fall 2017 Linux Kung Fu Ross Ventresca UBNetDef, Fall 2017 GOTO: https://apps.ubnetdef.org/ What is Linux? Linux generally refers to a group of Unix-like free and open source operating system distributions built

More information

OPENSTACK CLOUD RUNNING IN A VIRTUAL MACHINE. In Preferences, add 3 Host-only Ethernet Adapters with the following IP Addresses:

OPENSTACK CLOUD RUNNING IN A VIRTUAL MACHINE. In Preferences, add 3 Host-only Ethernet Adapters with the following IP Addresses: OPENSTACK CLOUD RUNNING IN A VIRTUAL MACHINE VirtualBox Install VirtualBox In Preferences, add 3 Host-only Ethernet Adapters with the following IP Addresses: 192.168.1.2/24 192.168.2.2/24 192.168.3.2/24

More information

Appliance Guide. Version 1.0

Appliance Guide. Version 1.0 Appliance Guide Version 1.0 Contents Contents 1 Revision history 2 Getting Started 3 Getting to Know the R7-3000/5000/5000x 5 Getting to Know the R7-1000 6 Setting Up the Appliance 7 Logging in to the

More information

Programming Project 1: Introduction to the BLITZ Tools

Programming Project 1: Introduction to the BLITZ Tools Programming Project 1: Introduction to the BLITZ Tools Due Date: 2nd October 2017 before 11:30 AM. Duration: One Week Overview and Goal In this course you will be creating an operating system kernel. You

More information

System Manager Unit (SMU) Hardware Reference

System Manager Unit (SMU) Hardware Reference System Manager Unit (SMU) Hardware Reference MK-92HNAS065-02 Notices and Disclaimer Copyright 2015 Hitachi Data Systems Corporation. All rights reserved. The performance data contained herein was obtained

More information

CENG 334 Computer Networks. Laboratory I Linux Tutorial

CENG 334 Computer Networks. Laboratory I Linux Tutorial CENG 334 Computer Networks Laboratory I Linux Tutorial Contents 1. Logging In and Starting Session 2. Using Commands 1. Basic Commands 2. Working With Files and Directories 3. Permission Bits 3. Introduction

More information

CS 460 Linux Tutorial

CS 460 Linux Tutorial CS 460 Linux Tutorial http://ryanstutorials.net/linuxtutorial/cheatsheet.php # Change directory to your home directory. # Remember, ~ means your home directory cd ~ # Check to see your current working

More information

Secure SHell Explained!

Secure SHell Explained! Open Gurus How To Secure SHell Explained! Here re some insights into SSH (Secure Shell), an essential tool for accessing remote machines. S SH is used to access or log in to a remote machine on the network,

More information

Itron Riva Dev Software Development Getting Started Guide

Itron Riva Dev Software Development Getting Started Guide Itron Riva Dev Software Development Getting Started Guide Table of Contents Introduction... 2 Busybox Command-line [Edge and Mini]... 2 BASH Scripts [Edge and Mini]... 3 C Programs [Edge and Mini]... 5

More information

Setting up a Chaincoin Masternode

Setting up a Chaincoin Masternode Setting up a Chaincoin Masternode Introduction So you want to set up your own Chaincoin Masternode? You ve come to the right place! These instructions are correct as of April, 2017, and relate to version

More information

EE516: Embedded Software Project 1. Setting Up Environment for Projects

EE516: Embedded Software Project 1. Setting Up Environment for Projects EE516: Embedded Software Project 1. Setting Up Environment for Projects By Dong Jae Shin 2015. 09. 01. Contents Introduction to Projects of EE516 Tasks Setting Up Environment Virtual Machine Environment

More information

SETTING UP SSH FOR YOUR PARALLELLA: A TUTORIAL FOR STUDENTS

SETTING UP SSH FOR YOUR PARALLELLA: A TUTORIAL FOR STUDENTS SETTING UP SSH FOR YOUR PARALLELLA: A TUTORIAL FOR STUDENTS Written by Dr. Suzanne J. Matthews, CDT Zachary Ramirez, and Mr. James Beck, USMA ABOUT THIS TUTORIAL: This tutorial teaches you to access your

More information

SSH. What is Safely 6/19/ June 2018 PacNOG 22, Honiara, Solomon Islands Supported by:

SSH. What is Safely 6/19/ June 2018 PacNOG 22, Honiara, Solomon Islands Supported by: SSH 25-29 June 2018 PacNOG 22, Honiara, Solomon Islands Supported by: Issue Date: Revision: 1 What is Safely Authentication I am Assured of Which Host I am Talking With Authentication - The Host Knows

More information

Gyrfalcon 2.0 User's Guide

Gyrfalcon 2.0 User's Guide User's Guide November 26, 2013 Classified By: 2245665 Reason: 1.4(c) Declassify On: 20381126 Derived From: COL S-06 //20381126 November 2013 (U) Table of Changes Date Change Description Authority 11/26/13

More information

These instructions describe the system requirements and process for installing and initial configuration of jbase on Linux operating systems.

These instructions describe the system requirements and process for installing and initial configuration of jbase on Linux operating systems. DOCUMENT SCOPE These instructions describe the system requirements and process for installing and initial configuration of jbase 5.5.1 on Linux operating systems. ABOUT THE JBASE DATABASE MANAGEMENT SYSTEM

More information

Matrix 500 Quick Installation Guide

Matrix 500 Quick Installation Guide Overview Matrix 500 features four serial ports, 10/100 Mbps Ethernet, USB port and SD socket for flash disk expansion. The preinstall Linux OS and GNU tool chain make Matrix 500 ready for your application

More information

Application Note: Demo programs for PremierWave EN and PremierWave XN

Application Note: Demo programs for PremierWave EN and PremierWave XN Application Note: Demo programs for PremierWave EN and PremierWave XN Lantronix, Inc. 167 Technology Drive Irvine, CA 92618 Tel: +1 (949) 453-3990 Revision A1 September 2012 Overview The Lantronix PremierWave

More information

Bitnami ProcessMaker Community Edition for Huawei Enterprise Cloud

Bitnami ProcessMaker Community Edition for Huawei Enterprise Cloud Bitnami ProcessMaker Community Edition for Huawei Enterprise Cloud Description ProcessMaker is an easy-to-use, open source workflow automation and Business Process Management platform, designed so Business

More information

DNP/2110 Linux Starter Kit: First Steps

DNP/2110 Linux Starter Kit: First Steps DNP/2110 Linux Starter Kit: First Steps The DIL/NetPC DNP/2110 starter kit contains everything you need to get started with your Intel PXA255 Xscale-based embedded networking application. The starter kit

More information

Hands-on Exercise Hadoop

Hands-on Exercise Hadoop Department of Economics and Business Administration Chair of Business Information Systems I Prof. Dr. Barbara Dinter Big Data Management Hands-on Exercise Hadoop Building and Testing a Hadoop Cluster by

More information

Create Test Environment

Create Test Environment Create Test Environment Describes how to set up the Trafodion test environment used by developers and testers Prerequisites Python Passwordless ssh If you already have an existing set of ssh keys If you

More information

StampA5D3x/PortuxA5/PanelA5. Quickstart Guide

StampA5D3x/PortuxA5/PanelA5. Quickstart Guide StampA5D3x/PortuxA5/PanelA5 Quickstart Guide StampA5D3x/PortuxA5/PanelA5 StampA5D3x/PortuxA5/PanelA5: Quickstart Guide Copyright 2015 taskit GmbH All rights to this documentation and to the product(s)

More information

Installing and Upgrading Cisco Network Registrar Virtual Appliance

Installing and Upgrading Cisco Network Registrar Virtual Appliance CHAPTER 3 Installing and Upgrading Cisco Network Registrar Virtual Appliance The Cisco Network Registrar virtual appliance includes all the functionality available in a version of Cisco Network Registrar

More information

Lab 6: OS Security for the Internet of Things

Lab 6: OS Security for the Internet of Things Department of Computer Science: Cyber Security Practice Lab 6: OS Security for the Internet of Things Introduction The Internet of Things (IoT) is an emerging technology that will affect our daily life.

More information