Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

DEBUG HELP: fork() not creating child processes within helper method, but works fine in main? I'm trying to simulate a fork() step for a later

DEBUG HELP: fork() not creating child processes within helper method, but works fine in main?

I'm trying to simulate a fork() step for a later development stage in this program. However, when I try to fork() child processes, none of them created (evident by return of negative PIDs).

const char *get_filename_ext(const char *filename){ const char *dot = strrchr(filename, '.'); if(!dot | dot == filename) return ""; return dot+1; } void listdir(const char *name, int indent) { // CURRENTLY WORKS FOR DEFAULT DIRECTORY AND SUBSEQUENTIAL CHILD DIRECTORIES DIR *dir; struct dirent *entry; if(!(dir=opendir(name))) return; int pid; int i = 0; while((entry=readdir(dir))!=NULL) { if(entry->d_type==DT_DIR) { char path[1024]; if(strcmp(entry->d_name, ".")==0 || strcmp(entry->d_name, "..")==0){ continue; } pid = fork(); if(pid = 0){ printf(" DIRECTORY CHILD CREATED OF ID ", getpid()); snprintf(path, sizeof(path), "%s/%s", name, entry->d_name); printf("%*s[%s] ", indent, "", entry->d_name); listdir(path, indent+2); //printf(" EXACT PATH: %s ", path);mong }else{ printf(" Parent Communicating ID: %d "); } }else { if(strcmp(get_filename_ext(entry->d_name), "csv")==0) { printf( "CSV FOUND: %s ", entry->d_name); pid = fork(); if(pid = 0){ printf(" FILE CHILD CREATED OF ID ", getpid()); printf("%*s-%s ", indent, "", entry->d_name); }else{ printf(" Parent Communicating ID: %d "); } } } } closedir(dir); }

However, whenever I test fork() in main, it works perfectly fine. Why is this?

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Relational Database Technology

Authors: Suad Alagic

1st Edition

354096276X, 978-3540962762

More Books

Students also viewed these Databases questions

Question

3. Describe phases of minority identity development.

Answered: 1 week ago