《Linux操作系统下C语言编程入门》 - linux 进程
2013-12-21 22:14
183 查看
《Linux操作系统下C语言编程入门》加上自己的一些重点。
头文件 #include <unistd>
获取进程id:pid_t getpid();
获取进程的父亲id:pid_t getppid();
获取进程对应的应用程序对用的操作系统用户的id(进程所有者的id):uid_t getuid();
进程有效用户id uid_t geteuid();
用户所在分组的id: gid_t getgid();
用户所在组的有效组id:gid_t getegid();
例子:
进程创建:
#include<unistd.h>
函数:pid_t fork();
该函数创建跟当前线程继续向下走的内容一模一样的进程内容,几乎等价于复制当前线程接下来需要执行的内容到新的子线程
当内存不足或者用户最大进程数量满了后,返回值是-1;当返回值是0,表示当前是当前线程;否则返回不是0而是一个新线程的id。
这有一篇特别详细的博客,讲述的非常的棒,赞:http://blog.csdn.net/jason314/article/details/5640969
头文件 #include <unistd>
获取进程id:pid_t getpid();
获取进程的父亲id:pid_t getppid();
获取进程对应的应用程序对用的操作系统用户的id(进程所有者的id):uid_t getuid();
进程有效用户id uid_t geteuid();
用户所在分组的id: gid_t getgid();
用户所在组的有效组id:gid_t getegid();
例子:
#include<unistd.h> #include<pwd.h> #include<sys/types.h> #include<stdio.h> int main(int argc , char** argv) { pid_t my_pid , parent_pid; uid_t my_uid , my_euid; gid_t my_gid , my_egid; struct passwd* my_info; my_pid = getpid(); parent_pid = getppid(); my_uid = getuid(); my_euid = geteuid(); my_gid = getgid(); my_info = getpwuid(my_uid); printf("Process ID : %d\n",my_pid); printf("Parent ID : %d\n",parent_pid); printf("User ID : %d\n",my_uid); printf("Effective User ID : %d\n",my_euid); printf("Group ID :%d\n",my_gid); if(my_info) { printf("My Login Name : %s\n",my_info->pw_name); printf("My Password : %s\n",my_info->pw_passwd); printf("My User ID : %d\n",my_info->pw_uid); printf("My Group ID : %d\n",my_info->pw_gid); printf("My Real Name : %s\n",my_info->pw_gecos); printf("My Home Dir : %s\n",my_info->pw_dir); printf("My WOrk Shell : %s\n",my_info->pw_shell); } return 0; }
进程创建:
#include<unistd.h>
函数:pid_t fork();
该函数创建跟当前线程继续向下走的内容一模一样的进程内容,几乎等价于复制当前线程接下来需要执行的内容到新的子线程
当内存不足或者用户最大进程数量满了后,返回值是-1;当返回值是0,表示当前是当前线程;否则返回不是0而是一个新线程的id。
这有一篇特别详细的博客,讲述的非常的棒,赞:http://blog.csdn.net/jason314/article/details/5640969
相关文章推荐
- Linux下C语言编程--进程通信、消息管理
- linux进程调度方法(SCHED_OTHER,SCHED_FIFO,SCHED_RR)
- Linux下找出进程正在侦听的端口号
- 查看LINUX进程内存占用情况
- The Linux Programming Interface 09 Process Credentials 进程凭证
- Linux批量删除包含某个关键字的进程
- Linux文件共享(二)——两个独立进程打开同一个文件
- linux 下 进程和线程的区别(baidu 面试)
- 查看linux进程命令
- linux ---- 进程 --- 3
- linux 查看占用swap进程比较大的PID
- Linux僵尸进程产生及如何避免
- linux下进程绑定cpu情况查看
- Linux进程通信 共享内存
- Linux 进程概述
- Linux如何查看进程、杀死进程、启动进程等常用命令
- Linux 技巧:让进程在后台可靠运行的几种方法
- Linux进程概念&相关系统调用
- linux的进程管理
- Linux下C语言编程--进程通信、消息管理