搜档网
当前位置:搜档网 › Tinyos操作系统简介

Tinyos操作系统简介

Tinyos操作系统简介
Tinyos操作系统简介

Tinyos操作系统简介

Tinyos简介

最近看了篇关于TinyOS简介的文章,摘录出来保存下,介绍tinyos编程入门的资料不少,但从操作系统

的角度分析tinyos是有必要的,毕竟TinyOS做为无线传感网络操作系统中最重要的一种,也是最常用的

一种,分析它的实现机制有助于以后改进针对无线传感网络的操作系统,也是嵌入式操作系统的一类。

An open-source operating system designed for wireless embedded sensor network. More specifically, it is designed to support the concurrency intensive operations required by networked sensors with minimal hardware requirements.

TinyOS Features

? No Kernel: Direct hardware manipulation.

? No Process Management: Only one process on the fly.

? No Virtual Memory: Single linear physical address space.

? No S/w Signal or Exception: Function call instead.

? No User Interface, power constrained.

? Unusually application specific H/w and S/w.

? Multiple flows, concurrency intensive bursts.

? Extremely passive vigilance (power saving).

? Tightly coupled with the application.

? Simulator: TOSSIM, PowerTOSSIM

? Written in “nesC” Language, a dialect of the …C? language.

TinyOS uses multi-hop routing instead of point-to-point connections to save

transmission power. Route discovery is done by 2-hop broadcast and topology

discovery is based on shortest path from each node to the base station.

? The paradigm for network transmissions in TinyOS is active messaging. Messages contain a handler address and on arrival this handler is called.

? TinyOS Architecture

? Component Based Architecture: enables rapid innovation and implementation while minimizing code size as required by the severe memory constraints inherent in sensor networks.

? Small footprint: fits in 178 Bytes of memory.

? Event based instead of threaded architecture.

start and stop are commands.

fired is a event invoked by Timer.

The interface specifies: Timer must implement startand stop, Application must implement fired.

o Propagates events in time it takes to copy 1.25 Bytes.

o Switches context in the time to copy 6 Bytes ofMemory.

? Radio and Clock have interrupts.

? Non-blocking/Non-preemptive Scheduling: Tasks will not preempts other tasks and run in FIFO order but only interrupts and associated events can preempt tasks.

Toavoid blocking scenarios, events and commands are expected to do only state transmissions and leave complex computations to tasks that

can be preempted if necessary. This simple concurrency model is

typically sufficient for I/O centric applications, but its difficulty with CPU-heavy applications has led to several

proposals for incorporating threads into the OS.

? TinyOS has a Single Stack: TinyOS uses a simple queue with length

7 and a two level scheduling. Therefore, all I/O operations that last longer than a few hundred

microseconds are asynchronous and have a callback. A TinyOS component can post a task, which the OS will schedule to run later.

? To support larger computations, TinyOS provides t asks, which are similar to a Deferred Procedure Call and interrupt handler bottom halves. Latest version of TinyOS has numerous improvements such as: Safe TinyOS , a compile-time option

that lets us incorporate run-time memory safety checks into oour application, TOSThreads , a threading library that runs on top of a standard TinyOS core etc.

RTOS实时操作系统(Real Time Operating System)

John Lee 20:27:07 上次讲到了 RTOS 的抢占机制对事件响应能力提高的帮助,避免了事件的丢失。 John Lee 20:27:07 上次讲到了 RTOS 的抢占机制对事件响应能力提高的帮助,避免了事件的丢失。小道(569198569) 20:27:39 老师辛苦 John Lee 20:27:45 但光依靠 RTOS 的抢占机制,并不能做到完全不丢失事件,只是从一定程度上降低了丢失事件的机率。 丶砖家(1361439207) 20:28:16 LEE 丶砖家(1361439207) 20:28:14 好复杂呀 John Lee 20:28:54 上次的这个图: John Lee 20:30:20 是没有丢失事件了,但如果我们把 E2 的第 3 个事件提前一些: John Lee 20:32:30 对于这样情况,RTOS 提供了一些带有通信功能的同步对象,可以让应用程序构造软件缓冲机制,来保持突发事件。 John Lee 20:33:19 关于具体的实现方法,要等到我们学习完了 RTOS 同步机制和各种同步对象后,才能讨论。

John Lee 20:34:24 除此之外,还有其它一些系统设计时,需要仔细考虑的问题: 中断处理时间到底多长合适? 等待设备事件产生,是否一定要用中断? 如何划分任务? 如何确定合适的调度算法? 是否需要任务优先级? 静态优先级能不能满足要求? 系统节拍的频率多少合适? 如何选则合适的同步对象? DsPower小灰灰(108430786) 20:35:56 对这就是我的问题 wei(34103820) 20:36:02 John Lee 20:36:07 这些问题,都留到我们学习完 RTOS 后,再来讨论。 小道(569198569) 20:36:23 wei(34103820) 20:36:02 遵守纪律 John Lee 20:36:39 现在讨论,很多同学没有基础,晕的。 John Lee 20:37:12 我们继续学习《嵌入式系统的实时概念》。 DsPower小灰灰(108430786) 20:38:13 支持老师 DsPower小灰灰(108430786) 20:38:14 雪狼(982332664) 20:38:55 我都晕乎了 John Lee 20:40:01 我们上次停下来的地方,是: 4.4.5 调度算法。

实时操作系统报告

实时操作系统课程实验报告 专业:通信1001 学号:3100601025 姓名:陈治州 完成时间:2013年6月11日

