当前位置:  技术问答>我是一名新手,请问如何学java iis7站长之家

新手提问:关于<unistd.h>中fork()的声明

    来源: 互联网  发布时间:2016-11-18

    本文导语:  看linux源码的时候,想看一下fork()函数的声明与实现,查了好久,只找到下面的东西 #define __NR_fork   2 这句话能明白,声明了_NR_fork为2号系统调用 #define _syscall0(type,name)  type name(void)  {  long __res;  __asm__ volatile...

看linux源码的时候,想看一下fork()函数的声明与实现,查了好久,只找到下面的东西

#define __NR_fork   2

这句话能明白,声明了_NR_fork为2号系统调用

#define _syscall0(type,name) 
type name(void) 

long __res; 
__asm__ volatile ("int $0x80" 
: "=a" (__res) 
: "0" (__NR_##name)); 
__syscall_return(type,__res); 
}

这几句也能勉强明白
但是凭这句就能看出是声明了pid_t fork(void)函数吗?
例如我们在写程序的时候

#include 
#include 

pid_t new_pid;
new_pid=fork();

系统是如何查找fork()函数的,另外fork函数的实现又在哪里呢。疑惑
请高手帮忙解答下

|
这个你可以看看  linux 内核设计于实现 第5章, 系统调用。

asmlinkage int sys_fork(struct pt_regs *regs)
{
return do_fork(SIGCHLD, regs->sp, regs, 0, NULL, NULL);
}

fork 函数在内核态对应的就是 sys_fork

|
在我的unistd.h中,extern __pid_t fork (void) __THROW;

fork()函数的实现应该是在系统提供的库文件中

    
 
 

您可能感兴趣的文章:

  • linux新手提问, .sh文件的写法提问。 从.bat文件转为.sh文件。
  • 新手提问:如何在VJ中引用swing类库,
  • 新手提问:javac时出错
  • jsp新手提问
  • 新手提问!请大家回答!
  • 新手提问,给分
  • 新手提问,望各位高手赐教,谢了:)
  • 新手提问?
  • 两个网络问题,新手提问。
  • 新手提问,怎样解开zip包,linux下
  • 新手提问--1
  • 如何安装linux?新手提问
  • 新手提问 在线等待,为什么我的程序中 new 操作符出错?
  • LINUX新手提问,如何在LINUX下添加语言项?
  • 新手提问:运行一个可执行文件的问题?
  • 新手提问:有没有快捷的办法找到一个结构的定义(比如FILE, acct等)
  • ********新手提问,请各位随便看看*******
  • 新手提问:为什么看不到图形界面
  • 刚接触linux的新手的提问?
  • 新手提问
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 新手如何加入开源项目 有什么好的c++,java 开源适合新手 请指点!
  • JDBC的问题,新手高手都来看看吧,说不定能帮帮我这个新手呢,谢谢!
  • 想找共同学习Linux的新手,一起学习,共同成长
  • 新手关于驱动开发的疑问
  • 新手有关linux的问题!
  • 新手急求~~~~~~~~~~~~~~~~~~~
  • 新手学习该用哪个版本
  • 面向新手的终端辅助工具 Clicompanion
  • 我是个新手,请各位老兄给介绍基本好书?
  • 新手请教啦~~能不能帮忙推荐几本书
  • 我是新手
  • 新手:用WEB页面修改数据库中的表?
  • Java新手上路之问题
  • 我是一名新手,请问如何学java
  • (新手)这里怎么看到300篇以外的所有文章?(不是搜索)
  • 新手求助!
  • 新手上路,怎样判断网卡是否安装成功?
  • !!新手求救!!
  • 新手在此多谢了:SUN的宠物商店
  • 新手请教,我用VI时按ESC键,总是回嘟嘟嘟嘟响,请问如何去掉!谢谢!


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3