as per my knowledge,
i will compare with JAVA program which internally use fork() system call
think in the JAVA program i use multi-threading concept, one thread will run f1(), another will run f2()
job = program ( it is present in JOB queue, in the state diagram of a process, NEW will create a process from JOB )
process = execution of program ( entering the inputs all these are going under process )
when fork() encounters..... now we have two processes but each processes contains two threads.
Thread = a small individual part in the process