实验简易电饭煲的模拟 一.实验目的: 掌握在基于嵌入式实时操作系统μC/OS-II的应用中,基于多任务的模式的编程方法。锻炼综合应用多任务机制,任务间的通信机制,内存管理等的能力。 二.实验要求: 1.按“S”开机,系统进入待机状态,时间区域显示当前北京时间,默认模式“煮饭”; 2.按“C”选择模式,即在“煮饭”、“煮粥”和“煮面”模式中循环选择; 3.按“B”开始执行模式命令,“开始”状态选中,时间区域开始倒计时,倒计时完成后进入“保温”状态,同时该状态显示选中,时间区域显示保温时间; 4.按“Q”取消当前工作状态,系统进入待机状态,时间区域显示北京时间,模式为当前模式; 5.按“X”退出系统,时间区域不显示。 6.煮饭时长为30,煮粥时长为50,煮面时长为40. 三.实验设计: 1.设计思路: 以老师所给的五个程序为基础,看懂每个实验之后,对borlandc的操作有了大概的认识,重点以第五个实验Task_EX为框架,利用其中界面显示与按键扫描以及做出相应的响应,对应实现此次实验所需要的功能。 本次实验分为界面显示、按键查询与响应、切换功能、时钟显示与倒计时模块,综合在一起实验所需功能。 2.模块划分图: (1)界面显示: Main() Taskstart() Taskstartdispinit() 在TaskStartDispInit()函数中,使用PC_DispStr()函数画出界面。

(2)按键查询与响应: Main() Taskstart() 在TaskStart()函数中,用if (PC_GetKey(&key) == TRUE)判断是否有按键输入。然后根据key 的值,判断输入的按键是哪一个;在响应中用switch语句来执行对应按键的响应。 (3)切换功能: l计数“C”按 键的次数 M=l%3 Switch(m) M=0,1,2对应于煮饭,煮粥,煮面,然后使用PC_DispStr()函数在选择的选项前画上“@”指示,同时,在其余两项钱画上“”以“擦出”之前画下的“@”,注意l自增。 四.主要代码: #include "stdio.h" #include "includes.h" #include "time.h" #include "dos.h" #include "sys/types.h" #include "stdlib.h" #define TASK_STK_SIZE 512 #define N_TASKS 2 OS_STK TaskStk[N_TASKS][TASK_STK_SIZE]; OS_STK TaskStartStk[TASK_STK_SIZE]; INT8U TaskData[N_TASKS];

WINDOWS 网络操作系统的发展史

WINDOWS 网络操作系统的发展史 2009-05-21 18:16 网络操作系统的发展史 Microsoft开发的Windows是目前世界上用户最多、并且兼容性最强的操作系统。最早的Windows操作系统从1985年就推出了。改进了微软以往的命令、代码系统Microsoft Dos。Microsoft Windows是彩色界面的操作系统。支持键鼠功能。默认的平台是由任务栏和桌面图标组成的。任务栏是显示正在运行的程序、“开始”菜单、时间、快速启动栏、输入法以及右下角的托盘图标组成。而桌面图标是进入程序的途径。默认的系统图标有“我的电脑”、“我的文档”、“回收站”,另外,还会显示出系统的自带的“IE浏览器”图标。运行Windows的程序主要操作都是由鼠标和键盘控制的。鼠标的左键单击默认是是选定命令,鼠标左键双击是运行命令。鼠标右键单击是弹出菜单。WIndows系统是“有声有色”的操作系统。《连线》杂志日前发表分析文章称,在过去的23年中,Windows操作系统经历了一个从无到有,从低级到高级的发展过程。总体趋势是功能越来越强大了,用户使用起来越来越方便了,但其发展进程并非是一帆风顺的,中间也曾多次出现曲折。应用最广泛的Windows操作系统在不断地发展,其发展进程充满了不确定性。Windows的成功与处理器速度的提高和内存容量的增加可谓“休戚与共”。微软依靠大量第三方软件让用户喜欢上了Windows。 1、Windows 1.0 Windows 1.0 微软第一款图形用户界面Windows 1.0的发布时间是1985年11月,比苹果Mac晚了近两年。由于微软与苹果间存在一些法律纠纷,Windows 1.0缺乏一些关键功能,例如重叠式窗口和回收站。用现在的眼光看,它的失败并不令人感到意外。Windows 1.0只是对MS-DOS的一个扩展,它本身并不是一款操作系统,但确实提供了有限的多任务能力,并支持鼠标。Microsoft Windows 1.0操作系统是微软公司在个人电脑

操作系统介绍与安装完整版.doc

认识操作系统 系统简介 定义 :操作系统(英语:Operating System,简称OS)是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”上的最基本的系统软件,任何其他软件都必须在操作系统的支持下才能运行。操 操作系统所处位置 作系统是用户和计算机的接口,同时也是计算机硬件和其他软件的接口。 操作系统的功能:包括管理计算机系统的硬件、软件及数据资源,控制程序运行,改善人机界面,为其它应用软件提供支持等,使计算机系统所有资源最大限度地发挥作用,提供了各种形式的用户界面,使用户有一个好

的工作环境,为其它软件的开发提供必要的服务和相应的接口。 操作系统的种类:各种设备安装的操作系统可从简单到复杂,可分为智能卡操作系统、实时操作系统、传感器节点操作系统、嵌入式操作系统、个人计算机操作系统、多处理器操作系统、网络操作系统和大型机操作系统。 按应用领域划分主要有三种: 桌面操作系统、 服务器操作系统 嵌入式操作系统。 ○1桌面操作系统 桌面操作系统主要用于个人计算机上。个人计算机市场从硬件架构上来说主要分为两大阵营,PC机与Mac 机,从软件上可主要分为两大类,分别为类Unix操作系统和Windows操作系统: 1、Unix和类Unix操作系统:Mac OS X,Linux发行

版(如Debian,Ubuntu,Linux Mint,openSUSE,Fedora等); 一个流行Linux发行版——Ubuntu桌面 Mac OS X桌面 2、微软公司Windows操作系统:Windows XP,Windows Vista,Windows 7,Windows 8等。 Windows 8 Metro Windows 8桌面 ○2服务器操作系统 服务器操作系统一般指的是安装在大型计算机上的操作系统,比如Web服务器、应用服务器和数据库服务器等。服务器操作系统主要集中在三大类: 1、Unix系列:SUN Solaris,IBM-AIX,HP-UX,

