/*

* sys_execve() executes a new program.

*/

long sys_execve(const char __user *name, //需要执行的文件的绝对路径(存于用户空间)

const char __user *const __user *argv, //传入系统调用的参数(存于用户空间)

const char __user *const __user *envp, struct pt_regs *regs) //regs是系统调用时系统堆栈的情况(详细解释请参看情景分析之系统调用)

{

long error;

char *filename;

filename = getname(name); //copy *filename frome user space to system space.

error = PTR_ERR(filename);

if (IS_ERR(filename))

return error;

error = do_execve(filename, argv, envp, regs);

#ifdef CONFIG_X86_32

if (error == 0) {

/* Make sure we don't return using sysenter.. */

set_thread_flag(TIF_IRET);

}

#endif

putname(filename);

return error;

}

我们首先关注标签__user,这个标签表示其后边的变量是指向用户空间的地址的(详细的解释,请参看深入Linux内核框架P2

execve系统调用_系统调用execve的入口sys_execve() | 学步园相关推荐

  1. python如何调用文件进行换位加密_数据文件加密算法–换位加密法 | 学步园

    #include #include union message{ int s1[1000]; int s2[100][10]; } user; main(int argc,char *argv[]) ...

  2. java计数器策略模式_策略模式与外观模式 | 学步园

    1.策略 :定义不同的 2. 例子:随机生成宠物,并统计各种宠物生成数量. a) 抽象类:PetCreator,用于随机生成宠物. package context; import java.util. ...

  3. java值传递试题_面试题:java参数传递 | 学步园

    public class TestString { public static void link(String a){ a+="World"; } public static v ...

  4. duilib设置透明窗口_界面开发心得与Duilib | 学步园

    一.设置窗体透明度和指定透明色(如指定了黑色,即所有黑色的部分将会变得透明) DWORD dwExStyle=GetWindowLong(m_hWnd,GWL_EXSTYLE); if((dwExSt ...

  5. java对字符串归一化_搜索引擎中的字符串归一化 | 学步园

    搜索引擎中对于Q查询,都会涉及到字符串归一化这个步骤,以提高结果召回率.字符串的归一化包括三个方面:繁体转简体:全角字符转半角:大写字母转小写. 建倒排时,会先对字符串做归一化处理,然后再分词取ter ...

  6. maven 打包替换文件_使用Maven打包生成文件 | 学步园

    状况:Maven会自动package一些文件到默认目录,或我们会指定一些文件生成到指定目录.比如一些配置文件,一些脚本. 需求:将这些需要文件打包成一个gz压缩包 方法: 1. 建立assembly文 ...

  7. java对rgb取反_颜色取反 rgb COLORREF | 学步园

    编码时遇到下面问题 背景颜色和前景颜色需要取反 COLORREF m_clr[5]; //背景颜色 m_listPD.SetItemData(nCount,m_clr[nUltraOrder]); / ...

  8. java 吸血鬼数字_用java求吸血鬼数字 | 学步园

    吸血鬼数字是指位数为偶数的数字,可以由一对数字相乘得到,而这对数字各包含乘积的一 半位数的数字,其中从最初的数字中选取的数字可以任意排序.以2个0结尾的数字是不允许 的,例如,下列数字都是吸血鬼数字: ...

  9. java 汽车加油问题_贪心算法 汽车加油问题 | 学步园

    / //一辆汽车加满油后可行驶n公里.旅途中有若干个加油站.设计一个有效      // // // n和k个加油站位置,编程计算最少加油次数.并证明算法能产生一个最优解.    // //要求:   ...

最新文章

  1. 以后的知识点以PPT的形式展现
  2. pcie 设备号多少位_怎么读取PCIe设备的VPD信息?
  3. python中s和t是两个集合、对s|t描述正确的是_全国计算机等级考试二级教程--python语言程序设计(2018年版)第六章:组合数据类型...
  4. java lock接口_Java Lock接口
  5. 利用永恒之蓝入侵服务器复制文件,msf利用永恒之蓝进行漏洞攻击
  6. HTML5网站大观:10个精美的 HTML5 企业网站欣赏
  7. 【python】字典的嵌套
  8. H.264抗误码策略及FMO
  9. mac解决“您的电脑因为出现问题问题而重新启动 SOCD report detected: (iBoot panic)“报错, 重置SMC与重置NVRAM(PRAM)
  10. hdu多校(三)1004 Tokitsukaze and Multiple(easydp)
  11. 非计软专业的学生也能看懂的面向对象编程(《面向对象编程是怎样工作的》平野章/著 读书笔记)
  12. 如何设置代理服务器?
  13. 他一生只做一件事,专注150万农场鸡的鸡蛋销售
  14. 什么是java?以及java的初步简单学习
  15. C语言fseek、ftell和rewind函数详解
  16. Microsoft Edge闪退问题解决方案:
  17. 直播:全能项目经理 - 设计篇(2015-2-16)
  18. Mock-Server搭建
  19. 什么是码率控制? 在视频编码中,码率控制的概念是什么,它是通过什么实现的?
  20. cdn加速和oss传输加速的区别。

热门文章

  1. hr2000 光谱Matlab,HR2000+光纤光谱仪
  2. 分布式搜索引擎ElasticSearch(二)---ElasticSearch进阶使用教程
  3. 【点的定位】Save the Students! UVALive - 5984
  4. 2.会计基础--(复式记账、会计凭证与账簿)
  5. 教你如何使用闲鱼引流
  6. NYOJ273 字母小游戏
  7. Generative Adversarial Text to Image Synthesis 论文翻译精校版
  8. (附源码)计算机毕业设计ssm服装销售商城系统
  9. 基于内容的图片检索CBIR(Content Based Image Retrieval)简介
  10. 设计模式期末考试复习客观题