Changeset bd41ac52 in mainline for uspace/app/tester/ipc/starve.c


Ignore:
Timestamp:
2018-08-25T22:21:25Z (6 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
cca80a2
Parents:
e2625b1a
Message:

Get rid of sys/time.h

This commit moves the POSIX-like time functionality from libc's
sys/time.h to libposix and introduces C11-like or HelenOS-specific
interfaces to libc.

Specifically, use of sys/time.h, struct timeval, suseconds_t and
gettimeofday is replaced by time.h (C11), struct timespec (C11), usec_t
(HelenOS) and getuptime / getrealtime (HelenOS).

Also attempt to fix the implementation of clock() to return microseconds
(clocks) rather than processor cycles and move it to libc.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/app/tester/ipc/starve.c

    re2625b1a rbd41ac52  
    2929#include <stdio.h>
    3030#include <stdlib.h>
    31 #include <sys/time.h>
     31#include <time.h>
    3232#include <io/console.h>
    3333#include <async.h>
     
    4343                return "Failed to init connection with console.";
    4444
    45         struct timeval start;
    46         gettimeofday(&start, NULL);
     45        struct timespec start;
     46        getuptime(&start);
    4747
    4848        TPRINTF("Intensive computation shall be imagined (for %ds)...\n", DURATION_SECS);
    4949        TPRINTF("Press a key to terminate prematurely...\n");
    5050        while (true) {
    51                 struct timeval now;
    52                 gettimeofday(&now, NULL);
     51                struct timespec now;
     52                getuptime(&now);
    5353
    54                 if (tv_sub_diff(&now, &start) >= DURATION_SECS * 1000000L)
     54                if (NSEC2SEC(ts_sub_diff(&now, &start)) >= DURATION_SECS)
    5555                        break;
    5656
    5757                cons_event_t ev;
    58                 suseconds_t timeout = 0;
     58                usec_t timeout = 0;
    5959                bool has_event = console_get_event_timeout(console, &ev, &timeout);
    6060                if (has_event && ev.type == CEV_KEY && ev.ev.key.type == KEY_PRESS) {
Note: See TracChangeset for help on using the changeset viewer.