SlideShare ist ein Scribd-Unternehmen logo
1 von 40
Downloaden Sie, um offline zu lesen
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Towards Embedded Systems
Motivational Role of Free Software
Mojtaba Barzegari
mbarzegary@msn.com
Software Freedom Day
Sharif University of Technology
29th September 2016
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 1 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Outline
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 2 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Free Software: a Prison Break
• Free Software: Four Essential Freedoms
• A bit about History
• GNU/Linux
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 3 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Free Software: Four Essential Freedoms
• A program is considered free when its license offers to all its
users the following four freedoms
• Freedom to run the software for any purpose
• Freedom to study the software and to change it
• Freedom to redistribute copies
• Freedom to distribute copies of modified versions
• These freedoms are granted for both commercial and
non-commercial use
• They imply the availability of source code, software can be
modified and distributed to customers
• Good match for embedded systems!
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 4 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
A bit about History
• 1983, Richard Stallman, GNU project and the free software
concept. Beginning of the development of gcc, gdb, glibc and
other important tools
• 1991, Linus Torvalds, Linux kernel project, a Unix-like
operating system kernel. Together with GNU software and
many other open-source components: a completely free
operating system, GNU/Linux
• 1995, Linux is more and more popular on server systems
• 2000, Linux is more and more popular on embedded systems
• 2008, Linux is more and more popular on mobile devices
• 2010, Linux is more and more popular on phones
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 5 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
GNU/Linux
Richard Stallman
What you guys are referring to as Linux, is in fact, GNU/Linux, or
as I’ve recently taken to calling it, GNU plus Linux. Linux is not an
operating system unto itself, but rather another free component of
a fully functioning GNU system made useful by the GNU corelibs,
shell utilities and vital system components comprising a full OS as
defined by POSIX.
0101101110
0101110101
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 6 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Play Your Notes: Embedded Systems
• What is an Embedded System?
• What makes Embedded Systems different?
• Embedded Systems Complexity
• To Be or Not to Be, That is the Question
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 7 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
What is an Embedded System?
An embedded system is a computer system with a dedicated
function within a larger mechanical or electrical system, often with
real-time computing constraints. It is embedded as part of a
complete device often including hardware and mechanical parts.
Embedded systems control many devices in common use today
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 8 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
What makes Embedded Systems different?
• Real-time operation
• Size
• Cost
• Time
• Reliability
• Safety
• Energy
• Security
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 9 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Embedded Systems Complexity
Moore’s Law (Second edition)
The observation made in 1975 by Gordon Moore, co-founder of
Intel, that the number of transistors per square inch on integrated
circuits had doubled every double year since the integrated circuit
was invented.
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 10 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
To Be or Not to Be, That is the Question
So, why does your TV run Linux? At frst glance, the function of a
TV is simple: it has to display a stream of video on a screen. Why
is a complex Unix-like operating system like Linux necessary?
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 11 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Digital Electronics and Operating Systems
• Electronics: Analog and Digital
• Enter the Sandman: Microcontroller
• Productivity Nightmares: Primary Solutions
• Open Source OSes
• Linux and Free Software
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 12 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Electronics: Analog and Digital
Analog Digital
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 13 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Enter the Sandman: Microcontroller
• Gate + Clock ⇒ Microprocessor
• Microprocessor + Peripherals ⇒ Microcontroller
• Microcontroller + CoProcessors ⇒ Embedded Processor
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 14 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Productivity Nightmares: Primary Solutions
Serious Challenges:
• Managing Peripherals
• Moore’s Law
• Programming APIs
• Hardware Dependency
Recommended Solutions:
• Open Hardware
• Arduino/Genuino
• Open Source Hardware Programming Platforms
• Mbed
• Operating System
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 15 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Open Source OSes
• FreeRTOS
• RIOT
• Contiki
• TinyOS
• OpenWSN
• Zephyr
• GNU/Linux
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 16 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Linux and Free Software
Advantages of Linux and Free Software for embedded systems:
• Re-using components
• Low cost
• Full control
• Quality
• Easy testing of new features
• Community support
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 17 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Re-using components
• The key advantage of Linux and open-source in embedded
systems is the ability to re-use components
• The open-source ecosystem already provides many
components for standard features, from hardware support to
network protocols, going through multimedia, graphic,
cryptographic libraries, etc.
• As soon as a hardware device, or a protocol, or a feature is
wide-spread enough, high chance of having open-source
components that support it.
• Allows to quickly design and develop complicated products,
based on existing components.
• No-one should re-develop yet another operating system kernel,
TCP/IP stack, USB stack or another graphical toolkit library.
• Allows to focus on the added value of your product.
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 18 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Low cost
• Free software can be duplicated on as many devices as you
want, free of charge.
• If your embedded system uses only free software, you can
reduce the cost of software licenses to zero. Even the
development tools are free, unless you choose a commercial
embedded Linux edition.
• Allows to have a higher budget for the hardware or to increase
the companys skills and knowledge
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 19 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Full control
• With open-source, you have the source code for all
components in your system
• Allows unlimited modifications, changes, tuning,
debugging, optimization, for an unlimited period of time
• Without lock-in or dependency from a third-party vendor
• To be true, non open-source components must be avoided
when the system is designed and developed
• Allows to have full control over the software part of your
system
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 20 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Quality
• Many open-source components are widely used, on millions
of systems
• Usually higher quality than what an in-house development
can produce, or even proprietary vendors
• Of course, not all open-source components are of good
quality, but most of the widely-used ones are.
• Allows to design your system with high-quality
components at the foundations
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 21 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Easy testing of new features
• Open-source being freely available, it is easy to get a piece
of software and evaluate it
• Allows to easily study several options while making a choice
• Much easier than purchasing and demonstration procedures
needed with most proprietary products
• Allows to easily explore new possibilities and solutions
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 22 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Community support
• Open-source software components are developed by
communities of developers and users
• This community can provide a high-quality support: you can
directly contact the main developers of the component you
are using. The likelyhood of getting an answer doesn’t depend
what company you work for.
• Often better than traditional support, but one needs to
understand how the community works to properly use the
community support possibilities
• Allows to speed up the resolution of problems when
developing your system
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 23 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Linux Disadvantages!!!
• Linux certainly is a robust and developer-friendly OS
• Linux will have many uses in embedded devices, particularly
ones that provide graphically rich user interfaces.
• Linux has a disadvantage when compared to other embedded
operating systems:
• Memory footprint
• It simply will not run on 8 or 16-bit MCUs
• Real-time operations problem
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 24 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Real-Time OS: Dream or Reality??
Library
Hardware
Application
Linux Kernel
C Library
Read/WriteRequest
Response
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 25 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Real-Time OS: Dream or Reality??
Typical Problems:
• Controlling Servo Motors
• Generating High Frequency Signals
• Generating PWM and Duty Cycles
• Sampling a Signal (e.g. Audio Signal)
• Controlling a Sensitive Robot
• Developing Flight Controllers
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 26 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Real-Time OS: Dream or Reality??
Suggested Solutions:
1 Using High-Speed Interfaces
• PCI
• Ethernet
• USB
• RS232
2 Developing System Drivers
3 Designing Auxiliary Hardware and Co-Processor
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 27 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Internet of Things: Domination of Free Software
• What is Internet of Things (IoT)?
• Things Connected Through Internet
• IoT Applications
• Top Free and Open Source IoT Projects
• Rise of Linux: IoT-ready Hardwares
• Beyond the IoT: The Computation Thunderbolt
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 28 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
What is Internet of Things (IoT)?
What is IoT?
[Wikipedia]: The network of physical objects or things embedded
with electronics, software, sensors, and connectivity to enable
objects to exchange data with the manufacturer, operator and/or
other connected devices.
What is IoT?
[WhatIs]: A scenario in which objects, animals or people are
provided with unique identifiers and the ability to transfer data
over a network without requiring human-to-human or
human-to-computer interaction.
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 29 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Things Connected Through Internet
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 30 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
IoT Applications
• Smart home
• Wearables
• Smart City
• Smart grids
• Industrial Internet
• Connected Car
• Connected Health
• Smart Retail
• Smart Supply Chain
• Smart Farming
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 31 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Top Free and Open Source IoT Projects
• AllSeen Alliance (Interoperability framework)
• DeviceHive (Big Data analytics)
• DSA (Distributed Services Architecture)
• Eclipse IoT (Java-based rules-based routing engine)
• Kaa (scalable end-to-end IoT framework )
• Macchina.io (Web-enabled, modular and extensible JavaScript
and C++ runtime)
• Open Connectivity Foundation (IoTivity)
• OpenIoT (Java-based connectivity framework)
• PlatformIO (Python-based suite for remote data access)
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 32 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Rise of Linux: IoT-ready Hardwares
• Yocto Project!!!
• Raspberry Pi
• Intel Edison
• Intel Joule
• BeagleBone Black
• Qualcomm DragonBoard
• MinnowBoard MAX
• Orange Pi
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 33 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
IoT and Linux
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 34 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Raspberry Pi
• SoC: Broadcom BCM2837
• CPU: 4 ARM Cortex-A53,
1.2GHz
• GPU: Broadcom
VideoCore IV
• RAM: 1GB LPDDR2 (900
MHz)
• Networking: Ethernet,
2.4GHz 802.11n wireless
• Bluetooth: Bluetooth 4.1
Low Energy
• Storage: microSD
• GPIO: 40-pin header
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 35 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Intel Edison
• CPU: Dual-core Intel Atom
@500 MHz
• RAM: 1 GB LPDDR3
• Storage: 4 GB eMMC + micro
SD card connector
• Connectivity: Dual band Wi-Fi
and Bluetooth 4.0
• USB: 1x micro USB connector
• I/Os:
• 2x UART
• 2x I2C
• 1x SPI with 2 chip
selects
• 1x I2S
• 12x GPIO including 4
capable of PWM output
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 36 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Intel Joule
• CPU: Intel Atom T5700 64-bit quad-core @1.7GHz/2.4GHz
• RAM: 4GB LPDDR4 RAM
• GPU: Intel HD Graphics with 4K video capture and display
• Storage: 16GB eMMC memory
• Connectivity: 802.11ac Wi-Fi with MIMO and Bluetooth 4.1
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 37 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Beyond the IoT: The Computation Thunderbolt
These devices can be utilized in standalone computations:
• Speech Recognition
• Machine Learning
• Image Processing
• Grid Computing
• Video Encoding/Decoding
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 38 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Conclusion
Why Reinvent The Wheel When You Don’t Have To???
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 39 / 40
Free Software: a Prison Break
Play Your Notes: Embedded Systems
Digital Electronics and Operating Systems
Real-Time OS: Dream or Reality??
Internet of Things: Domination of Free Software
Tehran Software Freedom Day
Thanks for Your Attention
Question & Answer
Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 40 / 40

Weitere ähnliche Inhalte

Ähnlich wie حرکت شتابدار به سوی دنیای Embedded System و نقش نرم‌افزارهای آزاد بر آن

Week 6 cyberpolitics
Week 6 cyberpoliticsWeek 6 cyberpolitics
Week 6 cyberpolitics
oiwan
 
LTR: Open Source Public Workstations
LTR: Open Source Public WorkstationsLTR: Open Source Public Workstations
LTR: Open Source Public Workstations
koegeljm
 
LTR: Open Source Public Workstations
LTR: Open Source Public Workstations LTR: Open Source Public Workstations
LTR: Open Source Public Workstations
koegeljm
 
LTR: Open Source Public Workstations
LTR: Open Source Public Workstations LTR: Open Source Public Workstations
LTR: Open Source Public Workstations
koegeljm
 
LTR: Open Source Public Workstations
LTR: Open Source Public WorkstationsLTR: Open Source Public Workstations
LTR: Open Source Public Workstations
koegeljm
 

Ähnlich wie حرکت شتابدار به سوی دنیای Embedded System و نقش نرم‌افزارهای آزاد بر آن (20)

Linux presentation
Linux presentationLinux presentation
Linux presentation
 
Free Software Movement and Open Source Communities
Free Software Movement and Open Source CommunitiesFree Software Movement and Open Source Communities
Free Software Movement and Open Source Communities
 
