ó éíòRc @sjdZddlZddlZddlZddlZddlZddlZddlmZddl m Z m Z m Z ddl mZmZddlTgZyejƒZWn'ek rÙdZejdeƒnXyejƒZWn'ek rdZejdeƒnXyejƒd ZWn'ek rQdZejd eƒnXejd ƒZed d ƒZejZeddjddddddddgƒƒZ d„Z!d„Z"d„Z#d„Z$e%d„Z&d„Z'ej(Z(ej)Z)ej*Z*ej+Z,ej-Z.d„Z/ie0ej16e2ej36e4ej56e6ej76e8ej96Z:de;fd „ƒYZ<dS(!sOSX platform implementation.iÿÿÿÿN(t_psposix(t AccessDeniedt NoSuchProcesstTimeoutExpired(t namedtupletwraps(t*s&couldn't determine platform's NUM_CPUSs'couldn't determine platform's BOOT_TIMEis*couldn't determine platform's TOTAL_PHYMEMt SC_PAGE_SIZEtcputimessuser nice system idletvmemt ttotalt availabletpercenttusedtfreetactivetinactivetwiredc Csktjƒ\}}}}}||}|||}t|||ddƒ}t||||||||ƒS(s&System virtual memory as a namedtuple.t_roundi(t _psutil_osxtget_virtual_memt usage_percenttnt_virtmem_info(R RRRRtavailRR ((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pytvirtual_memory;s  cCsItjƒ\}}}}}t||ddƒ}t||||||ƒS(s=Swap system memory as a (total, used, free, sin, sout) tuple.Ri(Rt get_swap_memRtnt_swapmeminfo(R RRtsintsoutR ((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pyt swap_memoryDscCs+tjƒ\}}}}t||||ƒS(s(Return system CPU times as a namedtuple.(Rtget_system_cpu_timest_cputimes_ntuple(tusertnicetsystemtidle((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pyRJscCsUg}xHtjƒD]:}|\}}}}t||||ƒ}|j|ƒqW|S(s(Return system CPU times as a named tuple(Rtget_system_per_cpu_timesR tappend(trettcpu_tR!R"R#R$titem((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pyR%Os c Cs¥g}tjƒ}xŒ|D]„}|\}}}}|dkrFd}n|s{tjj|ƒ stjj|ƒ r{qq{nt||||ƒ}|j|ƒqW|S(Ntnonet(Rtget_disk_partitionstostpathtisabstexistst nt_partitionR&( talltretlistt partitionst partitiontdevicet mountpointtfstypetoptstntuple((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pytdisk_partitionsXs     cCs…g}tjƒ}xl|D]d}|\}}}}|dkrCqn|sOqnt||p^d|pgd|ƒ}|j|ƒqW|S(Nt~(Rtget_system_userstnt_usertNoneR&(R3trawlistR)R!tttythostnamettstamptnt((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pyR=gs   !cstˆƒ‡fd†ƒ}|S(s`Decorator which translates bare OSError exceptions into NoSuchProcess and AccessDenied. csœyˆ|||ŽSWntk r—tjƒd}|jtjkr^t|j|jƒ‚n|jtjtj fkr‘t |j|jƒ‚n‚nXdS(Ni( tOSErrortsystexc_infoterrnotESRCHRtpidt _process_nametEPERMtEACCESR(tselftargstkwargsterr(tfun(s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pytwrappers (R(RRRS((RRs@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pytwrap_exceptions}s tProcesscBs¯eZdZddgZd„Zed„ƒZed„ƒZed„ƒZed„ƒZ ed„ƒZ ed „ƒZ ed „ƒZ ed „ƒZ ed „ƒZed dƒZed„ƒZed„ƒZed„ƒZed„ƒZed„ƒZed„ƒZedd„ƒZed„ƒZed!d„ƒZed„ƒZed„ƒZed„ƒZed„ƒZeddƒZeddƒZ ed „ƒZ!RS("s1Wrapper class around underlying C implementation.RJRKcCs||_d|_dS(N(RJR?RK(RNRJ((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pyt__init__œs cCstj|jƒS(s4Return process name as a string of limited len (15).(Rtget_process_nameRJ(RN((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pyRW scCstj|jƒS(N(Rtget_process_exeRJ(RN((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pyRX¥scCs7t|jƒs't|j|jƒ‚ntj|jƒS(s.Return process cmdline as a list of arguments.(t pid_existsRJRRKRtget_process_cmdline(RN((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pyRZ©scCstj|jƒS(sReturn process parent pid.(Rtget_process_ppidRJ(RN((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pyR[°scCstj|jƒS(N(Rtget_process_cwdRJ(RN((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pyR\µscCs+tj|jƒ\}}}t|||ƒS(N(Rtget_process_uidsRJtnt_uids(RNtrealt effectivetsaved((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pyR]¹scCs+tj|jƒ\}}}t|||ƒS(N(Rtget_process_gidsRJtnt_gids(RNR_R`Ra((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pyRb¾scCsCtj|jƒ}tjƒ}y ||SWntk r>dSXdS(N(Rtget_process_tty_nrRJRt_get_terminal_maptKeyErrorR?(RNttty_nrttmap((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pytget_process_terminalÃs    cCs)tj|jƒd \}}t||ƒS(s2Return a tuple with the process' RSS and VMS size.i(Rtget_process_memory_infoRJt nt_meminfo(RNtrsstvms((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pytget_memory_infoÌstmeminfosrss vms pfaults pageinscCs<tj|jƒ\}}}}|j|||t|tƒS(s2Return a tuple with the process' RSS and VMS size.(RRjRJt _nt_ext_memt _PAGESIZE(RNRlRmtpfaultstpageins((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pytget_ext_memory_infoÔs cCs%tj|jƒ\}}t||ƒS(N(Rtget_process_cpu_timesRJt nt_cputimes(RNR!R#((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pyt get_cpu_timesÜscCstj|jƒS(sTReturn the start time of the process as a number of seconds since the epoch.(Rtget_process_create_timeRJ(RN((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pyRxáscCsttj|jƒŒS(N(tnt_ctxswRtget_process_num_ctx_switchesRJ(RN((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pytget_num_ctx_switchesçscCstj|jƒS(s6Return the number of threads belonging to the process.(Rtget_process_num_threadsRJ(RN((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pyR|ëscCsq|jdkrgSg}tj|jƒ}x?|D]7\}}t|ƒr2t||ƒ}|j|ƒq2q2W|S(sReturn files opened by process.i(RJRtget_process_open_filest isfile_strictt nt_openfileR&(RNtfilesR@R.tfdR:((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pytget_open_filesðs tinetcCsŒ|tkrGtd|djgtD]}t|ƒ^q"ƒfƒ‚nt|\}}tj|j||ƒ}g|D]}t|Œ^qvS(sXReturn etwork connections opened by a process as a list of namedtuples. s+invalid %r kind argument; choose between %ss, (t conn_tmapt ValueErrortjointreprRtget_process_connectionsRJt nt_connection(RNtkindtxtfamiliesttypesR'tconn((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pytget_connectionsýs  5cCs#|jdkrdStj|jƒS(Ni(RJRtget_process_num_fds(RN((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pyt get_num_fds scCsDytj|j|ƒSWn&tk r?t|j|jƒ‚nXdS(N(Rtwait_pidRJRRK(RNttimeout((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pyt process_waits cCstj|jƒS(N(t _psutil_posixt getpriorityRJ(RN((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pytget_process_nicescCstj|j|ƒS(N(R•t setpriorityRJ(RNtvalue((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pytset_process_nicescCs3tj|jƒ}|tkr&t|StddƒS(Niÿÿÿÿt?(Rtget_process_statusRJt _status_maptconstant(RNtcode((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pyRœs cCsUtj|jƒ}g}x6|D].\}}}t|||ƒ}|j|ƒqW|S(s6Return the number of threads belonging to the process.(Rtget_process_threadsRJt nt_threadR&(RNR@R3t thread_idtutimetstimeR:((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pyR %s tmmaps7path rss private swapped dirtied ref_count shadow_depthsBaddr perms path rss private swapped dirtied ref_count shadow_depthcCstj|jƒS(N(Rtget_process_memory_mapsRJ(RN((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pytget_memory_maps4sN("t__name__t __module__t__doc__t __slots__RVRTRWRXRZR[R\R]RbRiRnRRpRtRwRxR{R|R‚RR‘R?R”R—RšRœR tnt_mmap_groupedt nt_mmap_extR§(((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pyRU—sB        (=RªRHR-RFtwarningsRR•tpsutilRt psutil._errorRRRtpsutil._compatRRtpsutil._commont__extra__all__t get_num_cpustNUM_CPUSt ExceptionR?twarntRuntimeWarningtget_system_boot_timet BOOT_TIMERt TOTAL_PHYMEMtsysconfRqR R†RRRRR%tFalseR;R=t get_pid_listRYtget_disk_usagetget_network_io_counterstnetwork_io_counterstget_disk_io_counterstdisk_io_countersRTt STATUS_IDLEtSIDLtSTATUS_RUNNINGtSRUNtSTATUS_SLEEPINGtSSLEEPtSTATUS_STOPPEDtSSTOPt STATUS_ZOMBIEtSZOMBRtobjectRU(((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pytsj