


     fork(LSB.os/procprim)LSB-OS (The Open Group)fork(LSB.os/procprim)



     NAME
	  LSB.os/procprim/fork - create	a new process testset

     DESCRIPTION
	  Tests	the fork() function for	conformance to System
	  Interfaces and Headers, Issue	5 Page:	fork().
	  These	tests are supplemental to other	testcases. The Real-
	  time Features	not required by	the LSB	specification will
	  give an UNSUPPORTED or NOTINUSE result code.

     TESTS
     Compliance
	  1    If _POSIX_SEMAPHORES is defined:
		 On a call to fork() all named semaphores that are
		 open in the calling process shall also	be open	in the
		 child process.

	  2    If _POSIX_MEMLOCK is defined:
		 On a call to fork() the child process shall not
		 inherit any address space memory locks	established by
		 the parent process via	calls to mlockall() or
		 mlock().

	  3    If _POSIX_MAPPED_FILES or _POSIX_SHARED_MEMORY_OBJECTS
	       is defined:
		 On a call to fork() memory mappings created in	the
		 parent	process	shall be retained in the child
		 process.

	  4    If _POSIX_MAPPED_FILES or _POSIX_SHARED_MEMORY_OBJECTS
	       is defined:
		 On a call to fork() MAP_PRIVATE mappings inherited
		 from the parent shall also be MAP_PRIVATE mappings in
		 the child.

	  5    If _POSIX_MAPPED_FILES or _POSIX_SHARED_MEMORY_OBJECTS
	       is defined:
		 Any modifications to MAP_PRIVATE mappings made	by the
		 parent	process	prior to calling fork()	shall be
		 visible to the	child process.

	  6    If _POSIX_MAPPED_FILES or _POSIX_SHARED_MEMORY_OBJECTS
	       is defined:
		 Any modifications to MAP_PRIVATE mappings made	by the
		 parent	process	after calling fork() shall not be
		 visible to the	child process.

	  7    If _POSIX_MAPPED_FILES or _POSIX_SHARED_MEMORY_OBJECTS
	       is defined:
		 Any modifications to MAP_PRIVATE mappings made	by the
		 child process after a call to fork() shall be visible
		 only to the child process.



     Page 1					    (printed 2/21/103)






     fork(LSB.os/procprim)LSB-OS (The Open Group)fork(LSB.os/procprim)



	  8    If _POSIX_PRIORITY_SCHEDULING is	defined:
		 On a call to fork(), for the SCHED_FIFO and SCHED_RR
		 scheduling policies, the child	process	shall inherit
		 the policy and	priority settings of the parent
		 process.

	  9    If _POSIX_TIMERS	is defined:
		 On a call to fork(), per-process timers created by
		 the parent process shall be not be inherited by the
		 child process.

	  10   If _POSIX_MESSAGE_PASSING is defined:
		 On a call to fork(), the child	process	shall have its
		 own copy of the message queue descriptors of the
		 parent	process.  Each of the message queue
		 descriptors of	the child shall	refer to the same open
		 message queue description as the corresponding
		 message queue descriptor of the parent.

     Untestable	Aspects
	  1    If _POSIX_ASYNCHRONOUS_IO is defined:
		 On a call to fork() no	asynchronous input or
		 asynchronous output operations	shall be inherited by
		 the child.
		 Reason	for omission: There is no reliable test	method
		 for this assertion.

     RELEASE
	  Release LSB-OS
	  Copyright (c)	1997 X/Open Company Ltd., A member of The Open
	  Group.
	  All rights reserved























     Page 2					    (printed 2/21/103)