Building IoT devices with ARM mbed - RISE Manchester
Building IoT devices with ARM mbed - RISE ManchesterBuilding IoT devices with ARM mbed - RISE Manchester
Building IoT devices with ARM mbed - RISE Manchester
 
Week 6 cyberpolitics
Week 6 cyberpoliticsWeek 6 cyberpolitics
Week 6 cyberpolitics
 
Linux a free and open source operating system
Linux a free and open source operating systemLinux a free and open source operating system
Linux a free and open source operating system
 
Linux a free and open source operating system
Linux a free and open source operating systemLinux a free and open source operating system
Linux a free and open source operating system
 
OpenSource
OpenSourceOpenSource
OpenSource
 
Be Free Be Linux
Be Free Be LinuxBe Free Be Linux
Be Free Be Linux
 
Why Linux is better
Why Linux is betterWhy Linux is better
Why Linux is better
 
Computer
ComputerComputer
Computer
 
From the Eclipse Foundation to the Symbian Foundation
From the Eclipse Foundation to the Symbian FoundationFrom the Eclipse Foundation to the Symbian Foundation
From the Eclipse Foundation to the Symbian Foundation
 
LTR: Open Source Public Workstations
LTR: Open Source Public WorkstationsLTR: Open Source Public Workstations
LTR: Open Source Public Workstations
 
LTR: Open Source Public Workstations
LTR: Open Source Public Workstations LTR: Open Source Public Workstations
LTR: Open Source Public Workstations
 
LTR: Open Source Public Workstations
LTR: Open Source Public Workstations LTR: Open Source Public Workstations
LTR: Open Source Public Workstations
 
Ltr Open Source Public Workstations Presentat
Ltr Open Source Public Workstations PresentatLtr Open Source Public Workstations Presentat
Ltr Open Source Public Workstations Presentat
 
LTR: Open Source Public Workstations
LTR: Open Source Public WorkstationsLTR: Open Source Public Workstations
LTR: Open Source Public Workstations
 
What is LoRaWaN
What is LoRaWaNWhat is LoRaWaN
What is LoRaWaN
 
What is LoRaWAN_Tom Zamir_IoT Expert
What is LoRaWAN_Tom Zamir_IoT ExpertWhat is LoRaWAN_Tom Zamir_IoT Expert
What is LoRaWAN_Tom Zamir_IoT Expert
 
linux.ppt
linux.pptlinux.ppt
linux.ppt
 
Linux vs windows
Linux vs windowsLinux vs windows
Linux vs windows
 

Mehr von جشنوارهٔ روز آزادی نرم‌افزار تهران

چرا اکثر ابررایانه‌ها از گنو/لینوکس استفاده می‌کنند؟
چرا اکثر ابررایانه‌ها از گنو/لینوکس استفاده می‌کنند؟چرا اکثر ابررایانه‌ها از گنو/لینوکس استفاده می‌کنند؟
چرا اکثر ابررایانه‌ها از گنو/لینوکس استفاده می‌کنند؟
جشنوارهٔ روز آزادی نرم‌افزار تهران
 
خلاقیت و دانش آزاد؛ ظهور طبقه‌ای جدید در جامعه
خلاقیت و دانش آزاد؛ ظهور طبقه‌ای جدید در جامعهخلاقیت و دانش آزاد؛ ظهور طبقه‌ای جدید در جامعه
خلاقیت و دانش آزاد؛ ظهور طبقه‌ای جدید در جامعه
جشنوارهٔ روز آزادی نرم‌افزار تهران
 
برنامهٔ آموزشی ویکی‌پدیا
برنامهٔ آموزشی ویکی‌پدیابرنامهٔ آموزشی ویکی‌پدیا
برنامهٔ آموزشی ویکی‌پدیا
جشنوارهٔ روز آزادی نرم‌افزار تهران
 
چه هنگام نرم‌افزار آزاد به دام غیرآزاد می‌افتد؟
چه هنگام نرم‌افزار آزاد به دام غیرآزاد می‌افتد؟چه هنگام نرم‌افزار آزاد به دام غیرآزاد می‌افتد؟
چه هنگام نرم‌افزار آزاد به دام غیرآزاد می‌افتد؟
جشنوارهٔ روز آزادی نرم‌افزار تهران
 
با سوزان آشنا شوید! (معرفی نرم افزار بلندر)
با سوزان آشنا شوید! (معرفی نرم افزار بلندر)با سوزان آشنا شوید! (معرفی نرم افزار بلندر)
با سوزان آشنا شوید! (معرفی نرم افزار بلندر)
جشنوارهٔ روز آزادی نرم‌افزار تهران
 
آزادی و محرمانگی در رایانش همراه
آزادی و محرمانگی در رایانش همراهآزادی و محرمانگی در رایانش همراه
آزادی و محرمانگی در رایانش همراه
جشنوارهٔ روز آزادی نرم‌افزار تهران
 
چرایی تغییر دیدگاه شرکت های انحصاری نسبت به نرم افزار آزاد
چرایی تغییر دیدگاه شرکت های انحصاری نسبت به نرم افزار آزادچرایی تغییر دیدگاه شرکت های انحصاری نسبت به نرم افزار آزاد
چرایی تغییر دیدگاه شرکت های انحصاری نسبت به نرم افزار آزاد
جشنوارهٔ روز آزادی نرم‌افزار تهران
 
چگونگی ارسال packet در شبکه و مروری بر Wireshark
چگونگی ارسال packet در شبکه و مروری بر Wiresharkچگونگی ارسال packet در شبکه و مروری بر Wireshark
چگونگی ارسال packet در شبکه و مروری بر Wireshark
جشنوارهٔ روز آزادی نرم‌افزار تهران
 
