通过execve实现不同进程间文件描述符的共享

环境:Vmware Workstation;CentOS-6.4-x86_64

程序的实现原理:

在myexecve中得到文件的描述符,通过execve函数,传递文件的描述符到程序other中,随后通过程序other替换程序myexecve,最后实现不同进程之间完成共享文件描述符的操作。

步骤:

1、编写makefile文件:

.SUFFIXES:.c .o

CC=gcc

SRCS1=main.c
OBJS1=$(SRCS1:.c=.o)
EXEC1=main

SRCS2=other.c
OBJS2=$(SRCS2:.c=.o)
EXEC2=other

start: $(OBJS1) $(OBJS2)
	$(CC) -o $(EXEC1) $(OBJS1)
	$(CC) -o $(EXEC2) $(OBJS2)
	@echo "-----------------------------OK-----------------------"

.c.o:
	$(CC) -Wall -o $@ -c $<

clean:
	rm -rf $(EXEC1) $(OBJS1)
	rm -rf $(EXEC2) $(OBJS2)
2、编写需要用到的文本文件a.txt:
This is some words.
3、编写源文件other.c:
#include <stdio.h>
#include <stdlib.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值