پر کردن یک بافر با ای دی پدر
سلام
1-اگر من یک بافر داشته باشم از نوع int چطوری با ای دی پدر که از طریق تابع getppid بدست میاد پرش کنم؟
2- قبل از اینکه فرایند پدر بافر را با ای دی خودش پر کنه باید سیگنالی به تمام پروسس ها بفرسته که اجازه دسترسی به بافر را به آنها ندهد
این کد ها در حقیقت در فاز پدر قرار دارد و اطلاعات بافر را در خروجی نشان می دهد و لی من می خوام که با این کد ها بافر را با ای دی پدر پر کنه
[HTML]
close(fd[0]);
if ((fdin = open(argv[1],O_RDONLY))<0)
{
perror("open");
write (fd[1],"123\n",4);
}
else
{
while((len = read (fdin , buf, BUFSZ))>0)
{
write(fd[1],buf, len);
close(fdin);
}
close(fd[1]);
[/HTML]
این کار با semaphore ایجاد میشه یا با ید با کد نویسی انجام بشه؟
در هر کدام از صورتها کمی توضیح با یک مثال بزنید
3- همین اتفاق هم برای فرایند فرزند بیفته فقط فرایند فرزند فقط از بافر بخونه
مرسی
راهنمایی کنید