چگونگی ارسال packet در شبکه و مروری بر Wireshark
چگونگی ارسال packet در شبکه و مروری بر Wiresharkچگونگی ارسال packet در شبکه و مروری بر Wireshark
چگونگی ارسال packet در شبکه و مروری بر Wireshark
جشنوارهٔ روز آزادی نرم‌افزار تهران
 
آموزش کار با GIT
آموزش کار با GITآموزش کار با GIT

Mehr von جشنوارهٔ روز آزادی نرم‌افزار تهران (20)

Rights in CopyLeft
Rights in CopyLeftRights in CopyLeft
Rights in CopyLeft
 
Jekyll
JekyllJekyll
Jekyll
 
چرا اکثر ابررایانه‌ها از گنو/لینوکس استفاده می‌کنند؟
چرا اکثر ابررایانه‌ها از گنو/لینوکس استفاده می‌کنند؟چرا اکثر ابررایانه‌ها از گنو/لینوکس استفاده می‌کنند؟
چرا اکثر ابررایانه‌ها از گنو/لینوکس استفاده می‌کنند؟
 
StarCalendar
StarCalendarStarCalendar
StarCalendar
 
خلاقیت و دانش آزاد؛ ظهور طبقه‌ای جدید در جامعه
خلاقیت و دانش آزاد؛ ظهور طبقه‌ای جدید در جامعهخلاقیت و دانش آزاد؛ ظهور طبقه‌ای جدید در جامعه
خلاقیت و دانش آزاد؛ ظهور طبقه‌ای جدید در جامعه
 
برنامهٔ آموزشی ویکی‌پدیا
برنامهٔ آموزشی ویکی‌پدیابرنامهٔ آموزشی ویکی‌پدیا
برنامهٔ آموزشی ویکی‌پدیا
 
چه هنگام نرم‌افزار آزاد به دام غیرآزاد می‌افتد؟
چه هنگام نرم‌افزار آزاد به دام غیرآزاد می‌افتد؟چه هنگام نرم‌افزار آزاد به دام غیرآزاد می‌افتد؟
چه هنگام نرم‌افزار آزاد به دام غیرآزاد می‌افتد؟
 
با سوزان آشنا شوید! (معرفی نرم افزار بلندر)
با سوزان آشنا شوید! (معرفی نرم افزار بلندر)با سوزان آشنا شوید! (معرفی نرم افزار بلندر)
با سوزان آشنا شوید! (معرفی نرم افزار بلندر)
 
آزادی و محرمانگی در رایانش همراه
آزادی و محرمانگی در رایانش همراهآزادی و محرمانگی در رایانش همراه
آزادی و محرمانگی در رایانش همراه
 
سیاست‌های کمتر شناخته‌شده ویکی‌پدیا
سیاست‌های کمتر شناخته‌شده ویکی‌پدیاسیاست‌های کمتر شناخته‌شده ویکی‌پدیا
سیاست‌های کمتر شناخته‌شده ویکی‌پدیا
 
معرفی بنیاد ویکی‌مدیا و پروژه‌هایش (به جز ویکی‌پدیا)
معرفی بنیاد ویکی‌مدیا و پروژه‌هایش (به جز ویکی‌پدیا)معرفی بنیاد ویکی‌مدیا و پروژه‌هایش (به جز ویکی‌پدیا)
معرفی بنیاد ویکی‌مدیا و پروژه‌هایش (به جز ویکی‌پدیا)
 
چرایی تغییر دیدگاه شرکت های انحصاری نسبت به نرم افزار آزاد
چرایی تغییر دیدگاه شرکت های انحصاری نسبت به نرم افزار آزادچرایی تغییر دیدگاه شرکت های انحصاری نسبت به نرم افزار آزاد
چرایی تغییر دیدگاه شرکت های انحصاری نسبت به نرم افزار آزاد
 
معرفی و ساخت یک فریم‌ورک شخصی به کمک لاراول
معرفی و ساخت یک فریم‌ورک شخصی به کمک لاراولمعرفی و ساخت یک فریم‌ورک شخصی به کمک لاراول
معرفی و ساخت یک فریم‌ورک شخصی به کمک لاراول
 
چگونگی ارسال packet در شبکه و مروری بر Wireshark
چگونگی ارسال packet در شبکه و مروری بر Wiresharkچگونگی ارسال packet در شبکه و مروری بر Wireshark
چگونگی ارسال packet در شبکه و مروری بر Wireshark
 
چگونگی ارسال packet در شبکه و مروری بر Wireshark
چگونگی ارسال packet در شبکه و مروری بر Wiresharkچگونگی ارسال packet در شبکه و مروری بر Wireshark
چگونگی ارسال packet در شبکه و مروری بر Wireshark
 
کار با اوپن‌استریت‌مپ (OSM) از مبتدی تا پیشرفته
کار با اوپن‌استریت‌مپ (OSM) از مبتدی تا پیشرفتهکار با اوپن‌استریت‌مپ (OSM) از مبتدی تا پیشرفته
کار با اوپن‌استریت‌مپ (OSM) از مبتدی تا پیشرفته
 
متاپست (MetaPost)
متاپست (MetaPost)متاپست (MetaPost)
متاپست (MetaPost)
 
داده‌کاوی و زبان برنامه‌نویسی R
داده‌کاوی و زبان برنامه‌نویسی Rداده‌کاوی و زبان برنامه‌نویسی R
داده‌کاوی و زبان برنامه‌نویسی R
 
آموزش کار با GIT
آموزش کار با GITآموزش کار با GIT
آموزش کار با GIT
 
یادگیری هک کلاه سفید و تست نفوذ به شبکه
یادگیری هک کلاه سفید و تست نفوذ به شبکهیادگیری هک کلاه سفید و تست نفوذ به شبکه
یادگیری هک کلاه سفید و تست نفوذ به شبکه
 

