linux-sys_fork in Linux about the stack base

问题描述

sys_fork in Linux about the stack base

Here is the code for sys_fork in Linux 2.6.24.

 asmlinkage int sys_fork(struct pt_regs regs)
{
        return do_fork(SIGCHLD, regs.esp, &regs, 0, NULL, NULL);
}

It seems child process base is a little different than his parent!

解决方案

?fork在英文中是叉子,分叉的意思,在函数fork中,取后面的意思。很形象的表示程序从这里分叉,fork函数创建了子进程,子进程和父进程同时(其实是cpu分时处理)开始运行分叉之后的程序。如果fork成功,子进程中fork的返回值是0,父进程中fork的返回值是子进程的进程号,getpid()返回的才是各自真是的进程号。?先看这段范例代码:#include?unistd.h>;?......
答案就在这里:fork in Linux

解决方案二:

你的问题是什么。fork从主进程当前位置创建一个子进程,并且复制当前的上下文,从这里分开。

时间: 2024-09-11 12:15:10

linux-sys_fork in Linux about the stack base的相关文章

优秀Linux站点_unix linux

(一) 软件下载  (1) Freshmeat站点  网址:http://www.freshmeat.net  评介:如果你绝对肯定,非要获取开放源代码应用程序,那毫无疑问,Freshmeat就是个不错的站点.这个最值得推崇的软件下载站点,有着数以千计的大量开放源代码应用程序的分类链接.此外,Freshmeat站点在更新程序的基础上,每天还会添加10到30个新程序链接.  (2) Tucows Linux  网址:http://linux.tucows.com  评介:最初,该站点是一个基于Wi

Linux中修改linux启动方式(文本方式或xwindow方式)?

Linux中修改linux启动方式(文本方式或xwindow方式)? vi /etc/inittab 找到id:x:initdefault:一行,x=3为文本方式 x=5为xwindow方式,重启机器即可生效

【Linux基础】Linux简史

混沌初开  那是在一九九一年,令人痛苦难耐的冷战渐渐走到了尽头.和平安详的空气开始升起在地平线.在计算科学领域,随着强大硬件的推出,计算机的极限能力已超出了我们的想象,一个辉煌的未来似乎已渐露端倪. 但,还是缺了点儿什么?在操作系统领域,存在着一大片空白. 一方面,DOS还统治着庞大的个人电脑王国. 比尔盖茨花$50,000从一个西雅图黑客手中买来DOS.之后,靠着聪明的市场策略,这个简陋的操作系统悄悄渗透到了世界的每一个角落. PC用户没有其它的选择.苹果机虽好,但它的天价没人能承受得起.它和

Linux的历史----Linux内核剖析(一)

Unix操作系统 Unix的由来 汤普逊和里奇最早是在贝尔实验室开发Unix的,此后的10年,Unix在学术机构和大型企业中得到了广泛的应用,当时的UNIX拥有者AT&T公司以低廉甚至免费的许可将Unix源码授权给学术机构做研究或教学之用,许多机构在此源码基础上加以扩充和改进,形成了所谓的"Unix变种",这些变种反过来也促进了Unix的发展,其中最著名的变种之一是由加州大学柏克莱分校开发的BSD产品. 后来AT&T意识到了Unix的商业价值,不再将Unix源码授权给学

http乱码-http传送数据到Linux服务器,Linux再把数据写入共享文件不论怎么编码打开都是乱码?

问题描述 http传送数据到Linux服务器,Linux再把数据写入共享文件不论怎么编码打开都是乱码? 准备开发一个用于OI竞赛用的程序,选手在Windows下编写代码保存源文件,然后当提交程序时使用http,将源文件的数据传送给Linux服务器(Win7下的虚拟机),然后Linux将获得的数据写入到与宿主Win7共享的竞赛专用文件夹的文件中,最后评测程序去评判竞赛文件夹中的源代码即可,但是目前写入共享文件夹中的源代码不论以什么编码方式打开都出现乱码,并且对数据传送到Linux服务器过程进行抓包

Linux命令及Linux终端的20个趣事

玩Linux其乐无穷!哈哈.不相信.记住我的话,在文章结尾时你就会相信Linux确实好玩了. 20 Linux Funny Commands 1. 命令:sl (蒸汽机车) 你可能了解 'ls' 命令,并经常使用它来查看文件夹的内容.但是,有些时候你可能会拼写成 'sl' ,这时我们应该如何获得一些乐趣而不是看见"command not found"呢? 安装 sl root@tecmint:~# apt-get install sl (In Debian like OS) root@

Linux有问必答:Linux 中如何安装 7zip

Linux有问必答:Linux 中如何安装 7zip 问题: 我需要要从 ISO 映像中获取某些文件,为此我想要使用 7zip 程序.那么我应该如何安装 7zip 软件呢,[在 Linux 发布版本上完全安装]? 7zip 是一款开源的归档应用程序,开始是为 Windows 系统而开发的.它能对多种格式的档案文件进行打包或解包处理,除了支持其原生的 7z 格式的文档外,还支持包括 XZ.GZIP.TAR.ZIP 和 BZIP2 等这些格式. 通常,7zip 也用来解压 RAR.DEB.RPM 和

Linux系统概述_unix linux

    本章概述Linux系统.首先描述操作系统提供的主要服务.然后说明实现这些服务的程序 with a considerable lack of detail.本章的目的是理解系统整体,以后再详细说明每个部分.     一个操作系统的不同部分 一个UNIX操作系统包括一个核心程序kernel和一些系统程序system programs.还有一些做某件事情的应用程序application programs.核心是操作系统的心脏 .它跟踪磁盘上的文件,启动程序并运行它们,给不同的进程分配内存和其他

io-java执行linux命令从linux服务器上读取log日志文件,按行读从指定字符串开始读

问题描述 java执行linux命令从linux服务器上读取log日志文件,按行读从指定字符串开始读 [INFO ] 2015-09-23 11:22:06,691 [threadPoolTaskExecutor-41] com.sto.pdaplatform.module.rediscommon.core.ParseObjectFactory.getParseObjFactory(ParseObjectFactory.java:27) >>> the original data is