ÿØÿàJFIFÿþ ÿÛC       ÿÛC ÿÀÿÄÿÄ"#QrÿÄÿÄ&1!A"2qQaáÿÚ ?Øy,æ/3JæÝ¹È߲؋5êXw²±ÉyˆR”¾I0ó2—PI¾IÌÚiMö¯–þrìN&"KgX:Šíµ•nTJnLK„…@!‰-ý ùúmë;ºgµŒ&ó±hw’¯Õ@”Ü— 9ñ-ë.²1<yà‚¹ïQÐU„ہ?.’¦èûbß±©Ö«Âw*VŒ) `$‰bØÔŸ’ëXÖ-ËTÜíGÚ3ð«g Ÿ§¯—Jx„–’U/ÂÅv_s(Hÿ@TñJÑãõçn­‚!ÈgfbÓc­:él[ðQe 9ÀPLbÃãCµm[5¿ç'ªjglå‡Ûí_§Úõl-;"PkÞÞÁQâ¼_Ñ^¢SŸx?"¸¦ùY騐ÒOÈ q’`~~ÚtËU¹CڒêV  I1Áß_ÿÙ Rc @sjdZddlZddlZddlZddlZddlZddlZddlmZddl m Z m Z m Z ddl mZmZddlTgZyejZWn'ek rdZejdenXyejZWn'ek rdZejdenXyejd ZWn'ek rQdZejd enXejd Zed d ZejZeddjddddddddgZ dZ!dZ"dZ#dZ$e%dZ&dZ'ej(Z(ej)Z)ej*Z*ej+Z,ej-Z.dZ/ie0ej16e2ej36e4ej56e6ej76e8ej96Z:de;fd YZ<dS(!sOSX platform implementation.iN(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}xHtjD]:}|\}}}}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 Csg}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     cCsg}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   !cstfd}|S(s`Decorator which translates bare OSError exceptions into NoSuchProcess and AccessDenied. csy|||SWntk rtjd}|jtjkr^t|j|jn|jtjtj fkrt |j|jnnXdS(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 tProcesscBseZdZddgZdZedZedZedZedZ edZ ed Z ed Z ed Z ed Zed dZedZedZedZedZedZedZeddZedZed!dZedZedZedZedZeddZeddZ 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|jS(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.pyRWscCstj|jS(N(Rtget_process_exeRJ(RN((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pyRXscCs7t|js't|j|jntj|jS(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.pyRZscCstj|jS(sReturn process parent pid.(Rtget_process_ppidRJ(RN((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pyR[scCstj|jS(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.pyRbscCsCtj|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_terminals    cCs)tj|jd \}}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_infostmeminfosrss vms pfaults pageinscCs<tj|j\}}}}|j|||t|tS(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_infos 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_timesscCstj|jS(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.pyRxscCsttj|jS(N(tnt_ctxswRtget_process_num_ctx_switchesRJ(RN((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pytget_num_ctx_switchesscCstj|jS(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_filess tinetcCs|tkrGtd|djgtD]}t|^q"fnt|\}}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_connectionss  5cCs#|jdkrdStj|jS(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|jnXdS(N(Rtwait_pidRJRRK(RNttimeout((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pyt process_waits cCstj|jS(N(t _psutil_posixt getpriorityRJ(RN((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pytget_process_nicescCstj|j|S(N(Rt setpriorityRJ(RNtvalue((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pytset_process_nicescCs3tj|j}|tkr&t|StddS(Nit?(Rtget_process_statusRJt _status_maptconstant(RNtcode((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pyRs 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|jS(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|RRRR?RRRRRtnt_mmap_groupedt nt_mmap_extR(((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psosx.pyRUsB        (=RRHR-RFtwarningsRRtpsutilRt psutil._errorRRRtpsutil._compatRRtpsutil._commont__extra__all__t get_num_cpustNUM_CPUSt ExceptionR?twarntRuntimeWarningtget_system_boot_timet BOOT_TIMERt TOTAL_PHYMEMtsysconfRqR RRRRRR%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