四种实时操作系统特性进行分析和比较

四种实时操作系统特性进行分析和比较 https://www.sodocs.net/doc/074434648.html,2006年11月18日21:55ChinaByte 本文对四种实时操作系统(RTOS)特性进行分析和比较。它们是:Lynx实时系统公司的LynxOS、QNX软件系统有限公司的QNX以及两种具有代表性的实时Linux——新墨西哥工学院的RT-Linux和堪萨斯大学的KURT-Linux。 近年来,实时操作系统在多媒体通信、在线事务处理、生产过程控制、交通控制等各个领域得到广泛的应用,因而越来越引起人们的重视。 基本特征概述 *QNX是一个分布式、嵌入式、可规模扩展的实时操作系统。它遵循POSIX.1 (程序接口)和POSIX.2(Shell和工具)、部分遵循POSIX.1b(实时扩展)。它最早开发于1980年,到现在已相当成熟。 *LynxOS是一个分布式、嵌入式、可规模扩展的实时 操作系统,它遵循POSIX.1a、POSIX.1b和POSIX.1c标准。它最早开发于1988年。 *RT-Linux是一个嵌入式硬实时操作系统,它部分支持POSIX.1b标准。 *KURT-Linux不是为嵌入式应用设计的,不同于硬(hard)实时/软(soft)实时应用,他们提出“严格(firm)”实时应用的概念,如一些多媒体应用和ATM网络应用,KURT是为这样一些应用设计的“严格的”实时系统。 体系结构异同 实时系统的实现多为微内核体系结构,这使得核心小巧而可靠,易于ROM固化,并可模块化扩展。微内核结构系统中,OS服务模块在独立的地址空间运行,所以,不同模块的内存错误便被隔离开来。但它也有弱点,进程间通信和上下文切换的开销大大增加。相对于大型集成化内核系统来说,它必须靠更多地进行系统调用来完成相同的任务。 *QNX是一个微内核实时操作系统,其核心仅提供4种服务:进程调度、进程间通信、底层网络通信和中断处理,其进程在独立的地址空间运行。所有其它OS服务,都实现为协作的用户进程,因此QNX核心非常小巧(QNX4.x大约为12Kb)而且运行速度极快。 *LynxOS目前还不是一个微内核结构的操作系统,但它计划使用所谓的“Galaxy”技术将其从大型集成化内核改造成微内核,这一技术将在LynxOS 3.0中引入。新的28Kb微内核提供以下服务:核心启动和停止、底层内存管理、出错处理、中断处理、多任务、底层同步和互斥支持。

实时操作系统 期末报告

实时操作系统期末总结报告 一、实时操作系统的概述 实时操作系统(RTOS)是指当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统做出快速响应,并控制所有实时任务协调一致运行的操作系统。因而,提供及时响应和高可靠性是其主要特点。实时操作系统有硬实时和软实时之分,硬实时要求在规定的时间内必须完成操作,这是在操作系统设计时保证的;软实时则只要按照任务的优先级,尽可能快地完成操作即可。我们通常使用的操作系统在经过一定改变之后就可以变成实时操作系统。 1.1.实时操作系统的相关概念 (1)实时操作系统的定义 实时操作系统是保证在一定时间限制内完成特定功能的操作系统。例如人驾驶的汽车中的系统,需要一个比较稳定的实时操作系统。在“硬”实时操作系统中,如果不能在允许时间内完成使物体可达的计算,操作系统将因错误结束。在“软”实时操作系统中,比如汽车不能很快的识别人的操作指令,那么它可能造成严重的事故(如:汽车的瞬时刹车;公交车,它能准确的报站,这其实就是一个实时操作系统的具体体现;其次,车上的GPS导航仪,其实质也是一个比较精确实时操作系统的产物,如果不能实时,那么导航仪将失效,结果不能正确的指导司机驾驶的方向,同时这种实时操作系统的及时性必须达到一定的程度:ms级)。一些实时操作系统是为特定的应用

设计的,另一些是通用的。一些通用目的的操作系统称自己为实时操作系统。但某种程度上,大部分通用目的的操作系统,如微软的Windows NT或IBM的OS/390有实时系统的特征。这就是说,即使一个操作系统不是严格的实时系统,它们也能解决一部分实时应用问题。 (2)实时操作系统中的一些重要的概念 代码临界段:指处理时不可分割的代码。一旦这部分代码开始执行则不允许中断打入; 资源:任何为任务所占用的实体; 共享资源:可以被一个以上任务使用的资源; 任务:也称作一个线程,是一个简单的程序。每个任务被赋予一定的优先级,有它自己的一套CPU寄存器和自己的栈空间。典型地,每个任 务都是一个无限的循环,每个任务都处在以下五个状态下:休眠 态,就绪态,运行态,挂起态,被中断态; 任务切换:将正在运行任务的当前状态(CPU寄存器中的全部内容)保存在任务自己的栈区,然后把下一个将要运行的任务的当前状态从该任 务的栈中重新装入CPU的寄存器,并开始下一个任务的运行; 内核:负责管理各个任务,为每个任务分配CPU时间,并负责任务之间通讯。分为不可剥夺型内核和可剥夺型内核; 调度:内核的主要职责之一,决定轮到哪个任务运行。一般基于优先级调度法; (3)及时性 关于实时操作系统的及时性,我将从如下两个方面进行介绍:实时操作系统的时间限和实时操作系统的应用相关。 时间限:对一些实时性要求较高的系统,它们要求的时间限一般是毫秒级(ms),但是通常的实时操作系统,一般是秒级(s)或是在

操作系统的发展史及特点

操作系统的发展史及特点 1.CP/M系统 计算机语言百花争妍的七十年代,计算机本身正向微型化方向发展。1971年,Intel 公司成功地研制出了四位Intel 4004芯片,1973年,又研制成功八位Intel 8086芯片。微型机的诞生,已经指日可待。 七十年代中期,台式微机,工作站,超级微机,膝上机相继面世,“谁来指挥他们”,人们千呼万唤。 事实上,早在1972年,AMAA(美国微型机协会)就悄悄地为一个“指挥系统”作临产前的准备了,他们用PL/M程序设计语言为Intel 8086编写了纸带编辑程序ED。1973年,PL/M 的创始人Gary Kildall博士决定“挂帅亲征”,很快在DEC公司的主机TOPS-10上,培植成功一个管理程序和数据的“胚胎”。博士旗开得胜,感觉当然是“味道好极了!”,但Intel 公司及其它著名电脑公司却对此充耳不闻,这使“元帅”和“士兵”们很是光火,1974年,“胚胎”得以向全世界公布:版本号V1.3;大名:CP/M;全称:Control Program/Monitor (控制程序或监控程序)。 虽然CP/M V1.3 是为肩任“控制程序和数据”的“上帝”而来的,但“上帝一世”却颇受冷落,电脑业者依旧冷眼旁观。1975年,CP/M V1.4 继承“王位”,开始大造舆论,加之Kildall 博士创建了Digital Research(数字研究公司),为CP/M呐喊欢呼,CP/M陆续被各国微机厂商采用,围绕他的软件也爆炸般地得到了开发。CP/M变红发紫,神话般普及,被推崇为“标准八位机软件总线”,Kildall 博士更是声名远播。 CP/M其实就是第一个微机操作系统,享有指挥主机、内存、磁鼓、磁带、磁盘、打印机等硬设备的特权。通过控制总线上的程序和数据,操作系统有条不紊地执行着人们的指令,如同指挥一台晚会或乐队,高效率地合奏美妙的乐章。 繁荣的CP/M家族不断添丁。运行在Intel 8080芯片上的CP/M—80;运行在8088、8086芯片上的叫CP/M—86;而在Motorola(摩托罗拉)68000 上运行的CP/M叫做CP/M-68K。CP/M—80、CP/M—86、CP/M-68K等组成了庞大的CP/M家族。 单用户的CP/M—80操作系统,后来发展成多用户的MP/M—80,单用户的CP/M—86又发展成并发的CP/M—86和多用户MP/M— 86,它们成为家族的新生力量。 CP/M开创了软件的新纪元,称得上是计算机改朝换代的里程碑。 2.DOS系统 七十年代末期,CP/M后院起火,其微机操作系统霸主地位开始动摇。 1979年,IBM公司为开发16位微处理器Intel 8086,请微软公司(Microsoft)为IBM PC 设计一个磁盘操作系统,微软公司慷慨承诺,但当时手头仅有XENIX操作系统,XENIX操作系统要求处理器支持存贮管理和保护设备的功能,可PC机的CPU 8086/8088 均不具备此功能。微软公司急于满足PC机的要求,购买了由西雅图公司工程师Tim Paterson研制的、可在8088上运行的CP/M—86“无性系”——SCP—DOS操作系统的销售权,将SCP—DOS改称MS—DOS V1.0发表。为避“偷梁换柱”的嫌疑,微软公司又于1981年8月推出了支持内存为320KB 的MS-DOS 1.1版。由于蓝色巨人的推波助澜,操作系统软件市场几乎一夜之间呈现出一边倒的局面,CP/M地位岌岌乎可危。 随后,IBM 公司向微软公司购得MS-DOS使用权,将其更名为PC-DOS 1.0。MS-DOS又称PC-DOS,就是这个原因。 MS-DOS取得巨大成功的原因在于它的最初设计思想及其追求目标的正确和恰当,那就是为用户上机操作和应用软件开发提供良好的外部环境。首先使用户可以非常方便的使用几十个DOS命令,或以命令行方式直接键入或在DOS4.0以上版本下以DOS Shell菜单驱动,

计算机操作系统简单介绍

计算机操作系统简单介绍 操作系统的种类繁多,依其功能和特性分为分批处理操作系统、分时操作系统和实时操作系统等;依同时管理用户数的多少分为单用户操作系统和多用户操作系统;适合管理计算机网络环境的网络操作系统。 1)微机操作系统随着微机硬件技术的发展而发展,从简单到复杂。Microsoft 公司开发的DOS是一单用户单任务系统,而Windows操作系统则是一多户多任务系统,经过十几年的发展,已从Windows 3.1发展Windows NT、Windows 2000、Windows XP、Windows vista、Windows 7和Windows 8等等。它是当前微机中广泛使用的操作系统之一。Linux是一个源码公开的操作系统,程序员可以根据自己的兴趣和灵感对其进行改变,这让Linux吸收了无数程序员的精华,不断壮大,已被越来越多的用户所采用,是Windows操作系统强有力的竞争对手。 2)语言处理系统 人和计算机交流信息使用的语言称为计算机语言或称程序设计语言。计算机语言通常分为机器语言、汇编语言和高级语言三类。如果要在计算机上运行高级语言程序就必须配备程序语言翻译程序(下简称翻译程序)。翻译程序本身是一组程序,不同的高级语言都有相应的翻译程序。翻译的方法有两种:一种称为“解释”。早期的BASIC源程序的执行都采用这种方式。它调用机器配备的BASIC“解释程序”,在运行BASIC源程序时,逐条把BASIC的源程序语句进行解释和执行,它不保留目标程序代码,即不产生可执行文件。这种方式速度较慢,每次运行都要经过“解释”,边解释边执行。 另一种称为“编译”,它调用相应语言的编译程序,把源程序变成目标程序(以.OBJ为扩展名),然后再用连接程序,把目标程序与库文件相连接形成可执行文件。尽管编译的过程复杂一些,但它形成的可执行文件(以.exe为扩展名)可以反复执行,速度较快。运行程序时只要键入可执行程序的文件名,再按Enter键即可。 对源程序进行解释和编译任务的程序,分别叫作编译程序和解释程序。如FORTRAN、COBOL、PASCAL和C等高级语言,使用时需有相应的编译程序;BASIC、LISP等高级语言,使用时需用相应的解释程序。

操作系统的发展历程

操作系统的发展历程 操作系统有:1.DOS操作系统;2.Mac OS操作系统;3.Windows 系统;4.Unix系统;5.Linux系统;6.OS/2系统; 一、 DOS操作系统 DOS是Diskette Operating system的缩写,意思是磁盘操作系统。DOS是1981~1995年的个人电脑上使用的一种主要的操作系统。由于早期的DOS系统是由微软公司为IBM的个人(PC)电脑开发的,故而即称之为PC-DOS,又以其公司命名为MS-DOS,因此后来其他公司开发的与MS-DOS兼容的操作系统,也延用了这种称呼方式,如:DR-DOS、Novell-DOS ....,以及国人开发的汉字DOS(CC-DOS)等等。 MS-DOS发展,从早期1981年不支持硬盘分层目录的DOS1.0,到当时广泛流行的DOS3.3,再到非常成熟支持CD-ROM的DOS6.22,以及后来隐藏到Windows9X下的DOS7.X,前前后后已经经历了20年,至今仍然活跃在PC舞台上,扮演着重要的角色。 DOS是在直接内存下运行,程序设计员只能在1MB以下的存储器上操作。DOS容许使用的内存空间只有640KB(其他的348KB为ROM BIOS和其他卡所保留),在DOS下无法运行超过640KB的大程序。 DOS系统是字符式的操作系统,所有操作都通过键盘输入“命令行”来执行。微软公司推出它的Windows操作系统以后,由于

Windows操作系统的几乎所有操作都可以通过鼠标的点击来完成,不必再去记忆繁杂的命令,也省去了键盘输入“命令行”的操作。这种对用户友好的操作界面,使得Windows操作系统很快的就占据了PC 舞台上主角位置,而把DOS推倒了舞台的边缘。但是,为了一些特定的需要,Windows操作系统里保留了DOS命令形式,在需要时在系统的内存中拿出640K的内存,开辟出虚拟一个DOS运行的环境(“虚拟机”)来执行DOS命令。这种Windows操作系统里开辟的DOS运行环境,只不过是Windows操作系统里面的许多窗口中的一个窗口而已,它与Windows操作系统出现之前dos独占系统的全部资源的情况已大不相同。 “纯DOS”就是相对于这种情况而言的:不打开windows系统,只用软盘或其他媒体(如光盘、U盘等)启动机器,进入DOS系统,这时的DOS独享系统的全部资源,这时的环境状态就叫“纯DOS”状态。由于没有打开windows系统,所以与windows有关的一切软件、病毒、木马......,都不能起作用,不能控制你的任何资源,从而你可以在这种环境里,把那些你不想要的东东清理干净! 1981年,MS-DOS 1.0发行,作为IBM PC的操作系统进行捆绑发售,支持16k内存及160k的5寸软盘。在硬件昂贵,操作系统基本属于送硬件奉送的年代,谁也没能想到,微软公司竟会从这个不起眼的出处开始发迹。 1982年,支持双面磁盘。 1983年MS-DOS 2.0随IBM XT发布,扩展了命令,并开始支持5M硬

实时操作系统包括硬实时和软实时的区别

一.什么是真正的实时操作系统 做嵌入式系统开发有一段时间了,做过用于手机平台的嵌入式Linux,也接触过用于交换机、媒体网关平台的VxWorks,实际应用后回过头来看理论,才发现自己理解的肤浅,也发现CSDN 上好多同学们都对实时、嵌入式这些概念似懂非懂,毕竟如果不做类似的产品,平时接触的机会很少,即使做嵌入式产品开发,基本也是只管调用Platformteam封装好的API。所以在此总结一下这些概念,加深自己的理解,同时也给新手入门,欢迎大家拍砖,争取写个连载,本文先总结一下实时的概念,什么是真正的实时操作系统? 1. 首先说一下实时的定义及要求: 参见 Donal Gillies 在 Realtime Computing FAQ 中提出定义:实时系统指系统的计算正确性不仅取决于计算的逻辑正确性,还取决于产生结果的时间。如果未满足系统的时间约束,则认为系统失效。

一个实时操作系统面对变化的负载(从最小到最坏的情况)时必须确定性地保证满足时间要求。请注意,必须要满足确定性,而不是要求速度足够快!例如,如果使用足够强大的CPU,Windows在CPU空闲时可以提供非常短的典型中断响应,但是,当某些后台任务正在运行时,有时候响应会变得非常漫长,以至于某一个简单的读取文件的任务会长时间无响应,甚至直接挂死。这是一个基本的问题:并不是Windows不够快或效率不够高,而是因为它不能提供确定性,所以,Windows不是一个实时操作系统。 根据实际应用,可以选择采用硬实时操作系统或软实时操作系统,硬实时当然比软实时好,但是,如果你的公司正在准备开发一款商用软件,那请你注意了,业界公认比较好的VxWorks(WindRiver开发),会花光你本来就很少的银子,而软实时的操作系统,如某些实时Linux,一般是开源免费的,我们公司本来的产品就是基于VxWorks的,现在业界都在CostReduction,为了响应号召,正在调研如何把平台换成免费的嵌入式实时Linux。同学们,如何选择,自己考虑吧:-)

DSP实时操作系统简介

