注意:在单片机中一般没有MMU,最多cortex-3也只能实现MPU功能,所以它不能转换虚拟地址空间。所以只有一个进程。因此基于单片机实现的多任务都是线程。
在32位的Windows系统中,术语多任务是指系统可以同时运行多个进程,而每个进程也可以同时执行多个线程。
----------------------------------------------------------------------------------------------------------------------
进程能开多少个?
进程表不可以无限开。
每个进程在系统内核的进程表中都有记录,以便于系统的调度,在进程表中应该会给每个进程一个固定长度的编号,比如说8位或16位的二进制号码,编号的长度决定了系统最多可以调度的进程数。
一般XP开200个进程没问题的,只要配置高一点。
1、那么一个进程能开多少线程?
默认情况下,一个线程的栈要预留1M的内存空间,而一个进程中可用的内存空间只有2G,所以理论上一个进程中最多可以开2048个线程,但是内存当然不可能完全拿来作线程的栈,所以实际数目要比这个值要小。
能开多少进程是根据内存限制的。
2.如何突破2000个限制?
你也可以通过连接时修改默认栈大小,将其改的比较小,这样就可以多开一些线程。如将默认栈的大小改成512K,这样理论上最多就可以开4096个线程。
即使物理内存再大,一个进程中可以起的线程总要受到2GB这个内存空间的限制。比方说你的机器装了64GB物理内存,但每个进程的内存空间还是4GB,其中用户态可用的还是2GB。
如果是同一台机器内的话,能起多少线程也是受内存限制的。每个线程对象都要站用非页面内存,而非页面内存也是有限的,当非页面内存被耗尽时,也就无法创建线程了。
如果物理内存非常大,同一台机器内可以跑的线程数目的限制值会越来越大。
可以通过修改CreateThread参数来缩小线程栈StackSize,
----------------------------------------------------------------------------------------------------------------------
进程就是应用程序的运行实例。每个进程都有自己私有的虚拟地址空间。每个进程都有一个主线程,但可以建立另外的线程。进程中的线程是并行执行的,每个线程占用CPU的时间由系统来划分。
可以把线程看成是操作系统分配CPU时间的基本实体。系统不停地在各个线程之间切换,它对线程的中断是汇编语言级的。系统为每一个线程分配一个CPU时间片,某个线程只有在分配的时间片内才有对CPU的控制权。实际上,在PC机中,同一时间只有一个线程在运行。由于系统为每个线程划分的时间片很小(20毫秒左右),所以看上去好象是多个线程在同时运行。
进程中的所有线程共享进程的虚拟地址空间,这意味着所有线程都可以访问进程的全局变量和资源。这一方面为编程带来了方便,但另一方面也容易造成冲突。
虽然在进程中进行费时的工作不会导致系统的挂起,但这会导致进程本身的挂起。所以,如果进程既要进行长期的工作,又要响应用户的输入,那么它可以启动一个线程来专门负责费时的工作,而主线程仍然可以与用户进行交互。
简单的说,你每启动一个程序,就启动了一个进程。在Windows 3.x下,进程是最小运行单位。在Windows 95/NT下,每个进程还可以启动几个线程,比如每下载一个文件可以单独开一个线程。在Windows 95/NT下,线程是最小单位。WINDOWS的多任务特性使得线程之间独立运行,但是它们彼此共享虚拟空间,也就是共用变量,线程有可能会同时操作一片内存。
所谓进程,本身不能执行,它只是一个资源的集合体,拥有地址空间,模块,内存,...
线程是真正的执行单元,一个进程如果没有线程,那么就没有存在的意义,因为不可能执行
关键字:单片机 实时操作系统
引用地址:
单片机实时操作系统中进程与乡程
推荐阅读最新更新时间:2024-03-16 14:39
大容量Flash型AT91系列ARM核微控制器
摘要:主要介绍美国Atmel公司最新推出的基于ARM7TDMI核的AT91FR40162微控制器的体系结构及功能特性。AT91FR40162是对AT91R40008增加了16Mbit的Flash存储器后形成的最终产品。本文对AT91FR40162新增的Flash存储器以及AT91 Flash Uploader软件作重点介绍。
关键词:AT91FR40162 AT91R40008 SRAM Flash 微控制器
引 言
AT91FR40162是美国Atmel公司生产的AT91系列微控制器中的一员,具有ARM7TDMI核、大容量Flash存储器以及片内SRAM和外围。这种微控制器的特点是高性能--32位RISC体系结构、高
[应用]
Keil宏定义和如何知道单片机资源名称
在Keil的工程设置中需要根据所选单片机来更改宏定义,如果程序移植后,宏定义没有更改过去,有时候会报错。 这个宏定义代表了芯片的类型,如下: 因此需要根据自己芯片的类型,更改宏定义。 如何知道自己芯片的资源名称呢?比如定时器叫什么名字? 可以打开stm32f10x.h文件,往下拉可以看见: 这些宏定义代表: STM32F10X_LD_VL 对应于 LowDensity ValueLine,即小容量的STM32F100 STM32F10X_MD_VL 对应于 MediumDensity ValueLine,即中等容量的STM32F100 STM32F10X_HD_VL 对应于 HighDensity ValueLin
[单片机]
小型单片机系统延时关机电路
很多电子产品具有延时自动关机功能。下面介绍一个小型系统中的延时关机功能。 设计思路很简单.就是先按轻触开关给系统供电,系统上电正常工作后通过一个引脚控制一个电子开关,代替轻触开关为系统供电,在单片机程序设计时定义一个变量,每次使用系统时清零该变量.没有使用系统时利用单片机的定时器自动累加此变量。到达一定值后该引脚输出翻转,控制电子开关关闭,系统自动断电。 相关电路如附图所示。系统采用 9V 电池供电。所以要先用 7805 稳压。 Q1 为电子开关, Q2 及其周边元件为控制电路。 R1 和 R3 的阻值可以根据实际电路加以选择。电子开关受单片机的④脚控制。复位电路分为上电复位及按键复位,系典型应用。 其工作过程为
[单片机]
基于LJD-ZN-8400T智能触摸液晶显示终端与单片机的接口
作为一种常见的显示设备,LCD具有功耗低,体积小,重量轻,显示信息量大等特点,尤其是在便携设备中,更占据着绝对主流的地位。对于字符或数字的简单信息显示,通常可用段码式LCD驱动器。对于复杂的信息显示,则必须由点阵式LCD驱动器来显示。最常见的点阵式LCD控制/驱动器中,有不带中文字库的LCD驱动器,也有带中文字库的LCD驱动器。随着嵌入式系统的广泛应用,出现了大量的16位和32位的嵌入式处理器。然而传统的8位单片机长期用于生产实践中,制造工艺成熟,性能更加可靠,因此仍然占有相当大的市场,特别是在汽车电子等对可靠性要求极高的领域。液晶显示器具有显示信息量丰富,功耗低,体积小,质量轻,无辐射等优点。触摸屏作为一种特殊的计算机外设,
[单片机]
基于AT89C52单片机的短信息收发系统设计
0 引言 GSM(Global System for Mobile communication)系统是目前基于时分多址技术的移动通讯体制中比较成熟、完善、应用最广泛的一种系统。目前已建成的覆盖全国的GSM数字蜂窝移动通信网,是我国公众移动通信网的主要方式。基于GSM的短信息服务,是一种在移动网络上传送简短信息的无线应用,是一种信息在移动网络上储存和转寄的过程。GSM模块是继GSM手机外又一种非常重要的GSM移动通信系统终端设备。它是传统调制解调器与GSM无线移动通信系统相结合的一种数据终端设备,也称为GSM Modem。 1 系统原理及系统结构 本系统主要研究如何运用GSM手机模块在计算机终端实现短信息的收发(即图l中虚线部
[单片机]
激光治疗仪中的触摸屏接口设计
script type=text/javascript --> /script 引言
随着社会自动化程度的提高,人机交互能力急需大的转变,向着更方便使用、更直观的方向发展。激光治疗机主要应用激光的物理特性作用于人体,产生机体化学反应从而达到治疗疾病的目的。激光治疗机作为一种精密仪器需要精确的控制及防尘、防静电、防潮等方面的严格要求。激光治疗机输入设备采用触摸屏控制,既是基于以上要求也是从方便使用者操作和界面直观的角度考虑的。触摸屏的应用使得数据的显示和数据的输入结合为一体,简化了整个设备。
1 触摸屏原理
触摸屏附着在显示器的表面,与显示器配合使用。通过触摸产生模拟电信号,经过转换为数字信号由
[嵌入式]
51单片机综合学习系统演示程序 - 红外遥控器键
简介:51单片机综合学习系统演示程序 - 红外遥控器键 /*********************************************************************/ #include reg52.h #include intrins.h sbitIRIN = P3 ^ 2; //红外接收器数据线 sbit BEEP = P3 ^ 7; //蜂鸣器驱动线 sbit RELAY = P1 ^ 3; //继电器驱动线 unsigned char IRCOM = { 0x00, 0x00, 0x00, 0x00, 0x10, 0x10 }; unsigned char code ta
[单片机]
基于ARM7支持触摸屏和实时操作系统的开发与应用
概述 随着信息技术的发展,支持图形界面的触摸操作和实时操作系统相结合的应用系统已经越来越广泛地应用到航空航天、军事、消费类电子、通讯设备等领域。mC/OS-II操作系统是一种占先式、实时操作系统(RTOS),由于其内核可拆减、可剥离性,使得它在实时控制领域中有着广泛的应用。它不仅减小了因为系统硬件设计缺陷带来的不可靠因素,而且增强了系统的控制实时性,从软件方面进一步增强了ARM控制系统的性能。另外,新版本的mC/OS-II已经通过了FAA认证,很适合应用于对实时性要求很高的嵌入式工业控制领域,如目前应用较广泛的军用战斗机、攻击机和火控系统等。 支持图形界面操作(mC/GUI)是一种较为流行的人机交互系统,它能够提供
[单片机]