VirtualBox

Changeset 7360 in vbox


Ignore:
Timestamp:
Mar 7, 2008 1:23:19 PM (17 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
28783
Message:

quick adaption of system-os2.cpp into mp-os2.cpp.

Location:
trunk/src/VBox/Runtime
Files:
1 edited
1 moved

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Runtime/Makefile.kmk

    r7356 r7360  
    346346        generic/uuid-generic.cpp \
    347347        os2/RTErrConvertFromOS2.cpp \
     348        r3/os2/filelock-os2.cpp \
     349        r3/os2/mp-os2.cpp \
    348350        r3/os2/sched-os2.cpp \
    349351        r3/os2/sems-os2.cpp \
     
    351353        r3/os2/thread-os2.cpp \
    352354        r3/os2/time-os2.cpp \
    353         r3/os2/filelock-os2.cpp \
    354355        r3/posix/alloc-posix.cpp \
    355356        r3/posix/dir-posix.cpp \
  • trunk/src/VBox/Runtime/r3/os2/mp-os2.cpp

    r7357 r7360  
    11/* $Id$ */
    22/** @file
    3  * innotek Portable Runtime - System, OS/2.
     3 * innotek Portable Runtime - Multiprocessor, OS/2.
    44 */
    55
     
    3434#undef RT_MAX
    3535
    36 #include <iprt/system.h>
     36#include <iprt/mp.h>
     37#include <iprt/cpuset.h>
    3738#include <iprt/assert.h>
    3839
     40/** @todo RTMpCpuId() */
    3941
    40 RTDECL(unsigned) RTSystemProcessorGetCount(void)
     42RTDECL(int) RTMpCpuIdToSetIndex(RTCPUID idCpu)
     43{
     44    return idCpu < RTCPUSET_MAX_CPUS ? idCpu : -1;
     45}
     46
     47
     48RTDECL(RTCPUID) RTMpCpuIdFromSetIndex(int iCpu)
     49{
     50    return (unsigned)iCpu < RTCPUSET_MAX_CPUS ? iCpu : NIL_RTCPUID;
     51}
     52
     53
     54RTDECL(RTCPUID) RTMpGetMaxCpuId(void)
     55{
     56    return RTCPUSET_MAX_CPUS;
     57}
     58
     59
     60RTDECL(bool) RTMpIsCpuOnline(RTCPUID idCpu)
     61{
     62    RTCPUSET Set;
     63    return RTCpuSetIsMember(RTMpGetOnlineSet(&Set), idCpu);
     64}
     65
     66
     67RTDECL(bool) RTMpDoesCpuExist(RTCPUID idCpu)
     68{
     69    RTCPUSET Set;
     70    return RTCpuSetIsMember(RTMpGetSet(&Set), idCpu);
     71}
     72
     73
     74RTDECL(PRTCPUSET) RTMpGetSet(PRTCPUSET pSet)
     75{
     76    RTCPUID idCpu = RTMpGetCount();
     77    RTCpuSetEmpty(pSet);
     78    while (idCpu-- > 0)
     79        RTCpuSetAdd(pSet, idCpu);
     80    return pSet;
     81}
     82
     83
     84RTDECL(RTCPUID) RTMpGetCount(void)
    4185{
    4286    ULONG cCpus = 1;
     
    4892
    4993
    50 RTR3DECL(uint64_t) RTSystemProcessorGetActiveMask(void)
     94RTDECL(PRTCPUSET) RTMpGetOnlineSet(PRTCPUSET pSet);
    5195{
    5296    union
     
    59103    if (rc)
    60104        u.u64 = 1;
    61     return u.u64;
     105    return RTCpuSetFromU64(pSet, u.u64);
    62106}
    63107
     108
     109RTDECL(RTCPUID) RTMpGetOnlineCount(void)
     110{
     111    RTCPUSET Set;
     112    RTMpGetOnlineSet(&Set);
     113    return RTCpuSetCount(&Set);
     114}
     115
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette