Changeset 9dae191e in mainline for uspace/lib/c


Ignore:
Timestamp:
2010-04-18T00:24:40Z (15 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
a80687e5
Parents:
d8e3467
Message:

sysinfo API cleanup

  • better support for generated subtrees
  • synchronization
  • memory management (generated items cleanup)
  • simplier sysinfo_dump()

remove separate statistical syscalls, replace with virtual sysinfo items (some functionality is still missing)

  • naming consolidation
  • cleaner API
  • proper synchronization

minor renames

  • zone_print_list() → zones_print_list()
  • zone_busy_and_free() → zones_stats()
Location:
uspace/lib/c
Files:
1 added
7 deleted
2 edited
1 moved

Legend:

Unmodified
Added
Removed
  • uspace/lib/c/Makefile

    rd8e3467 r9dae191e  
    9696        generic/stacktrace.c \
    9797        generic/arg_parse.c \
    98         generic/ps.c \
    99         generic/cpuinfo.c \
    100         generic/meminfo.c \
    101         generic/load.c \
    102         generic/uptime.c
     98        generic/stats.c
    10399
    104100SOURCES = \
  • uspace/lib/c/generic/sysinfo.c

    rd8e3467 r9dae191e  
    5858}
    5959
    60 extern void *sysinfo_get_data(const char *path, size_t *size)
     60void *sysinfo_get_data(const char *path, size_t *size)
    6161{
    6262        while (true) {
     
    7474                        return data;
    7575               
     76                free(data);
     77               
    7678                if (ret != ENOMEM)
    7779                        return NULL;
    78                
    79                 free(data);
    8080        }
    8181}
  • uspace/lib/c/include/stats.h

    rd8e3467 r9dae191e  
    3131 */
    3232/** @file
    33  */ 
     33 */
    3434
    35 #ifndef LIBC_PS_H_
    36 #define LIBC_PS_H_
     35#ifndef LIBC_STATS_H_
     36#define LIBC_STATS_H_
    3737
    3838#include <task.h>
    39 #include <kernel/ps/taskinfo.h>
    40 #include <kernel/ps/cpuinfo.h>
    41 #include <kernel/ps/meminfo.h>
     39#include <kernel/sysinfo/abi.h>
    4240
    43 extern int get_cpu_info(uspace_cpu_info_t *cpus);
    44 extern int get_mem_info(uspace_mem_info_t *meminfo);
    45 extern size_t get_task_ids(task_id_t *ids, size_t size);
    46 extern int get_task_info(task_id_t id, task_info_t *info);
    47 extern size_t get_task_threads(thread_info_t *infos, size_t size);
     41extern stats_cpu_t *get_stats_cpus(size_t *);
     42extern stats_physmem_t *get_stats_physmem(void);
     43extern task_id_t *get_stats_tasks(size_t *);
     44extern stats_task_t *get_stats_task(task_id_t);
     45extern load_t *get_stats_load(size_t *);
     46extern sysarg_t get_stats_uptime(void);
     47
     48extern void print_load_fragment(load_t, unsigned int);
    4849
    4950#endif
Note: See TracChangeset for help on using the changeset viewer.