uncompressed skype for linux, [code] :~/soft/skype-1.3.0.53$ ls 1 icons lang LICENSE README skype skype-action-handler skype-callto-handler skype.conf skype.desktop skype.desktop.old sound :~/soft/skype-1.3.0.53$ file skype; ls -al skype skype: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.2.0, dynamically linked (uses shared libs), stripped -rwxr-xr-x 1...
by dajun - C/C++ - 2007-06-10 14:05:23 阅读(1281) 回复(2)
我想调用一个shell程序 可是怎么都通不过,我是用solaris下的gcc编译的 源代码如下 请教高人: if(execv("/usr/bin/ls", NULL)<0){ printf("wrong!\n"); } 实际上没有执行ls
#include
Linux提供了execl、execlp、execle、execv、execvp和execve等六个用以执行一个可执行文件的函数(统称为exec函数,其间的差异在于对命令行参数和环境变量参数的传递方式不同)。这些函数的第一个参数都是要被执行的程式的路径,第二个参数则向程式传递了命令行参数,第三个参数则向程式传递环境变量。以上函数的本质都是调用在arch/i386/kernel/process.c文件中实现的系统调用sys_execve来执行一个可执行文件,该函数代码如下: as...
今天想实现一个守护进程,可是发现它需要定时刷系统调用。 也就是用execve来调用,写了个测试的好像不能用。 守护进程创建过后就没有相关的终端,这样是不是就不可以做系统调用。 难道还要再调用一个bash出来不成。。。 是不是这样的解决方法太为难自己了。似乎用其他的方法更好。 比较SHELL脚本== 我要的功能就是一个定时的刷新一句SHELL,并把输出重定向一个文件里面。 类似于: #!/bin/sh while true do sl...
Linux提供了execl、execlp、execle、execv、execvp和execve等六个用以执行一个可执行文件的函数(统称为exec函数,其间的差异在于对命令行参数和环境变量参数的传递方式不同)。这些函数的第一个参数都是要被执行的程序的路径,第二个参数则向程序传递了命令行参数,第三个参数则向程序传递环境变量。以上函数的本质都是调用在arch/i386/kernel/process.c文件中实现的系统调用sys_execve来执行一个可执行文件,该函数代码如下: ...
[code]#include
内核处理execve系统调用的内核函数是sys_execve, asmlinkage int sys_execve(struct pt_regs regs) { int error; char * filename; filename = getname((char __user *) regs.ebx); error = PTR_ERR(filename); if (IS_ERR(filename)) goto out; error = do_execve(filename, (char __user * __user *) regs.ecx, (char __user * __user *) regs.edx, ®s); if (error == 0) { task_lock(current);...
内核处理execve系统调用的内核函数是sys_execve, asmlinkage int sys_execve(struct pt_regs regs) { int error; char * filename; filename = getname((char __user *) regs.ebx); error = PTR_ERR(filename); if (IS_ERR(filename)) goto out; error = do_execve(filename, (char __user * __user *) regs.ecx, (char __user * __user *) regs.edx, ®s); if (error == 0) { task_lock(current);...
本帖最后由 求linux注释 于 2014-10-11 21:25 编辑 1. 这个函数和do_fork有关系吗?为什么没见到 do_execve 调用 do_fork 为子进程复制资源呢? 2. 这个函数会调用 elf_load_binary 来载入二进制文件,但是在 elf_load_binary 里却一直在对 current 这个进程描述符进行配置,请问这个 current 是谁?是父进程吗?如果是父进程的话那么这个新程序的 struct task_struct 在什么时候被分配?为什么不是申请一个 task_struct 作为子...