#include <sys/types.h> #include <sys/wait.h> #include <unistd.h> #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { pid_t pid1, pid2; int status1, status2; if ((pid1 = fork()) == 0) { // First child execl("/bin/ls", "ls", "-l", NULL); } else { // Parent if ((pid2 = fork()) == 0) { // Second child char *args[] = {"ps", "-A", NULL}; execv("/bin/ps", args); } else { // Parent // Wait for the first child waitpid(pid1, &status1, 0); // Wait for the second child waitpid(pid2, &status2, 0); } } return 0; }
Standard input is empty
total 16
-rwxr-xr-x 1 root root 14312 Sep 25 21:05 prog
PID TTY TIME CMD
1 ? 02:25:16 systemd
2 ? 00:00:08 kthreadd
3 ? 00:00:00 rcu_gp
4 ? 00:00:00 rcu_par_gp
5 ? 00:00:00 slub_flushwq
6 ? 00:00:00 netns
8 ? 00:00:00 kworker/0:0H-events_highpri
10 ? 00:00:00 mm_percpu_wq
11 ? 00:00:00 rcu_tasks_kthread
12 ? 00:00:00 rcu_tasks_rude_kthread
13 ? 00:00:00 rcu_tasks_trace_kthread
14 ? 00:04:10 ksoftirqd/0
15 ? 02:27:55 rcu_preempt
16 ? 00:00:15 migration/0
18 ? 00:00:00 cpuhp/0
19 ? 00:00:00 cpuhp/1
20 ? 00:00:16 migration/1
21 ? 00:02:55 ksoftirqd/1
23 ? 00:00:00 kworker/1:0H-events_highpri
24 ? 00:00:00 cpuhp/2
25 ? 00:00:19 migration/2
26 ? 00:29:05 ksoftirqd/2
28 ? 00:00:00 kworker/2:0H-events_highpri
29 ? 00:00:00 cpuhp/3
30 ? 00:00:15 migration/3
31 ? 00:02:12 ksoftirqd/3
33 ? 00:00:00 kworker/3:0H-events_highpri
34 ? 00:00:00 cpuhp/4
35 ? 00:00:14 migration/4
36 ? 00:02:01 ksoftirqd/4
38 ? 00:00:00 kworker/4:0H-events_highpri
39 ? 00:00:00 cpuhp/5
40 ? 00:00:15 migration/5
41 ? 00:03:26 ksoftirqd/5
43 ? 00:00:00 kworker/5:0H-events_highpri
44 ? 00:00:00 cpuhp/6
45 ? 00:00:14 migration/6
46 ? 00:02:07 ksoftirqd/6
48 ? 00:00:00 kworker/6:0H-events_highpri
49 ? 00:00:00 cpuhp/7
50 ? 00:00:14 migration/7
51 ? 00:02:13 ksoftirqd/7
53 ? 00:00:00 kworker/7:0H-events_highpri
62 ? 00:00:00 kdevtmpfs
63 ? 00:00:00 inet_frag_wq
64 ? 00:00:00 kauditd
66 ? 00:00:02 khungtaskd
67 ? 00:00:00 oom_reaper
68 ? 00:00:00 writeback
69 ? 00:05:55 kcompactd0
70 ? 00:00:00 ksmd
71 ? 00:00:54 khugepaged
72 ? 00:00:00 kintegrityd
73 ? 00:00:00 kblockd
74 ? 00:00:00 blkcg_punt_bio
75 ? 00:00:00 tpm_dev_wq
76 ? 00:00:00 edac-poller
77 ? 00:00:00 devfreq_wq
78 ? 00:01:02 kworker/0:1H-kblockd
80 ? 00:02:01 kswapd0
87 ? 00:00:00 kthrotld
89 ? 00:00:00 acpi_thermal_pm
90 ? 00:00:00 mld
91 ? 00:00:00 ipv6_addrconf
96 ? 00:00:00 kstrp
105 ? 00:00:00 zswap-shrink
106 ? 00:00:00 kworker/u17:0
159 ? 00:01:25 kworker/4:1H-kblockd
160 ? 00:00:46 kworker/1:1H-kblockd
161 ? 00:12:43 kworker/3:1H-kblockd
162 ? 00:01:09 kworker/5:1H-kblockd
163 ? 00:06:24 kworker/2:1H-kblockd
164 ? 00:01:16 kworker/6:1H-kblockd
167 ? 00:01:07 kworker/7:1H-kblockd
188 ? 00:00:00 ata_sff
189 ? 00:00:00 scsi_eh_0
190 ? 00:00:00 scsi_tmf_0
191 ? 00:00:00 scsi_eh_1
192 ? 00:00:00 scsi_tmf_1
194 ? 00:00:00 scsi_eh_2
195 ? 00:00:00 scsi_tmf_2
196 ? 00:00:00 scsi_eh_3
197 ? 00:00:00 scsi_tmf_3
198 ? 00:00:00 scsi_eh_4
199 ? 00:00:00 scsi_tmf_4
200 ? 00:00:00 scsi_eh_5
201 ? 00:00:00 scsi_tmf_5
217 ? 00:00:00 md
220 ? 01:05:21 md0_raid1
225 ? 00:00:00 kdmflush/253:0
226 ? 00:00:00 kdmflush/253:1
245 ? 00:00:00 raid5wq
279 ? 00:07:04 jbd2/dm-0-8
280 ? 00:00:00 ext4-rsv-conver
336 ? 00:39:09 systemd-journal
373 ? 00:00:07 systemd-udevd
461 ? 00:00:00 ipmi-msghandler
468 ? 00:00:00 watchdogd
469 ? 00:00:45 mdadm
488 ? 00:00:00 cryptd
515 ? 00:00:00 kipmi0
673 ? 00:00:17 rpcbind
674 ? 00:00:21 systemd-timesyn
676 ? 00:00:00 rpciod
677 ? 00:00:00 xprtiod
680 ? 00:00:00 acpid
682 ? 00:00:10 cron
683 ? 00:00:00 svscanboot
684 ? 00:40:41 dbus-daemon
687 ? 00:03:31 irqbalance
689 ? 00:07:51 rsyslogd
698 ? 00:00:04 smartd
702 ? 00:14:51 systemd-logind
706 ? 00:00:00 atd
708 ? 00:00:00 agetty
709 ? 00:00:00 agetty
751 ? 00:02:48 svscan
752 ? 00:00:00 readproctitle
881 ? 00:00:00 supervise
882 ? 00:00:00 supervise
883 ? 00:00:00 supervise
884 ? 00:00:00 supervise
885 ? 00:00:00 supervise
886 ? 00:00:00 supervise
887 ? 00:00:00 supervise
888 ? 00:00:00 supervise
889 ? 00:00:00 supervise
890 ? 00:00:00 supervise
891 ? 00:00:00 supervise
893 ? 00:00:00 supervise
894 ? 00:00:00 supervise
896 ? 00:00:00 supervise
897 ? 00:00:00 supervise
899 ? 00:00:00 supervise
901 ? 00:00:00 supervise
902 ? 00:00:00 supervise
904 ? 00:00:00 supervise
906 ? 00:00:00 supervise
909 ? 00:00:00 supervise
910 ? 00:00:00 supervise
911 ? 00:00:00 supervise
912 ? 00:00:00 supervise
913 ? 00:00:00 supervise
914 ? 00:00:00 supervise
915 ? 00:00:00 supervise
916 ? 00:00:00 supervise
917 ? 00:00:00 supervise
918 ? 00:00:00 supervise
919 ? 00:00:00 supervise
920 ? 00:00:00 supervise
991 ? 00:00:00 sudo
992 ? 00:00:00 run
993 ? 00:00:00 run
994 ? 00:00:00 run
995 ? 00:00:00 sudo
996 ? 00:00:00 sudo
997 ? 00:00:00 run
998 ? 00:00:00 sudo
999 ? 00:00:00 run
1000 ? 00:00:00 run
1001 ? 00:00:00 run
1002 ? 00:00:00 run
1003 ? 00:00:00 sudo
1004 ? 00:00:00 run
1005 ? 00:00:00 sudo
1006 ? 00:00:00 run
1007 ? 00:00:00 run
1008 ? 00:00:00 sudo
1009 ? 00:00:00 run
1010 ? 00:00:00 run
1011 ? 00:00:00 run
1012 ? 00:00:00 run
1106 ? 00:00:00 run
1107 ? 00:00:00 sudo
1135 ? 00:07:53 sshd
1152 ? 00:06:43 multilog
1153 ? 00:00:00 multilog
1154 ? 00:05:04 multilog
1155 ? 00:00:00 multilog
1156 ? 00:00:00 multilog
1157 ? 00:00:00 multilog
1158 ? 00:05:03 multilog
1159 ? 00:06:12 multilog
1160 ? 00:06:34 multilog
1161 ? 00:00:00 multilog
1162 ? 00:05:04 multilog
1163 ? 00:00:00 multilog
1164 ? 00:00:00 multilog
1165 ? 00:00:00 multilog
1166 ? 00:06:32 multilog
1167 ? 00:00:00 multilog
1175 ? 00:20:31 exim4
1177 ? 00:13:25 python3
1178 ? 41-11:44:48 python3
1179 ? 42-12:57:44 python3
1180 ? 42-11:38:33 python3
1181 ? 41-10:11:33 python3
1182 ? 42-13:18:35 python3
1183 ? 41-11:45:54 python3
1184 ? 38-12:59:31 python3
3811753 ? 00:00:01 kworker/u16:3+netns
3823928 ? 00:00:00 kworker/u16:0-events_unbound
3825038 ? 00:00:00 kworker/7:2-events
3827287 ? 00:00:00 kworker/6:3-events
3828979 ? 00:00:00 kworker/5:2-events
3830891 ? 00:00:00 kworker/0:1-cgroup_destroy
3831457 ? 00:00:00 kworker/1:1-cgroup_destroy
3834677 ? 00:00:00 kworker/7:3-cgroup_destroy
3835569 ? 00:00:00 kworker/1:3-cgroup_pidlist_destroy
3835593 ? 00:00:00 kworker/3:1-cgroup_pidlist_destroy
3835835 ? 00:00:00 kworker/2:3-cgroup_pidlist_destroy
3835861 ? 00:00:00 kworker/4:0-cgroup_destroy
3836165 ? 00:00:00 kworker/6:4-inet_frag_wq
3836555 ? 00:00:00 kworker/5:1-events
3837261 ? 00:00:00 kworker/1:0-events
3837401 ? 00:00:00 kworker/2:2-cgroup_pidlist_destroy
3837414 ? 00:00:00 kworker/0:2-cgroup_pidlist_destroy
3837434 ? 00:00:00 kworker/4:1-events
3837619 ? 00:00:00 kworker/3:2-events
3837692 ? 00:00:00 kworker/6:1-events
3837712 ? 00:00:00 kworker/7:0-cgroup_destroy
3838359 ? 00:00:00 kworker/5:0-events
3838368 ? 00:00:00 kworker/2:1+events
3838432 ? 00:00:00 kworker/4:2-cgroup_pidlist_destroy
3838466 ? 00:00:00 kworker/u16:2-events_unbound
3838741 ? 00:00:00 kworker/3:0-events
3838779 ? 00:00:00 kworker/0:0-mm_percpu_wq
3838841 ? 00:00:00 kworker/6:0-cgroup_pidlist_destroy
3838861 ? 00:00:00 kworker/7:1-cgroup_destroy
3838927 ? 00:00:00 kworker/3:3-events
3839519 ? 00:00:00 kworker/0:3-inet_frag_wq
3839635 ? 00:00:00 kworker/4:3-events
3839657 ? 00:00:00 kworker/2:0-rcu_gp
3839694 ? 00:00:00 kworker/5:3-cgroup_destroy
3839729 ? 00:00:00 kworker/1:2
3839850 ? 00:00:00 kworker/u16:1
3839879 ? 00:00:00 bash
3839880 ? 00:00:00 secrun
3839881 ? 00:00:00 prog
3839886 ? 00:00:00 ps
3839892 ? 00:00:00 bash
3839893 ? 00:00:00 secrun
3839894 ? 00:00:00 java
Soy el padre (3839881, hijo de 3839880)