ENEA公司与OSE实时操作系统简介 一.公司简介 OSE RTOS主要是由瑞典ENEA公司负责开发和技术服务的,一直以来都充当着实时操作系统以及分布式和容错性应用的先锋。公司建立于1968年,由大约700名雇员专门从事实时应用的技术研发和支持工作。ENEA是现今市场上一个飞速发展的RTOS供应商,在过去三年中,该公司的税收以每年70﹪的速度递增。 该公司开发的OSE RTOS支持容错,适用于可从硬件和软件错误中恢复的应用,它的独特的消息传输方式使它能方便地支持多处理机之间的通信。它的客户深入到电信,数据,工控,航空等领域,尤其在电信、军方等方面,该公司已经有了二十多年的开发经验,ENEA 现在已经成为日趋成熟,功能强大,经营灵活的RTOS供应商,也同诸如爱立信,诺西,华为,中兴,诺基亚,波音,NASA,空客等知名公司确定了良好的关系。 二.OSE操作系统的特点 1. 高处理能力 内核中实时性严格的部分都由优化的汇编来实现,特别是使用消息传递机制,使数据处理非常快。 2. 真正适合开发复杂(包括多CPU和多DSP,已经多核DSP)的分布式系统 随着科技发展,嵌入式实时操作系统已经变得越来越复杂,经常会面临两大困难: 不间断的运行(NonStop) 多CPU的分布式系统 (Distribution over many CPUS) 传统的RTOS如果要做到这些,必然会增大消耗,增长开发周期。OSE就是应运而生的新生代的RTOS,解决了这些需求,它支持多种CPU和DSP,为开发商开发不同种处理器组成的分布式系统提供了最快捷的方式。 传统的RTOS是基于单CPU,它虽然可以改进成分布式系统,但用户需要在应用程序中做很多工作。而OSE不同于传统的RTOS,首先是因为它的结构体系有了很大改变,它以消息传递作为主要手段完成CPU/DSP间的通信,还把传统的RTOS必须在应用程序中完成的工作,做到了核心系统中。对于复杂的并行系统来说,OSE提供了一种简单的通信方式,简化了多CPU/DSP的处理。

操作系统发展史

CP/M系统 计算机语言百花争妍的七十年代,计算机本身正向微型化方向发展。1971年,Intel 公司成功地研制出了四位Intel 4004芯片,1973年,又研制成功八位Intel 8086芯片。微型机的诞生,已经指日可待。 七十年代中期,台式微机,工作站,超级微机,膝上机相继面世,“谁来指挥他们”,人们千呼万唤。 事实上,早在1972年,AMAA(美国微型机协会)就悄悄地为一个“指挥系统”作临产前的准备了,他们用PL/M程序设计语言为Intel 8086编写了纸带编辑程序ED。1973年,PL/M的创始人Gary Kildall博士决定“挂帅亲征”,很快在DEC公司的主机TOPS-10上,培植成功一个管理程序和数据的“胚胎”。博士旗开得胜,感觉当然是“味道好极了!”,但Intel 公司及其它著名电脑公司却对此充耳不闻,这使“元帅”和“士兵”们很是光火,1974年,“胚胎”得以向全世界公布:版本号V1.3;大名:CP/M;全称:Control Program/Monitor (控制程序或监控程序)。 虽然CP/M V1.3 是为肩任“控制程序和数据”的“上帝”而来的,但“上帝一世”却颇受冷落,电脑业者依旧冷眼旁观。1975年,CP/M V1.4 继承“王位”,开始大造舆论,加之Kildall 博士创建了Digital Research(数字研究公司),为CP/M呐喊欢呼,CP/M陆续被各国微机厂商采用,围绕他的软件也爆炸般地得到了开发。CP/M变红发紫,神话般普及,被推崇为“标准八位机软件总线”,Kildall 博士更是声名远播。 CP/M其实就是第一个微机操作系统,享有指挥主机、内存、磁鼓、磁带、磁盘、打印机等硬设备的特权。通过控制总线上的程序和数据,操作系统有条不紊地执行着人们的指令,如同指挥一台晚会或乐队,高效率地合奏美妙的乐章。 繁荣的CP/M家族不断添丁。运行在Intel 8080芯片上的CP/M—80;运行在8088、8086芯片上的叫CP/M—86;而在Motorola(摩托罗拉)68000 上运行的CP/M 叫做CP/M-68K。CP/M—80、CP/M—86、CP/M-68K等组成了庞大的CP/M家族。 单用户的CP/M—80操作系统,后来发展成多用户的MP/M—80,单用户的CP/M—86又发展成并发的CP/M—86和多用户MP/M— 86,它们成为家族的新生力量。 CP/M开创了软件的新纪元,称得上是计算机改朝换代的里程碑。 DOS系统 七十年代末期,CP/M后院起火,其微机操作系统霸主地位开始动摇。 1979年,IBM公司为开发16位微处理器Intel 8086,请微软公司(Microsoft)为IBM PC设计一个磁盘操作系统,微软公司慷慨承诺,但当时手头仅有XENIX 操作系统,XENIX操作系统要求处理器支持存贮管理和保护设备的功能,可PC

实时操作系统实验

实时操作系统实验报告 专业:10通信工程 学号:20100306110 姓名: 汪洁 指导老师:申屠浩

实验一任务管理实验 实验目的: 1.理解任务管理的基本原理,了解任务的各个基本状态及其变迁过程; 2.掌握μC/OS-II 中任务管理的基本方法(挂起、解挂); 3.熟练使用μC/OS-II 任务管理的基本系统调用。 实验要求与思路: 为了体现任务的各个基本状态及其变迁过程,本实验设计了T0、T1 和T3 三个任务,它们交替运行,如图所示 说明: 在系统完成初始化后,可以先创建并启动优先级最低的TaskStart,由它创 建其他3 个应用任务T0、T1 和T2,之后整个系统的运行流程如下: 1)优先级最高的T0 开始执行,之后T0 挂起自己; 2)然后系统调度选中T1 开始执行,之后T1 挂起自己; 3)接着系统调度选中T2,之后唤醒T0; 4)如此循环 实验程序: #include "includes.h" #define TASK_STK_SIZE 512 OS_STK TaskStk1[TASK_STK_SIZE]; OS_STK TaskStk2[TASK_STK_SIZE]; OS_STK TaskStk3[TASK_STK_SIZE]; OS_STK TaskStartStk[TASK_STK_SIZE]; void Task1(void *data); void Task2(void *data); void Task3(void *data); /* Function prototypes of tasks*\ void TaskStart(void *data); /* Function prototypes of Startup task */

