请问一台电脑最多可以打开多少个进程?为什么

ymy1248227142 2012-03-23 04:20:34
请问一台电脑最多可以打开多少个进程?为什么
...全文
1591 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
ymy1248227142 2012-03-28
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]

敢问,这个程序能开几个?
C/C++ code

#include <stdio.h>
#define BUFF_SIZE 1024*1024

int main()
{
while(1)
{
char *p=(char *)malloc( BUFF_SIZE * sizeof(char) );
}
return 0;
}
[/Quote]嗯,谢谢,哈哈哈
querdaizhi 2012-03-24
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 supermegaboy 的回复:]

一般来说,操作系统并不对进程数量进行限制,例如windows。而受限于机器的能力及PID的组成,PID的表示范围总是有限的,另一方面,还要受到处理机的能力、物理内存的数量、驻留集的大小、虚存的大小还有处理机调度策略、进程调度策略等因素的影响,因此不同机器能开的进程数量是不同的。但对于线程数量的理论值可以大概算出来,对于32位windows,以一般的2G地址空间来说,如果所有线程都是单段模式,且使……
[/Quote]

受教了
无着无依 2012-03-23
  • 打赏
  • 举报
回复
UNIX各系统的限制可查询CHILD_MAX(每个实际用户ID的最大进程数)的值,或通过sysconf函数取得。
飞天御剑流 2012-03-23
  • 打赏
  • 举报
回复
一般来说,操作系统并不对进程数量进行限制,例如windows。而受限于机器的能力及PID的组成,PID的表示范围总是有限的,另一方面,还要受到处理机的能力、物理内存的数量、驻留集的大小、虚存的大小还有处理机调度策略、进程调度策略等因素的影响,因此不同机器能开的进程数量是不同的。但对于线程数量的理论值可以大概算出来,对于32位windows,以一般的2G地址空间来说,如果所有线程都是单段模式,且使用默认1M线程栈空间,理论上可以开到2048个,但实际上达不到。
Lactoferrin 2012-03-23
  • 打赏
  • 举报
回复
此问题毫无意义
一根烂笔头 2012-03-23
  • 打赏
  • 举报
回复
windows下应该没有linux强大!前者虚拟多用户,而后者纯粹多用户多任务。不过应该有限制吧。不太了解
ningto.com 2012-03-23
  • 打赏
  • 举报
回复
我记得以前看过一个这样的windows程序, 忘了多少了
cobra_chen 2012-03-23
  • 打赏
  • 举报
回复
敢问,这个程序能开几个?

#include <stdio.h>
#define BUFF_SIZE 1024*1024

int main()
{
while(1)
{
char *p=(char *)malloc( BUFF_SIZE * sizeof(char) );
}
return 0;
}
赵4老师 2012-03-23
  • 打赏
  • 举报
回复
请问一个人最多可以同时处理多少件事?
muyi66 2012-03-23
  • 打赏
  • 举报
回复
这要看你的机器上所安装的操作系统允许你同时运行多少个进程。

理由很简单:操作系统执行它的创造者的意志,创造者认为你的机器不能承担更重的负荷,所以不让它运行那么多的进程。
flyrack 2012-03-23
  • 打赏
  • 举报
回复
记忆中dos只能是一个进程

69,381

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