|
Home About Us A-Z Index Search * Contact Us Register Login Press ShopThe Open Brand -- Problem Reporting and Interpretations System |
Problem Report 0478 Details Show help | Quick Search | Submit a Test Suite Support Request | Click here to view your privileges
This page provides all information on Problem Report 0478.
Report 0478 Actions
Problem Report Number 0478 Submitter's Classification Test Suite problem State Resolved Resolution Rejected (REJ) Problem Resolution ID REJ.X.0097 Raised 1994-12-08 08:00 Updated 2003-03-13 08:00 Published null Product Standard Internationalised System Calls and Libraries (XPG4) Certification Program The Open Brand certification program Test Suite VSX4 version 4.3.4 Test Identification XOPEN.os/time/clock 2 Problem Summary PG4R.098 In general the algorithm used by the test is: (open streams base log file) call clock() (to initialize) call time() (to get a base line) execute delay loops (to eat time) generate output to log file c... Problem Text
In general the algorithm used by the test is:
(open streams base log file)
call clock() (to initialize)
call time() (to get a base line)
execute delay loops (to eat time)
generate output to log file
call clock()
call time()
compare results.
What this algorithm does not account for is the possible delays and
asynchronous processing of of using streams i/o between time() call and
clock() call. Since stream i/o is buffered by the system, the process is not
charged for the i/o until the i/o actually occurs. When the i/o actually
happens is asynchronous to the process executing; as far as the process is
concerned the i/o has been completed and move on, meanwhile, the system has
buffered the i/o and will service it asynchrously to the process.
The faster the system the less likely the discrepancy will occur.
Also if the program is using non-streams base i/o then the problem
is less likely to occur.
If there's no i/o occuring during the critical time between the time
calls then the problem also goes away. The result of this test case may
become un-predictable.Test Output
/tset/XOPEN.os/time/clock/T.clock 2 Failed
Test Description:
The time reported is the sum of user and system times of the calling
process and terminated child processes for which it has executed
wait() or system().
(See PARAMETERS : VSX_CLOCK_ERR below)
Test Strategy:
CALL clock() and times(), saving CPU times given by times()
EXECUTE user and system code, using use_time() and sys_call()
CREATE child process
EXECUTE user and system code, using use_time() and sys_call()
VERIFY that the value returned by clock() agrees with the increase in
CPU times given by times() to within VSX_CLOCK_ERR percent
Test Information:
CPU time used as given by clock() does not correspond to value given by
times() within tolerance limits
CPU time as given by times is 140000 microseconds
CPU time as given by clock is 130000 microseconds
************************************************************************Review Information
Review Type TSMA Review Start Date null Completed null Status Complete Review Recommendation No Resolution Given Review Response
This test result is dependent on the VSX_CLOCK_ERR parameter which determines
the percentage variance allowed between the "times" and "clock" figures.
Modification of this parameter from the default value of five percent to
eight percent would cause the test to pass.
This cannot be considered to be a fault in the test suite and it is not
recommended that this waiver request is granted.
Review Type SA Review Start Date null Completed null Status Complete Review Resolution Rejected (REJ) Review Conclusion
This request is refused.
Problem Reporting System Options:
- View Report 0478
- List All PRs
- Search Reports
- Email the System Administrator
- View the The Open Brand Interpretations Database User Manual
Contact the Certification Authority