Embedded Hardware and Operating Systems

所在平台: Coursera

课程主页: https://www.coursera.org/learn/embedded-operating-system

课程评论:没有评论

第一个写评论        关注课程

课程简介

课程名称:嵌入式硬件与操作系统 课程概述:本课程面向希望深入了解实际编程和物联网(IoT)应用的本科生和研究生。课程将探讨网络物理系统的两个核心组成部分:硬件和操作系统。完成课程后,您将掌握硬件组件和操作系统的相关知识,并能够在资源受限设备上为物联网应用规划和使用嵌入式操作系统。此外,您还可以使用Cooja模拟工具设计和模拟无线传感器网络应用。 课程结构:课程包括4个模块,每个模块结束时都有小测验,最后有一个同行评审的编程作业。如果您没有C语言的经验,建议您先学习实用课程如:https://www.coursera.org/learn/arduino-platform。 课程的最终部分相当有趣,您可以通过Cooja模拟工具创建和模拟传感器网络应用设计。众多Contiki和Cooja的特性和示例可通过作业进行探索,并为有兴趣深入研究嵌入式操作系统在物联网应用中的应用的学生提供了可选的无线传感器网络应用作业。 授课教师:Marco Ramirez(土尔库大学)、Igor Tcarenko(土尔库大学)、Nguyen Gia Tuan(土尔库大学) 课程大纲: 1. 嵌入式硬件简介:了解嵌入式系统的基本信息、应用场景及其主要特点和挑战。 2. 嵌入式系统的处理元素:学习嵌入式处理器的构成、主要特性,及可用的处理元素平台。 3. 操作系统概述与嵌入式操作系统:讨论嵌入式操作系统的主要功能、内存管理、任务调度和中断处理,深入了解通用和嵌入式操作系统的热门内核。 4. Contiki操作系统与Cooja模拟:深入探讨Contiki系统及其内核架构、服务和库的实现、通信协议、应用代码处理及Cooja的使用。 了解完整课程大纲请访问:http://iot4health.utu.fi/

课程大纲

Name:Introduction to Embedded Hardware

Description:This week will start from the basic information about Embedded Systems. Specifically, you will learn (1) what are embedded systems and where they are applied as well as (2) the main characteristics and challenges of embedded systems. (3) You will discover how embedded systems communicate with the outer world.

Name:Processing Elements of an Embedded System

Description:This week we will go into details of what embedded systems consist of. Specifically you learn about the main blocks of any processing element of embedded systems. We will show you what (1) embedded processors consists of and its main features. You will learn what (3) reconfigurable architectures and FPGAs are, and what kind of (4) ready-made platforms you can use to start working with processing elements.

Name: Overview of operating systems and embedded operating systems

Description:In this week, we start with an overview of operating systems and embedded operating systems for IoT. Primary functionalities of embedded operating systems are discussed. We learn how operating systems work: how memory is managed, how tasks are scheduled, what interrupts are and how they are handled. After this, we deepen our learning with the popular kernels for general and embedded operating systems. Linux (monolithic) kernel, micro kernel and modular kernel are presented. In addition, several popular embedded operating systems for IoT are presented. Concretely, after attending this week, you will able to (1) explain why embedded systems often require an operating system (2) describe how an embedded operating system works such as how memory is managed, how tasks are scheduled and how interrupts are handled. (3) You will be able to differentiate between popular kernels for embedded operating systems. (4) Differentiate between popular embedded operating systems for IoT.

Name:Contiki OS and Cooja simulation

Description:In this week, we start to explore the Contiki Os in detail. First we discuss about the Contiki system and its kernel architecture. Furthermore, we explore how loadable programs are actually implemented in Contiki. Second, we go through services and libraries in Contiki to see how they are built and when they can be invoked. Third, we discuss communication in Contiki via details of uIp and Rime communication stacks in Contiki. Next, prototheads are discussed to describe how application code is processed in Contiki. Furthermore, APIs of multi-threading is discussed. Last but not least, the Cooja simulator - a simulator for wireless sensor networks based on Contiki is introduced. All steps of installing and applying Cooja for a wireless sensor network applications are presented in detailed via an example application. Concretely, after attending this week, you will able to (1) describe how Contiki system and its kernel architecture are built. (2) Distinguish Contiki services and libraries in terms of how they are built, when they are invoked and why they are used. (3) Describe how communication is implemented and supported in Contiki and what protocols Contiki can support. (4) Explore how application's code is processed in Contiki and important functions of API for multithreading in Contiki (5) use Cooja for simulating wireless sensor networks applications.

课程评论(0条)

课程详情

This course is intended for the Bachelor and Master's students, who like practical programming and making IoTs applications! In this course, we will talk about two components of a cyber-physical system, namely hardware and operating systems. After completing this course, you will have knowledge of both hardware components and operating systems. You are able to plan and use embedded operating systems in resource-constraint devices for Internet-of-Things (cyber-physical system) applications. In addition, you can use Cooja simulation for designing and simulating wireless sensor network applications. The course offers 4 modules, each with a graded quiz in the end and finally, one peer-reviewed programming assignment. In case you have no experience with C programming, please check a practical course like: https://www.coursera.org/learn/arduino-platform. The course is actually quite fun at the end when you play around with Cooja simulation for IoTs applications. So you can create and simulate your own design for sensor network applications. A lot of features and examples of Contiki and Cooja can be explored via assignments. There are some optional assignments of wireless sensor network applications for students who want to explore more about embedded OS in IoTs applications. - Marco Ramirez /University of Turku - Igor Tcarenko/ University of Turku - Nguyen Gia Tuan /University of Turku Check out our whole curriculum: http://iot4health.utu.fi/

课程标签

0人关注该课程

主题相关的课程