操作系统简介

1.计算机软件 计算机软件(Computer Software,也称软件,软体)是指计算机系统中的程序及其文档,程序是计算任务的处理对象和处理规则的描述;文档是为了便于了解程序所需的阐明性资料。程序必须装入机器内部才能工作,文档一般是给人看的,不一定装入机器。 计算机软件(Computer Software)是指计算机系统中的程序及其文档。程序是计算任务的处理对象和处理规则的描述;文档是为了便于了解程序所需的阐明性资料。程序必须装入机器内部才能工作,文档一般是给人看的,不一定装入机器。 软件是用户与硬件之间的接口界面。用户主要是通过软件与计算机进行交流。软件是计算机系统设计的重要依据。为了方便用户,为了使计算机系统具有较高的总体效用,在设计计算机系统时,必须通盘考虑软件与硬件的结合,以及用户的要求和软件的要求。 软件的含义 (1)运行时,能够提供所要求功能和性能的指令或计算机程序集合。 (2)程序能够满意地处理信息的数据结构。 (3)描述程序功能需求以及程序如何操作和使用所要求的文档。 编辑本段软件与硬件的不同点 表现形式不同 硬件有形,有色,有味,看得见,摸得着,闻得到。而软件无形,无色,无味,看不见,摸不着,闻不到。软件大多存在人们的脑袋里或纸面上,它的正确与否,是好是坏,一直要到程序在机器上运行才能知道。这就给设计、生产和管理带来许多困难。 生产方式不同 软件是开发,是人的智力的高度发挥,不是传统意义上的硬件制造。尽管软件开发与硬件制造之间有许多共同点,但这两种活动是根本不同的。 要求不同 硬件产品允许有误差,而软件产品却不允许有误差。 维护不同

硬件是要用旧用坏的,在理论上,软件是不会用旧用坏的,但在实际上,软件也会变旧变坏。因为在软件的整个生存期中,一直处于改变(维护)状态。 编辑本段计算机软件的分类 总述 计算机软件总体分为系统软件和应用软件两大类: 系统软件是各类操作系统,如windows、Linux、UNIX等,还包括操作系统的补丁程序及硬件驱动程序,都是系统软件类。 应用软件可以细分的种类就更多了,如工具软件、游戏软件、管理软件等都属于应用软件类。 系统软件 系统软件是负责管理计算机系统中各种独立的硬件,使得它们可以协调工作。系统软件使得计算机使用者和其他软件将计算机当作一个整体而不需要顾及到底层每个硬件是如何工作的。 一般来讲,系统软件包括操作系统和一系列基本的工具(比如编译器,数据库管理,存储器格式化,文件系统管理,用户身份验证,驱动管理,网络连接等方面的工具)。 应用软件 应用软件是为了某种特定的用途而被开发的软件。它可以是一个特定的程序,比如一个图像浏览器。也可以是一组功能联系紧密,可以互相协作的程序的集合,比如微软的Office软件。也可以是一个由众多独立程序组成的庞大的软件系统,比如数据库管理系统。 较常见的有: 文字处理软件如WPS、Word等 信息管理软件 辅助设计软件如AutoCAD 实时控制软件 教育与娱乐软件 2.操作系统(OS) 操作系统(Operating System,简称OS)是一管理电脑硬件与软件资源的程序,同时也是计算机系统的内核与基石。操作系统是一个庞大的管理控制程序,大致包括5个方面的管理功能:进程与处理机管理、作业管理、存储管理、设备管理、

嵌入式实时操作系统ucos期末考试题复习过程

) 一、名词解释: 1、OS:操作系统 2、MCU:微控制器 3、ISR:中断服务子程序 4、FIFO:先进先出 5、TCB:Task Control Block,任务控制块 6、API:应用程序接口 7、RTOS:实时操作系统 # 8、UART:通用异步收发传输器 9、MMU:内存管理单元 10、JTAG:边界调试接口 二、填空题 1、( 优先级抢占和时间片轮转)是一种运行时间一到就剥夺进程处理器使用权的剥夺式调度。 2、实时系统的两个基本要求:( 逻辑或功能正确)、时间正确。所谓时间正确是指 (实时系统的计算必须在预定的时间内完成)。 3、临界区是指( 处理时不可分割的代码、每个进程中访问临界资源的那段程序) ` 4、UCOS调用系统延时最小时间单位( 毫秒) 5、UCOS配置文件中OS_TICKS_PER_SEC的数值定义为32,含义是(时钟频率为32 hz) 6如果某一个任务不是必须的监控任务,我们一般采用( 动态内存管理)的机制来创建该任务所需要的变量内存空间,要想能使用这种机制,必须首先将内存交给(操作系统)来统一管理 7、如果系统中某一个资源属于独占资源,n个任务都需要使用,标准的做法是使用(互斥信号量)来解决 8、在UCOS中,优先级用一个数字表示,数字越大表示任务的优先级别越(低) 9、优先级调度的( 任务就绪表)标志进程抢占处理器的权利大小。 10、(任务控制块)主要用来记录任务的堆栈指针,任务的当前状态,任务的优先级别等一些与任务管理有关的属性的表。 11、临界区是指( 保证共享资源的完整性和可靠性的代码段)。 ( 12、可重入指的是(是一段代码(如一个函数)可以被多个任务同时调用,而不必担心会破坏数据)。 13、某事件周期不确定,持续时间较短,处理容忍度较长,通常我们采取在(任务就绪表)中发现该事件,在(任务调度)中处理该事件。 14、如果系统中有2个资源,n个任务都需要使用,标准的做法是使用(互斥信号量)来解决。 15、在UCOS中,最低优先级自动赋给( 空闲任务)这个系统任务。 16、对CPU资源进行分配的两种操作系统常见调度算法为__(任务级调度_)和(中断级调度)。 17、uC/OS中,主要依靠_(任务堆栈_)来保存任务工作环境。