Kürzlich hochgeladen

怎样办理昆士兰大学毕业证(UQ毕业证书)成绩单留信认证
怎样办理昆士兰大学毕业证(UQ毕业证书)成绩单留信认证怎样办理昆士兰大学毕业证(UQ毕业证书)成绩单留信认证
怎样办理昆士兰大学毕业证(UQ毕业证书)成绩单留信认证
ehyxf
 
在线制作(UQ毕业证书)昆士兰大学毕业证成绩单原版一比一
在线制作(UQ毕业证书)昆士兰大学毕业证成绩单原版一比一在线制作(UQ毕业证书)昆士兰大学毕业证成绩单原版一比一
在线制作(UQ毕业证书)昆士兰大学毕业证成绩单原版一比一
uodye
 
Jual Obat Aborsi Samarinda ( No.1 ) 088980685493 Obat Penggugur Kandungan Cy...
Jual Obat Aborsi Samarinda (  No.1 ) 088980685493 Obat Penggugur Kandungan Cy...Jual Obat Aborsi Samarinda (  No.1 ) 088980685493 Obat Penggugur Kandungan Cy...
Jual Obat Aborsi Samarinda ( No.1 ) 088980685493 Obat Penggugur Kandungan Cy...
Obat Aborsi 088980685493 Jual Obat Aborsi
 
一比一原版(USYD毕业证书)澳洲悉尼大学毕业证如何办理
一比一原版(USYD毕业证书)澳洲悉尼大学毕业证如何办理一比一原版(USYD毕业证书)澳洲悉尼大学毕业证如何办理
一比一原版(USYD毕业证书)澳洲悉尼大学毕业证如何办理
uodye
 
一比一定(购)UNITEC理工学院毕业证(UNITEC毕业证)成绩单学位证
一比一定(购)UNITEC理工学院毕业证(UNITEC毕业证)成绩单学位证一比一定(购)UNITEC理工学院毕业证(UNITEC毕业证)成绩单学位证
一比一定(购)UNITEC理工学院毕业证(UNITEC毕业证)成绩单学位证
wpkuukw
 
怎样办理斯威本科技大学毕业证(SUT毕业证书)成绩单留信认证
怎样办理斯威本科技大学毕业证(SUT毕业证书)成绩单留信认证怎样办理斯威本科技大学毕业证(SUT毕业证书)成绩单留信认证
怎样办理斯威本科技大学毕业证(SUT毕业证书)成绩单留信认证
tufbav
 
如何办理(USYD毕业证书)悉尼大学毕业证成绩单原件一模一样
如何办理(USYD毕业证书)悉尼大学毕业证成绩单原件一模一样如何办理(USYD毕业证书)悉尼大学毕业证成绩单原件一模一样
如何办理(USYD毕业证书)悉尼大学毕业证成绩单原件一模一样
wsppdmt
 
Abortion pills in Jeddah |+966572737505 | Get Cytotec
Abortion pills in Jeddah |+966572737505 | Get CytotecAbortion pills in Jeddah |+966572737505 | Get Cytotec
Abortion pills in Jeddah |+966572737505 | Get Cytotec
Abortion pills in Riyadh +966572737505 get cytotec
 
一比一定(购)国立南方理工学院毕业证(Southern毕业证)成绩单学位证
一比一定(购)国立南方理工学院毕业证(Southern毕业证)成绩单学位证一比一定(购)国立南方理工学院毕业证(Southern毕业证)成绩单学位证
一比一定(购)国立南方理工学院毕业证(Southern毕业证)成绩单学位证
wpkuukw
 
一比一维多利亚大学毕业证(victoria毕业证)成绩单学位证如何办理
一比一维多利亚大学毕业证(victoria毕业证)成绩单学位证如何办理一比一维多利亚大学毕业证(victoria毕业证)成绩单学位证如何办理
一比一维多利亚大学毕业证(victoria毕业证)成绩单学位证如何办理
uodye
 
怎样办理伍伦贡大学毕业证(UOW毕业证书)成绩单留信认证
怎样办理伍伦贡大学毕业证(UOW毕业证书)成绩单留信认证怎样办理伍伦贡大学毕业证(UOW毕业证书)成绩单留信认证
怎样办理伍伦贡大学毕业证(UOW毕业证书)成绩单留信认证
ehyxf
 
怎样办理阿德莱德大学毕业证(Adelaide毕业证书)成绩单留信认证
怎样办理阿德莱德大学毕业证(Adelaide毕业证书)成绩单留信认证怎样办理阿德莱德大学毕业证(Adelaide毕业证书)成绩单留信认证
怎样办理阿德莱德大学毕业证(Adelaide毕业证书)成绩单留信认证
ehyxf
 

Kürzlich hochgeladen (20)

Kadi - HiFi Call Girl Service Ahmedabad Phone No 8005736733 Elite Escort Serv...
Kadi - HiFi Call Girl Service Ahmedabad Phone No 8005736733 Elite Escort Serv...Kadi - HiFi Call Girl Service Ahmedabad Phone No 8005736733 Elite Escort Serv...
Kadi - HiFi Call Girl Service Ahmedabad Phone No 8005736733 Elite Escort Serv...
 
Dubai Call Girls O525547819 Call Girls In Dubai<.> Full Dirty Services
Dubai Call Girls O525547819 Call Girls In Dubai<.> Full Dirty ServicesDubai Call Girls O525547819 Call Girls In Dubai<.> Full Dirty Services
Dubai Call Girls O525547819 Call Girls In Dubai<.> Full Dirty Services
 
怎样办理昆士兰大学毕业证(UQ毕业证书)成绩单留信认证
怎样办理昆士兰大学毕业证(UQ毕业证书)成绩单留信认证怎样办理昆士兰大学毕业证(UQ毕业证书)成绩单留信认证
怎样办理昆士兰大学毕业证(UQ毕业证书)成绩单留信认证
 
