社区
Linux/Unix社区
帖子详情
Linux system popen调用问题
chinanier
2014-06-29 10:40:37
在Linux中,如果进程占用的系统%90的内存,这个时候调用system或者popen会有问题么?因为考虑到system或者popen都是开启的子进程来实现的系统命令调用,而产生子进程会复制父进程的内存空间,此时父进程已经占用了系统大量内存,已经不可能为子进程分配这么多的资源,考虑到这个问题,调用system函数会出错,不知道这样分析对不对?
...全文
193
4
打赏
收藏
Linux system popen调用问题
在Linux中,如果进程占用的系统%90的内存,这个时候调用system或者popen会有问题么?因为考虑到system或者popen都是开启的子进程来实现的系统命令调用,而产生子进程会复制父进程的内存空间,此时父进程已经占用了系统大量内存,已经不可能为子进程分配这么多的资源,考虑到这个问题,调用system函数会出错,不知道这样分析对不对?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
awsqsh
2014-06-30
打赏
举报
回复
判断返回值, 记得释放FILE *。 一般我还是很少遇到挂掉的情况。
buyong
2014-06-30
打赏
举报
回复
有可能,应该判断popen的返回值
chinanier
2014-06-29
打赏
举报
回复
http://blog.csdn.net/ppppppppp2009/article/details/22750939, 那在进行大量的写内存操作时会有问题么?
Carl_CCC
2014-06-29
打赏
举报
回复
不会,创建新进程不会立即拷贝一份的。现在都是copy on write机制。
fork、exec系列与system、
popen
区别.rar_UNIX
popen
_
linux
system pop_pop
fork和exec系列
调用
前后,进程在内存的“数据段”,“堆栈段”和“代码段”有什么不同?读了之后,你就会知道了,
Python3 执行
Linux
Bash命令的方法
和之前C++执行
Linux
Bash命令的方法 一样,Python依然支持system
调用
和
popen
()函数来执行
linux
bash命令。 方法一:system
调用
#仅仅在一个子终端运行系统命令,而不能获取命令执行后的返回信息 import os os.system('ls') 方法二:
popen
()函数 import os os.
popen
('ls').readlines() #这个返回值是一个list 方法三:使用模块 subprocess import subprocess subprocess.call('ls') #可以直接call()
调用
''' #也可以使用subpr
举例讲解
Linux
系统下Python
调用
系统Shell的方法
时候难免需要直接
调用
Shell命令来完成一些比较简单的操作,比如mount一个文件系统之类的。那么我们使用Python如何
调用
Linux
的Shell命令?下面来介绍几种常用的方法: 1. os 模块 1.1. os模块的exec方法族 Python的exec系统方法同Unix的exec系统
调用
是一致的。这些方法适用于在子进程中
调用
外部程序的情况,因为外部程序会替换当前进程的代码,不会返回。( 这个看了点 help(os) –> search “exec” 的相关介绍,但是没太搞明白咋使用) 1.2. os模块的system方法 system方法会创建子进程运行外部程序,方法只返回外部程序的
从
Linux
程序中执行shell(程序、脚本)并获得输出结果
Table of Contents 1. 前言 2. 使用临时文件 3. 使用匿名管道 4. 使用
popen
5. 小结 1. 前言 Unix界有一句名言:“一行shell脚本胜过万行C程序”,虽然这句话有些夸张,但不可否认的是,借助脚本确实能够极大的简化一些编程工作。比如实现一个ping程序来测试网络的连通性,实现ping函数需要写上200~300行代码,为什么不能直接
调用
系统的ping命令呢?通常在程序中通过 system函数来
调用
shell命令。但是,system函数仅返回命令是否执行成功,而我们可能需要获得shell命令在控制台上输出的结果。例如,执行外部命令ping后,如果执行失败,我们希望得到ping的返回信息。
Python下
调用
Linux
的Shell命令的方法
有时候难免需要直接
调用
Shell命令来完成一些比较简单的操作,比如mount一个文件系统之类的。那么我们使用Python如何
调用
Linux
的Shell命令?下面来介绍几种常用的方法: 1. os 模块 1.1. os模块的exec方法族 Python的exec系统方法同Unix的exec系统
调用
是一致的。这些方法适用于在子进程中
调用
外部程序的情况,因为外部程序会替换当前进程的代码,不会返回。( 这个看了点 help(os) –> search “exec” 的相关介绍,但是没太搞明白咋使用) 1.2. os模块的system方法 system方法会创建子进程运行外部程序,方法只返回外部程
Linux/Unix社区
23,121
社区成员
74,508
社区内容
发帖
与我相关
我的任务
Linux/Unix社区
Linux/Unix社区 应用程序开发区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章