RedHawk Linux实时操作系统简介

RedHawk Linux 实时操作系统简介 美国并行计算机公司的Redhawk Linux 实时操作系统是iHawk 系统的核心。美国并行计算机公司的RedHawk™ Linux® 是符合标准、POSIX 兼容且源代码开放的Red Hat® Linux 操作系统的实时版本。RedHawk Linux 不仅涵盖了流行的Red Hat® Linux 发行版本,更提供了包括:高速I/O 吞吐、对外部事件快速响应的时间确定性,以及进程间通讯优化 等实时特性。对于实时仿真、数据采集和工业控制系统等复杂实时应用,RedHawk 是一个理想的实时Linux 运行环境。RedHawk Linux 采用标准的Red Hat 的用户级命令、实用工具和系统管理工具,并用改进的多线程、全程核心抢占式的低延时实时内核将Red Hat 内核替换,从而获得了实时性能。RedHawk 支持真正的对称多重处理技术,包括:负载平衡和CPU 屏蔽等,并 确保在时间关键型应用中系统的确定性和实时性能最优。譬如,在一个被屏蔽 的处理器内,中断响应时间可保证短于30 微秒。RedHawk 基于多线程、全程抢占式Linux 内核,经过了低延时改进;其对称多处理支持技术包括:负载平衡和CPU 屏蔽等,并确保在时间关键型应用中系统的确定性和实时性能。 真正的实时Linux RedHawk 是标准Linux 操作系统真正的实时变体。RedHawk 提供了单一内核编程环境,可以直接调用所有系统操作,包括:文件I/O、网 络和图形。通常,在复杂的实时应用程序它们经常需要和实时任务一起确定地 控制。只有RedHawk 的单一内核设计才能够保证这一特性。可扩展的SMP 和处理器屏蔽美国并行计算机公司的iHawk 是一个紧耦合对称多重处理实时系统,RedHawk Linux 允许单个CPU 被屏蔽,不受中断、后台进程、bottom halve 和其它Linux 任务的影响。处理器屏蔽提供了具有高确定性的执行环境,保证了对中断的响应。多线程抢占RedHawk Linux 内核允许在内核里同时执

Windows操作系统发展史

Windows操作系统发展史 1、windows1.0诞生背景 微软公司刚开始开发的时候,这个软件还不叫Windows,而是叫做:“Interface Manager(界面管理员)”;是时为1981年的9月。当时微软公司正在与IBM公司合作开发OS/2,大家认为这个才是MS-DOS的正统继任者。不过比尔盖茨不这么想,从一开始他就留了一手,因此自己的图形界面操作系统一直就是比尔盖茨的秘密武器。 当然,Windows 1.0的能力还很弱的,例如在层叠窗体的时候,太多了就比较困难了,另外也没有改变层叠的可选项。微软公司公开宣布Windows开发计划的消息是在1983年,可是直至1985年九月才正式发布了第一版的Windows 1.0,这个版本的Windows基于MS-DOS 2.0的,由于当时的硬件限制,与MS-DOS 2.0功能限制,Windows 1.0不应该拿来与之后的Windows 3.1来比较;不管怎样,这是一个非常好的开端,目标用户是IBM兼容机的高端 2、windows95诞生背景 Windows 95是一个混合的16位/32位Windows系统,其版本号为4.0,开发代号为Chicago。1995年8月24日发行。Windows 95是微软之前独立的操作系统MS-DOS和Microsoft Windows的直接后续版本。第一次抛弃了对前一代16位x86的支持,因此它要求英特尔的80386处理器或者在保护模式下运行于一个兼容的速度更快的处理器。它以对图形用户界面的重要的改进和底层工作(underlying workings)为特征。同时也是第一个特别捆绑了一个版本的DOS的视窗版本(MS-DOS 7.0)。这样,微软就可以保持由Windows 3.x创建起来的GUI市场的统治地位,同时使得没有非微软的产品可以提供对系统的底层操作服务。也就是说,Windows 95具有双重的角色。它带来了更强大的、更稳定、更实用的桌面图形用户界面,同时也结束了桌面操作系统间的竞争。在市场上,Windows 95绝对是成功的:在它发行的一两年内,它成为有史以来最成功的操作系统。 3、windows98介绍,有哪些重要版本 Windows 98全面集成了Internet标准,以Internet技术统一并简化桌面,使用户能够更快捷简易地查找及浏览存储在个人电脑及网上的信息;其次,速度更快,稳定性更佳。通过提供全新自我维护和更新功能,Windows98可以免去用户的许多系统管理工作,使用户专注于工作或游戏。 Windows 98相对于Windows 95有较大的改进。 1.安装简便:安装Windows 98时,系统会自动引导你完成安装过程,自动检测所有常用硬件,如调制解调器、CD-ROM驱动器、声卡和打印机等。 2.与现有软硬件配合得更协调:Windows 98为1900多种现有硬件设备提供内部支持,并通过了与3500多种当前流行软件兼容性的测试。内部支持包括为当前提供32位的设备驱动程序,这意味着被支持的硬件在Windows 98环境下将运行得更快,效率更高。 3.具有“即插即用”功能:当你在计算机上使用“即插即用”设备时,Windows 98会自动对它进行设置并启用该设备。 4.改进了用户界面:Windows 98中的桌面,可以帮助你把注意力集中在手头的任务上。它只将少数几个图形对象放在桌面上,显示得比以前更简洁。“开始”按钮引导你开始在计算机上做大多数日常工作。如果你希望能快速启用一个常用的程序或文档,只须将其拖到“开始”按钮上即可。它将与其它功能(如启动程序、打开文档、获取帮助、更改系统设置、查找文件等)一起位于“开始”菜单中。“我的电脑”使得浏览计算机上的内容(各种文件、文件夹以及程序)更方便。“网上邻居”使得查看和使用网络更简单。“回收站”为你提供放

相关主题