在线制作(UQ毕业证书)昆士兰大学毕业证成绩单原版一比一
在线制作(UQ毕业证书)昆士兰大学毕业证成绩单原版一比一在线制作(UQ毕业证书)昆士兰大学毕业证成绩单原版一比一
在线制作(UQ毕业证书)昆士兰大学毕业证成绩单原版一比一
 
Jual Obat Aborsi Samarinda ( No.1 ) 088980685493 Obat Penggugur Kandungan Cy...
Jual Obat Aborsi Samarinda (  No.1 ) 088980685493 Obat Penggugur Kandungan Cy...Jual Obat Aborsi Samarinda (  No.1 ) 088980685493 Obat Penggugur Kandungan Cy...
Jual Obat Aborsi Samarinda ( No.1 ) 088980685493 Obat Penggugur Kandungan Cy...
 
一比一原版(USYD毕业证书)澳洲悉尼大学毕业证如何办理
一比一原版(USYD毕业证书)澳洲悉尼大学毕业证如何办理一比一原版(USYD毕业证书)澳洲悉尼大学毕业证如何办理
一比一原版(USYD毕业证书)澳洲悉尼大学毕业证如何办理
 
一比一定(购)UNITEC理工学院毕业证(UNITEC毕业证)成绩单学位证
一比一定(购)UNITEC理工学院毕业证(UNITEC毕业证)成绩单学位证一比一定(购)UNITEC理工学院毕业证(UNITEC毕业证)成绩单学位证
一比一定(购)UNITEC理工学院毕业证(UNITEC毕业证)成绩单学位证
 
Call Girls Service Lucknow {0000000000 } ❤️VVIP BHAWNA Call Girl in Lucknow U.P
Call Girls Service Lucknow {0000000000 } ❤️VVIP BHAWNA Call Girl in Lucknow U.PCall Girls Service Lucknow {0000000000 } ❤️VVIP BHAWNA Call Girl in Lucknow U.P
Call Girls Service Lucknow {0000000000 } ❤️VVIP BHAWNA Call Girl in Lucknow U.P
 
怎样办理斯威本科技大学毕业证(SUT毕业证书)成绩单留信认证
怎样办理斯威本科技大学毕业证(SUT毕业证书)成绩单留信认证怎样办理斯威本科技大学毕业证(SUT毕业证书)成绩单留信认证
怎样办理斯威本科技大学毕业证(SUT毕业证书)成绩单留信认证
 
🌹Bhubaneswar⬅️ Vip Call Girls Bhubaneswar 📱9777949614 Book Well Trand Call Gi...
🌹Bhubaneswar⬅️ Vip Call Girls Bhubaneswar 📱9777949614 Book Well Trand Call Gi...🌹Bhubaneswar⬅️ Vip Call Girls Bhubaneswar 📱9777949614 Book Well Trand Call Gi...
🌹Bhubaneswar⬅️ Vip Call Girls Bhubaneswar 📱9777949614 Book Well Trand Call Gi...
 
如何办理(USYD毕业证书)悉尼大学毕业证成绩单原件一模一样
如何办理(USYD毕业证书)悉尼大学毕业证成绩单原件一模一样如何办理(USYD毕业证书)悉尼大学毕业证成绩单原件一模一样
如何办理(USYD毕业证书)悉尼大学毕业证成绩单原件一模一样
 
🌹Bhubaneswar🌹Odisha❤CALL GIRL 9777949614 ❤CALL GIRLS IN Bhubaneswar ESCORT SE...
🌹Bhubaneswar🌹Odisha❤CALL GIRL 9777949614 ❤CALL GIRLS IN Bhubaneswar ESCORT SE...🌹Bhubaneswar🌹Odisha❤CALL GIRL 9777949614 ❤CALL GIRLS IN Bhubaneswar ESCORT SE...
🌹Bhubaneswar🌹Odisha❤CALL GIRL 9777949614 ❤CALL GIRLS IN Bhubaneswar ESCORT SE...
 
Abortion pills in Jeddah |+966572737505 | Get Cytotec
Abortion pills in Jeddah |+966572737505 | Get CytotecAbortion pills in Jeddah |+966572737505 | Get Cytotec
Abortion pills in Jeddah |+966572737505 | Get Cytotec
 
一比一定(购)国立南方理工学院毕业证(Southern毕业证)成绩单学位证
一比一定(购)国立南方理工学院毕业证(Southern毕业证)成绩单学位证一比一定(购)国立南方理工学院毕业证(Southern毕业证)成绩单学位证
一比一定(购)国立南方理工学院毕业证(Southern毕业证)成绩单学位证
 
Guwahati Escorts Service Girl ^ 9332606886, WhatsApp Anytime Guwahati
Guwahati Escorts Service Girl ^ 9332606886, WhatsApp Anytime GuwahatiGuwahati Escorts Service Girl ^ 9332606886, WhatsApp Anytime Guwahati
Guwahati Escorts Service Girl ^ 9332606886, WhatsApp Anytime Guwahati
 
一比一维多利亚大学毕业证(victoria毕业证)成绩单学位证如何办理
一比一维多利亚大学毕业证(victoria毕业证)成绩单学位证如何办理一比一维多利亚大学毕业证(victoria毕业证)成绩单学位证如何办理
一比一维多利亚大学毕业证(victoria毕业证)成绩单学位证如何办理
 
怎样办理伍伦贡大学毕业证(UOW毕业证书)成绩单留信认证
怎样办理伍伦贡大学毕业证(UOW毕业证书)成绩单留信认证怎样办理伍伦贡大学毕业证(UOW毕业证书)成绩单留信认证
怎样办理伍伦贡大学毕业证(UOW毕业证书)成绩单留信认证
 
Call Girls Service Bharatpur 9332606886 High Profile Call Girls You Can Ge...
Call Girls Service Bharatpur   9332606886  High Profile Call Girls You Can Ge...Call Girls Service Bharatpur   9332606886  High Profile Call Girls You Can Ge...
Call Girls Service Bharatpur 9332606886 High Profile Call Girls You Can Ge...
 
Vip Call Girls Bhubaneswar 9777949614 call Now Independent Escort Service Bh...
Vip Call Girls Bhubaneswar 9777949614  call Now Independent Escort Service Bh...Vip Call Girls Bhubaneswar 9777949614  call Now Independent Escort Service Bh...
Vip Call Girls Bhubaneswar 9777949614 call Now Independent Escort Service Bh...
 
怎样办理阿德莱德大学毕业证(Adelaide毕业证书)成绩单留信认证
怎样办理阿德莱德大学毕业证(Adelaide毕业证书)成绩单留信认证怎样办理阿德莱德大学毕业证(Adelaide毕业证书)成绩单留信认证
怎样办理阿德莱德大学毕业证(Adelaide毕业证书)成绩单留信认证
 

حرکت شتابدار به سوی دنیای Embedded System و نقش نرم‌افزارهای آزاد بر آن

  • 1. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Towards Embedded Systems Motivational Role of Free Software Mojtaba Barzegari mbarzegary@msn.com Software Freedom Day Sharif University of Technology 29th September 2016 Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 1 / 40
  • 2. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Outline Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 2 / 40
  • 3. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Free Software: a Prison Break • Free Software: Four Essential Freedoms • A bit about History • GNU/Linux Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 3 / 40
  • 4. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Free Software: Four Essential Freedoms • A program is considered free when its license offers to all its users the following four freedoms • Freedom to run the software for any purpose • Freedom to study the software and to change it • Freedom to redistribute copies • Freedom to distribute copies of modified versions • These freedoms are granted for both commercial and non-commercial use • They imply the availability of source code, software can be modified and distributed to customers • Good match for embedded systems! Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 4 / 40
  • 5. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day A bit about History • 1983, Richard Stallman, GNU project and the free software concept. Beginning of the development of gcc, gdb, glibc and other important tools • 1991, Linus Torvalds, Linux kernel project, a Unix-like operating system kernel. Together with GNU software and many other open-source components: a completely free operating system, GNU/Linux • 1995, Linux is more and more popular on server systems • 2000, Linux is more and more popular on embedded systems • 2008, Linux is more and more popular on mobile devices • 2010, Linux is more and more popular on phones Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 5 / 40
  • 6. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day GNU/Linux Richard Stallman What you guys are referring to as Linux, is in fact, GNU/Linux, or as I’ve recently taken to calling it, GNU plus Linux. Linux is not an operating system unto itself, but rather another free component of a fully functioning GNU system made useful by the GNU corelibs, shell utilities and vital system components comprising a full OS as defined by POSIX. 0101101110 0101110101 Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 6 / 40
  • 7. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Play Your Notes: Embedded Systems • What is an Embedded System? • What makes Embedded Systems different? • Embedded Systems Complexity • To Be or Not to Be, That is the Question Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 7 / 40
  • 8. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day What is an Embedded System? An embedded system is a computer system with a dedicated function within a larger mechanical or electrical system, often with real-time computing constraints. It is embedded as part of a complete device often including hardware and mechanical parts. Embedded systems control many devices in common use today Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 8 / 40
  • 9. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day What makes Embedded Systems different? • Real-time operation • Size • Cost • Time • Reliability • Safety • Energy • Security Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 9 / 40
  • 10. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Embedded Systems Complexity Moore’s Law (Second edition) The observation made in 1975 by Gordon Moore, co-founder of Intel, that the number of transistors per square inch on integrated circuits had doubled every double year since the integrated circuit was invented. Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 10 / 40
  • 11. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day To Be or Not to Be, That is the Question So, why does your TV run Linux? At frst glance, the function of a TV is simple: it has to display a stream of video on a screen. Why is a complex Unix-like operating system like Linux necessary? Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 11 / 40
  • 12. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Digital Electronics and Operating Systems • Electronics: Analog and Digital • Enter the Sandman: Microcontroller • Productivity Nightmares: Primary Solutions • Open Source OSes • Linux and Free Software Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 12 / 40
  • 13. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Electronics: Analog and Digital Analog Digital Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 13 / 40
  • 14. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Enter the Sandman: Microcontroller • Gate + Clock ⇒ Microprocessor • Microprocessor + Peripherals ⇒ Microcontroller • Microcontroller + CoProcessors ⇒ Embedded Processor Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 14 / 40
  • 15. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Productivity Nightmares: Primary Solutions Serious Challenges: • Managing Peripherals • Moore’s Law • Programming APIs • Hardware Dependency Recommended Solutions: • Open Hardware • Arduino/Genuino • Open Source Hardware Programming Platforms • Mbed • Operating System Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 15 / 40
  • 16. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Open Source OSes • FreeRTOS • RIOT • Contiki • TinyOS • OpenWSN • Zephyr • GNU/Linux Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 16 / 40
  • 17. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Linux and Free Software Advantages of Linux and Free Software for embedded systems: • Re-using components • Low cost • Full control • Quality • Easy testing of new features • Community support Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 17 / 40
  • 18. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Re-using components • The key advantage of Linux and open-source in embedded systems is the ability to re-use components • The open-source ecosystem already provides many components for standard features, from hardware support to network protocols, going through multimedia, graphic, cryptographic libraries, etc. • As soon as a hardware device, or a protocol, or a feature is wide-spread enough, high chance of having open-source components that support it. • Allows to quickly design and develop complicated products, based on existing components. • No-one should re-develop yet another operating system kernel, TCP/IP stack, USB stack or another graphical toolkit library. • Allows to focus on the added value of your product. Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 18 / 40
  • 19. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Low cost • Free software can be duplicated on as many devices as you want, free of charge. • If your embedded system uses only free software, you can reduce the cost of software licenses to zero. Even the development tools are free, unless you choose a commercial embedded Linux edition. • Allows to have a higher budget for the hardware or to increase the companys skills and knowledge Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 19 / 40
  • 20. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Full control • With open-source, you have the source code for all components in your system • Allows unlimited modifications, changes, tuning, debugging, optimization, for an unlimited period of time • Without lock-in or dependency from a third-party vendor • To be true, non open-source components must be avoided when the system is designed and developed • Allows to have full control over the software part of your system Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 20 / 40
  • 21. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Quality • Many open-source components are widely used, on millions of systems • Usually higher quality than what an in-house development can produce, or even proprietary vendors • Of course, not all open-source components are of good quality, but most of the widely-used ones are. • Allows to design your system with high-quality components at the foundations Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 21 / 40
  • 22. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Easy testing of new features • Open-source being freely available, it is easy to get a piece of software and evaluate it • Allows to easily study several options while making a choice • Much easier than purchasing and demonstration procedures needed with most proprietary products • Allows to easily explore new possibilities and solutions Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 22 / 40
  • 23. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Community support • Open-source software components are developed by communities of developers and users • This community can provide a high-quality support: you can directly contact the main developers of the component you are using. The likelyhood of getting an answer doesn’t depend what company you work for. • Often better than traditional support, but one needs to understand how the community works to properly use the community support possibilities • Allows to speed up the resolution of problems when developing your system Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 23 / 40
  • 24. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Linux Disadvantages!!! • Linux certainly is a robust and developer-friendly OS • Linux will have many uses in embedded devices, particularly ones that provide graphically rich user interfaces. • Linux has a disadvantage when compared to other embedded operating systems: • Memory footprint • It simply will not run on 8 or 16-bit MCUs • Real-time operations problem Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 24 / 40
  • 25. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Real-Time OS: Dream or Reality?? Library Hardware Application Linux Kernel C Library Read/WriteRequest Response Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 25 / 40
  • 26. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Real-Time OS: Dream or Reality?? Typical Problems: • Controlling Servo Motors • Generating High Frequency Signals • Generating PWM and Duty Cycles • Sampling a Signal (e.g. Audio Signal) • Controlling a Sensitive Robot • Developing Flight Controllers Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 26 / 40
  • 27. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Real-Time OS: Dream or Reality?? Suggested Solutions: 1 Using High-Speed Interfaces • PCI • Ethernet • USB • RS232 2 Developing System Drivers 3 Designing Auxiliary Hardware and Co-Processor Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 27 / 40
  • 28. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Internet of Things: Domination of Free Software • What is Internet of Things (IoT)? • Things Connected Through Internet • IoT Applications • Top Free and Open Source IoT Projects • Rise of Linux: IoT-ready Hardwares • Beyond the IoT: The Computation Thunderbolt Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 28 / 40
  • 29. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day What is Internet of Things (IoT)? What is IoT? [Wikipedia]: The network of physical objects or things embedded with electronics, software, sensors, and connectivity to enable objects to exchange data with the manufacturer, operator and/or other connected devices. What is IoT? [WhatIs]: A scenario in which objects, animals or people are provided with unique identifiers and the ability to transfer data over a network without requiring human-to-human or human-to-computer interaction. Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 29 / 40
  • 30. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Things Connected Through Internet Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 30 / 40
  • 31. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day IoT Applications • Smart home • Wearables • Smart City • Smart grids • Industrial Internet • Connected Car • Connected Health • Smart Retail • Smart Supply Chain • Smart Farming Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 31 / 40
  • 32. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Top Free and Open Source IoT Projects • AllSeen Alliance (Interoperability framework) • DeviceHive (Big Data analytics) • DSA (Distributed Services Architecture) • Eclipse IoT (Java-based rules-based routing engine) • Kaa (scalable end-to-end IoT framework ) • Macchina.io (Web-enabled, modular and extensible JavaScript and C++ runtime) • Open Connectivity Foundation (IoTivity) • OpenIoT (Java-based connectivity framework) • PlatformIO (Python-based suite for remote data access) Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 32 / 40
  • 33. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Rise of Linux: IoT-ready Hardwares • Yocto Project!!! • Raspberry Pi • Intel Edison • Intel Joule • BeagleBone Black • Qualcomm DragonBoard • MinnowBoard MAX • Orange Pi Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 33 / 40
  • 34. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day IoT and Linux Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 34 / 40
  • 35. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Raspberry Pi • SoC: Broadcom BCM2837 • CPU: 4 ARM Cortex-A53, 1.2GHz • GPU: Broadcom VideoCore IV • RAM: 1GB LPDDR2 (900 MHz) • Networking: Ethernet, 2.4GHz 802.11n wireless • Bluetooth: Bluetooth 4.1 Low Energy • Storage: microSD • GPIO: 40-pin header Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 35 / 40
  • 36. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Intel Edison • CPU: Dual-core Intel Atom @500 MHz • RAM: 1 GB LPDDR3 • Storage: 4 GB eMMC + micro SD card connector • Connectivity: Dual band Wi-Fi and Bluetooth 4.0 • USB: 1x micro USB connector • I/Os: • 2x UART • 2x I2C • 1x SPI with 2 chip selects • 1x I2S • 12x GPIO including 4 capable of PWM output Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 36 / 40
  • 37. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Intel Joule • CPU: Intel Atom T5700 64-bit quad-core @1.7GHz/2.4GHz • RAM: 4GB LPDDR4 RAM • GPU: Intel HD Graphics with 4K video capture and display • Storage: 16GB eMMC memory • Connectivity: 802.11ac Wi-Fi with MIMO and Bluetooth 4.1 Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 37 / 40
  • 38. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Beyond the IoT: The Computation Thunderbolt These devices can be utilized in standalone computations: • Speech Recognition • Machine Learning • Image Processing • Grid Computing • Video Encoding/Decoding Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 38 / 40
  • 39. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Conclusion Why Reinvent The Wheel When You Don’t Have To??? Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 39 / 40
  • 40. Free Software: a Prison Break Play Your Notes: Embedded Systems Digital Electronics and Operating Systems Real-Time OS: Dream or Reality?? Internet of Things: Domination of Free Software Tehran Software Freedom Day Thanks for Your Attention Question & Answer Mojtaba Barzegari 9/29/2016 Towards Embedded Systems 40 / 40