
    Xh|                     
   d Z ddlZddlZddlZddlZddlmZ ddlmZ ddlm	Z	 ddl
mZ ddl
mZ dd	l
mZ dd
l
mZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ g Zerej<                  ej>                  ej@                  ejB                  ejD                  ejF                  ejH                  ejJ                  ejL                  ejN                  ejP                  ejR                  ejT                  ejV                  iZ,n'erej<                  ej>                  ejD                  ejF                  ejH                  ejJ                  ejZ                  ejN                  ejL                  ejN                  ej@                  ej\                  ej^                  ejB                  iZ,nerej<                  ej>                  ejD                  ejF                  ejH                  ejJ                  ejL                  ejN                  ej@                  ej\                  ej^                  ejB                  iZ,ej`                  ejb                  ejd                  ejf                  ejh                  ejj                  ejl                  ejn                  ejp                  ejr                  ejt                  ejv                  ejx                  ejz                  ej|                  ej~                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  iZH ej                         ZJej                  ZK eLed      ZM eLed      ZN eLed      ZO eLed      ZP eQdvi dddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJZR edKg dL      ZS edMg dN      ZT edOg dP      ZUeUZV edQg dR      ZW edSdT      ZX edUdV      ZYer edWg dX      ZZn edWg dY      ZZdZ Z[d[ Z\d\ Z]eMrd] Z^n
d^ Z^d_e^__        d` Z`eserda Zandb Zadc Zberdd Zcnerde ZcdwdfZdej                  Zeej                  Zfej                  Zgej                  Zhdg Zidh Zjerdi Zkdj Zldk Zmdl Znedm        Zodn Zperdo Zqnerdp Zqnej                  Zqdq Zrdr Zsej                  ds        Zu G dt du      Zvy)xz5FreeBSD, OpenBSD and NetBSD platforms implementation.    N)defaultdict)
namedtuple)ElementTree   )_common)_psposix)_psutil_bsd)_psutil_posix)FREEBSD)NETBSD)OPENBSD)AccessDenied)NoSuchProcess)ZombieProcess)	conn_tmap)conn_to_ntuple)debug)memoize)memoize_when_activated)usage_percentper_cpu_timesproc_num_threadsproc_open_filesproc_num_fdsppidstatusreal_uid   effective_uid   	saved_uid   real_gid   effective_gid   	saved_gid   ttynr   create_time	   ctx_switches_vol
   ctx_switches_unvol   read_io_count   write_io_count   	user_time   sys_time   ch_user_time   ch_sys_time   rss   vms   memtext   memdata   memstack   cpunum   name   svmem)total	availablepercentusedfreeactiveinactivebufferscachedsharedwired	scputimesusernicesystemidleirqpmem)r=   r?   textdatastack	pcputimes)rY   r[   children_userchildren_systempmmap_grouped*path rss, private, ref_count, shadow_count	pmmap_ext6addr, perms path rss, private, ref_count, shadow_countsdiskio)
read_countwrite_count
read_byteswrite_bytes	read_time
write_time	busy_time)rj   rk   rl   rm   c                     t        j                         } t        r| \  }}}}}}t        dd      5 }|D ]d  }|j	                  d      r t        |j                         d         dz  }	4|j	                  d      sFt        |j                         d         dz  }
f 	 d d d        ||z   }||z
  }n| \  }}}}}}}	}
||z   |z   }||z   |z   }t        ||z
  |d      }t        |||||||	|
|      S # 1 sw Y   UxY w)Nz/proc/meminforbs   Buffers:r   i   s
   MemShared:round_)	cextvirtual_memr   open
startswithintsplitr   rK   )memrL   rP   rQ   rR   rV   rT   flinerS   rU   rO   availrN   s                 Y/var/www/html/cjf29f/d23bf782/d32178f2/venv/lib/python3.12/site-packages/psutil/_psbsd.pyvirtual_memoryr      s*   



C7:4tVXuf /4( 	9A 9??;/!$**,q/2T9G__]3 a1D8F	9	9 ~HKEtVXufgv 6!D(~&UU]U1=G 5	9 	9s   AC/9!C//C8c                      t        j                         \  } }}}}t        || d      }t        j                  | |||||      S )z@System swap memory as (total, used, free, sin, sout) namedtuple.r   rs   )ru   swap_memr   r   sswap)rL   rO   rP   sinsoutrN   s         r   swap_memoryr      s?    #'==? E4sDD%2G==dGS$??    c                  T    t        j                         \  } }}}}t        | ||||      S )z,Return system per-CPU times as a namedtuple.)ru   	cpu_timesrW   rX   s        r   r   r      s,    $(NN$4!D$cT4s33r   c                      g } t        j                         D ]*  }|\  }}}}}t        |||||      }| j                  |       , | S )(Return system CPU times as a namedtuple.)ru   r   rW   append)retcpu_trY   rZ   r[   r\   r]   items           r   r   r      sT    '') 	E,1)D$cT4s;DJJt	 
r   c                      t               dk(  rt               gS t        j                  rd} t	        |       dt        _        t               gS )r   r   &supported only starting from FreeBSD 8T)cpu_count_logicalr   r   
__called__NotImplementedError)msgs    r   r   r     sB    !#K= ##:C%c**#' }r   Fc                  *    t        j                         S )z0Return the number of logical CPUs in the system.)ru   r    r   r   r   r     s    !!##r   c                  $    t               dk(  rdS d S )Nr   )r   r   r   r   cpu_count_coresr     s    %'1,q6$6r   c                  D   d} t        j                         }|b|j                  d      }|dk7  rL|d|dz    }t        j                  |      }	 t        |j                  d            xs d} |j                          | st               dk(  ry| S # |j                          w xY w)z-Return the number of CPU cores in the system.Nz	</groups>r,   zgroup/children/group/cpur   )	ru   cpu_topologyrfindr   
fromstringlenfindallclearr   )r   sindexroots       r   r   r      s     =GGK(E{k	N"--a0!dll+EFGO4C JJL "a'
 JJLs   B Bc                     t         rt        j                         \  } }}}}nt        rht        j                         \  } }}}}}}t	        dd      5 }|D ]0  }|j                  d      st        |j                         d         }2 	 ddd       n"t        rt        j                         \  } }}}}}}t        j                         S # 1 sw Y   !xY w)z*Return various CPU stats as a named tuple.z
/proc/statrr   s   intrr   N)r   ru   	cpu_statsr   rw   rx   ry   rz   r   r   	scpustats)	ctxswintrs
soft_intrssyscalls_traps_faults_forksr|   r}   s	            r   r   r   ;  s     6:^^5E2uj(F	 NN 	Duj(FGV ,% 	1 1??7+

Q0E1	1 	1 
 NN 	Duj(FGV UE:x@@	1 	1s   C
(C

Cc                     g } t               }t        |      D ]  }	 t        j                  |      \  }}|r`	 t        |j                  d      d   j                  d      d         }	 t        |j                  d      d   j                  d      d         }| j                  t        j                  |              | S # t        $ r Y w xY w# t        t        f$ r d}Y |w xY w# t        t        f$ r d}Y cw xY w)zReturn frequency metrics for CPUs. As of Dec 2018 only
        CPU 0 appears to be supported by FreeBSD and all other cores
        match the frequency of CPU 0.
         r   /r   N)r   rangeru   cpu_freqr   ry   rz   
IndexError
ValueErrorr   r   scpufreq)r   num_cpuscpucurrentavailable_freqmin_freqmax_freqs          r   r   r   ]  s   
 $&? 	FC*.--*<' $">#7#7#<R#@#F#Fs#KA#NOH$">#7#7#<Q#?#E#Ec#J1#MNH JJw''8DE	F 
 ' 
 #J/ $#H$ #J/ $#H$s4   C /C'/C& 	CCC#"C#&C:9C:c                  l    t        t        j                               } t        j                  | dd      gS )Ng        )floatru   r   r   r   )currs    r   r   r   w  s*    T]]_%  sC011r   c                     g }t        j                         }|D ]2  }|\  }}}}t        j                  ||||      }|j	                  |       4 |S )zReturn mounted disk partitions as a list of namedtuples.
    'all' argument is ignored, see:
    https://github.com/giampaolo/psutil/issues/906.
    )ru   disk_partitionsr   	sdiskpartr   )	allretlist
partitions	partitiondevice
mountpointfstypeoptsntuples	            r   r   r     s]    
 G%%'J 	+4(
FD""6:vtDv Nr   c                     t               j                         } i }| D ]  }	 t        j                  |      }t        j                  |      }t        j
                  |      \  }}t        t        d      rt        j                  |      }dj                  |      }d|v }t        j                  |||||      ||<    |S # t        $ r(}	|	j                  t        j                  k7  r Y d}	~	d}	~	ww xY w)z)Get NIC stats (isup, duplex, speed, mtu).	NicDuplex,runningN)net_io_counterskeys
cext_posix
net_if_mtunet_if_flagsnet_if_duplex_speedhasattrr   r   join	snicstatsOSErrorerrnoENODEV)
namesr   rI   mtuflagsduplexspeedoutput_flagsisuperrs
             r   net_if_statsr     s    ""$E
C 	''-C++D1E&::4@MFE w, **6288E?L%D))feS,CI" J  	yyELL( )	s   AB==	C.C))C.c                 V   t         |    \  }}t               }t        rt        j                  d||      }n3t
        rt        j                  d|       }nt        j                  ||      }|D ]3  }|\  }}}}	}
}}t        ||||	|
|t        |      }|j                  |       5 t        |      S )z System-wide network connections.r   )
r   setr   ru   net_connectionsr   r   TCP_STATUSESaddlist)kindfamiliestypesr   rawlistr   fdfamtypeladdrraddrr   pidnts                 r   r   r     s    oOHe
%C&&r8U;	&&r40&&x7 370CueVST5%s
 	 9r   c                      	 t        j                         \  } }}|dk(  }|rt        j                  }n|dk(  rt        j
                  }n|dz  }t        j                  | ||      S # t        $ r Y yw xY w)zReturn battery info.Nr   r   <   )ru   sensors_batteryr   r   POWER_TIME_UNLIMITEDPOWER_TIME_UNKNOWNsbattery)rN   minsleftpower_pluggedsecslefts       r   r   r     sz    	/3/C/C/E,GX} &*33H^11H"}H=AA # 		s   A$ $	A0/A0c            	         t        t              } t               }t        |      D ]Q  }	 t	        j
                  |      \  }}|dk  rd}d| }| d   j                  t        j                  ||||             S | S # t        $ r Y aw xY w)z?Return CPU cores temperatures if available, else an empty dict.r   NzCore coretemp)
r   r   r   r   ru   sensors_cpu_temperaturer   r   shwtempr   )r   r   r   r   highrI   s         r   sensors_temperaturesr    s    $$&? 
	C	 $ < <S A19Dse}J&&OOD'4>
	 
 ' s   AA;;	BBc                  *    t        j                         S )z:The system boot time expressed in seconds since the epoch.)ru   	boot_timer   r   r   r  r    s    >>r   c                      g } t        j                         }|D ]M  }|\  }}}}}|dk(  r
t        sJ d}|dk(  r t        j                  ||xs d|||      }| j                  |       O | S )z:Return currently connected users as a list of namedtuples.r   N~)ru   usersr   r   suserr   )	r   r   r   rY   ttyhostnametstampr   r   s	            r   r	  r	    s{    GjjlG +/(c8VS"9N7C#:]]4hDr Nr   c                  j    	 t        d      j                          y# t        $ r Y yt        $ r Y yw xY w)Nr   TF)ProcessrI   r   r   r   r   r   _pid_0_existsr    s9    
    s    	222c                  z    t        j                         } t        r d| vrt               r| j	                  dd       | S )z7Returns a list of PIDs currently running on the system.r   )ru   pidsr   r  insert)r   s    r   r  r    s/    
))+CASLmo 	

1aJr   c                 J    t        j                  |       }|s| t               v S y)NTr   
pid_existsr  r   existss     r   r  r  )  s&    $$S) $&= r   c                 J    t        j                  |       }|sy| t               v S )NFr  r  s     r   r  r  4  s&    $$S)
 $&= r   c                     	 t        j                  |       t        d      }t        j	                  |      t
        j                  k(  S # t        $ r Y yw xY w)Nr   F)ru   proc_oneshot_infokinfo_proc_mapPROC_STATUSESgetr   STATUS_ZOMBIEr   )r   sts     r   	is_zombier!  B  sO    ##C()AB  $(=(=== s   AA 	AAc                 B     t        j                          fd       }|S )z`Decorator which translates bare OSError exceptions into
    NoSuchProcess and AccessDenied.
    c                 \   | j                   | j                  | j                  }}}	  | g|i |S # t        $ r+}t	        |      rt        |||      |t        ||      |d }~wt        $ r}t        ||      |d }~wt        $ r$}|dk(  rdt               v rt        ||      | d }~ww xY w)Nr   )r   _ppid_nameProcessLookupErrorr!  r   r   PermissionErrorr   r   r  )selfargskwargsr   r   rI   r   funs          r   wrapperz wrap_exceptions.<locals>.wrapperO  s    ((DJJ

4T	t-d-f--! 	4~#Ct4#=T*3 	3sD)s2 	axAK"3-36	s,   3 	B+&A""B+.A;;B+B&&B+)	functoolswraps)r+  r,  s   ` r   wrap_exceptionsr/  J  s'    
 __S  Nr   c              #     K   | j                   | j                  | j                  }}}	 d y# t        t        f$ r5}t        | j                         rt        |||      |t        ||      |d}~wt        $ r}t        ||      |d}~ww xY ww)z8Same as above, for routines relying on reading /proc fs.N)
r   r%  r$  r&  FileNotFoundErrorr!  r   r   r'  r   )instr   rI   r   r   s        r   wrap_exceptions_procfsr3  b  s      hh

DJJtC/ 12 4 TXXT40c9T*3 /3%3./s0   %B- BB
0A,,B
8BB

Bc                   \   e Zd ZdZg dZd Zd Zeed               Z	d Z
d Zed        Zed	        Zed
        Zed        Zed        Zed        Zed        Zed        Zed        Zered        Zed        ZeZed        Zed        Zed        Zed        Zed)d       Zed*d       Zed        Zed        Z ed        Z!ed        Z"ed        Z# e$dd       Z% e$dd!      Z&d" Z'e(r	ed#        Z)ne'Z)e*r	ed$        Z+ne'Z+er"ed%        Z,ed&        Z-ed'        Z.ed*d(       Z/yy)+r  z1Wrapper class around underlying C implementation.)_cacher%  r$  r   c                 .    || _         d | _        d | _        y N)r   r%  r$  )r(  r   s     r   __init__zProcess.__init__y  s    

r   c                 B    t        j                  | j                         y)z+Raise NSP if the process disappeared on us.N)ru   	proc_namer   r(  s    r   _assert_alivezProcess._assert_alive~  s     	txx r   c                 ~    t        j                  | j                        }t        |      t        t              k(  sJ |S )z;Retrieves multiple process info in one shot as a raw tuple.)ru   r  r   r   r  r(  r   s     r   oneshotzProcess.oneshot  s4     $$TXX.3x3~....
r   c                 :    | j                   j                  |        y r7  )r?  cache_activater;  s    r   oneshot_enterzProcess.oneshot_enter  s    ##D)r   c                 :    | j                   j                  |        y r7  )r?  cache_deactivater;  s    r   oneshot_exitzProcess.oneshot_exit  s    %%d+r   c                 |    | j                         t        d      }||S t        j                  | j                        S )NrI   )r?  r  ru   r:  r   )r(  rI   s     r   rI   zProcess.name  s4    ||~nV45'tET^^DHH-EEr   c                 ~   t         r/| j                  dk(  ryt        j                  | j                        S t        rH| j                  dk(  ryt        |       5  t        j                  d| j                   d      cd d d        S dd l}| j                         }|r|j                  |d         xs dS y# 1 sw Y   y xY w)Nr    z/proc/z/exe)r   r   ru   proc_exer   r3  osreadlinkshutilcmdlinewhich)r(  rL  rM  s      r   exezProcess.exe  s    xx1}==**xx1}'- <{{VDHH:T#:;< < llnG||GAJ/525< <s   #B33B<c                    t         r| j                  dk(  rg S t        r 	 t        j                  | j                        S t        j                  | j                        S # t
        $ r}|j                  t        j                  k(  r| j                  | j                  | j                  }}}t        | j                        rt        |||      |t        | j                        st        |||      |t        d|d       g cY d }~S  d }~ww xY w)Nr   z	ignoring z and returning an empty list)r   r   r   ru   proc_cmdliner   r   EINVALr%  r$  r!  r   r  r   r   )r(  r   r   rI   r   s        r   rM  zProcess.cmdline  s    txx1}I
((22 $$TXX..  99,&*hh

DJJtC *+Ct<#E%dhh/+Ct<#E IcW,HIJIs$   A 	D	&BD=D	DD	c                 @    t        j                  | j                        S r7  )ru   proc_environr   r;  s    r   environzProcess.environ  s      **r   c                     | j                         t        d      }t        j                         }	 ||   S # t        $ r Y y w xY w)Nr)   )r?  r  r   get_terminal_mapKeyError)r(  tty_nrtmaps      r   terminalzProcess.terminal  sF    w 78((*	< 		s   5 	A Ac                 X    | j                         t        d      | _        | j                  S )Nr   )r?  r  r$  r;  s    r   r   zProcess.ppid  s#    \\^N6$:;
zzr   c                     | j                         }t        j                  |t        d      |t        d      |t        d            S )Nr   r   r!   )r?  r   puidsr  r(  rawtuples     r   uidszProcess.uids  E    <<>}}^J/0^O45^K01
 	
r   c                     | j                         }t        j                  |t        d      |t        d      |t        d            S )Nr#   r%   r'   )r?  r   pgidsr  r_  s     r   gidszProcess.gids  rb  r   c                     | j                         }t        j                  |t        d      |t        d      |t        d      |t        d            S )Nr5   r7   r9   r;   )r?  r   rb   r  r_  s     r   r   zProcess.cpu_times  sT    <<>  ^K01^J/0^N34^M23	
 	
r   c                 6    | j                         t        d      S )NrG   r?  r  r;  s    r   cpu_numzProcess.cpu_num  s    <<>.":;;r   c           	          | j                         }t        |t        d      |t        d      |t        d      |t        d      |t        d            S )Nr=   r?   rA   rC   rE   )r?  r^   r  r_  s     r   memory_infozProcess.memory_info   s[    <<>^E*+^E*+^I./^I./^J/0
 	
r   c                 6    | j                         t        d      S )Nr+   rh  r;  s    r   r+   zProcess.create_time  s    ||~n];<<r   c                 ~    t         rt        j                  | j                        S t	        | j                               S r7  )HAS_PROC_NUM_THREADSru   r   r   r   threadsr;  s    r   num_threadszProcess.num_threads  s+    ((22t||~&&r   c                 v    | j                         }t        j                  |t        d      |t        d            S )Nr-   r/   )r?  r   pctxswr  r_  s     r   num_ctx_switcheszProcess.num_ctx_switches  s:    <<>~~^$678^$89:
 	
r   c                     t        j                  | j                        }g }|D ].  \  }}}t        j                  |||      }|j                  |       0 t        r| j                          |S r7  )ru   proc_threadsr   r   pthreadr   r   r<  )r(  r   r   	thread_idutimestimer   s          r   ro  zProcess.threads!  sg     ##DHH-'. 	##Iue__Yu=FNN6"	#  r   c           
         t         |   \  }}g }t        r!t        j                  | j                  |      }nIt
        r"t        j                  | j                  ||      }n!t        j                  | j                  ||      }|D ]C  }|d d \  }}}	}
}}t        r	||vs|	|vrt        |||	|
||t              }|j                  |       E | j                          |S )Nr&   )r   r   ru   r   r   r   proc_net_connectionsr   r   r   r   r<  )r(  r   r   r   r   r   r   r   r   r   r   r   r   r   s                 r   r   zProcess.net_connections-  s    #D/%**488T:G**488XuEG//(EJG 	D26r(/BT5%x'T->CueV\B JJrN	 	
r   Nc                 X    t        j                  | j                  || j                        S r7  )r   wait_pidr   r%  )r(  timeouts     r   waitzProcess.waitF  s      7DJJ??r   c                 @    t        j                  | j                        S r7  )r   getpriorityr   r;  s    r   nice_getzProcess.nice_getJ  s    %%dhh//r   c                 B    t        j                  | j                  |      S r7  )r   setpriorityr   )r(  values     r   nice_setzProcess.nice_setN  s    %%dhh66r   c                 b    | j                         t        d      }t        j                  |d      S )Nr   ?)r?  r  r  r  )r(  codes     r   r   zProcess.statusR  s*    ||~nX67  s++r   c                 z    | j                         }t        j                  |t        d      |t        d      dd      S )Nr1   r3   r   )r?  r   pior  r_  s     r   io_counterszProcess.io_countersX  s?    <<>{{^O45^$456	
 	
r   c                     t         r| j                  dk(  ryt        st        rt	        j
                  | j                        S t        t        rd      d      )z)Return process current working directory.r   rH  r   )r   r   r   HAS_PROC_OPEN_FILESru   proc_cwdr   r   r;  s    r   cwdzProcess.cwdb  sO    
 txx1}* ==**%<C8 IK r   mmaprf   rh   c                     t         r7  )r   r;  s    r   _not_implementedzProcess._not_implementedy  s    !!r   c                     t        j                  | j                        }|D cg c]  \  }}t        j                  ||       c}}S c c}}w )z8Return files opened by process as a list of namedtuples.)ru   r   r   r   	popenfile)r(  r   pathr   s       r   
open_fileszProcess.open_files  s=     **4884G@GHHD"G%%dB/HHHs    A	c                 p    t        j                  | j                        }t        r| j	                          |S )z=Return the number of file descriptors opened by this process.)ru   r   r   r   r<  r>  s     r   num_fdszProcess.num_fds  s,     ##DHH-C""$Jr   c                 @    t        j                  | j                        S r7  )ru   proc_cpu_affinity_getr   r;  s    r   cpu_affinity_getzProcess.cpu_affinity_get  s    --dhh77r   c                    t        t        t        t                                 }|D ]  }||vsd|d| d}t	        |       	 t        j                  | j                  |       y # t        $ rR}|j                  t        j                  t        j                  hv r |D ]  }||vsd|d| d}t	        |      |  d }~ww xY w)Nzinvalid CPU z (choose between ))r   r   r   r   r   ru   proc_cpu_affinity_setr   r   r   rR  EDEADLK)r(  cpusallcpusr   r   r   s         r   cpu_affinity_setzProcess.cpu_affinity_set  s    
 %MO 456G *g%(/@	KC$S/)***488T: 
 99u}} ==# ;g-".sg 6$$+9A!/   #-S/s:; s    A' '	C05B=&B==Cc                 @    t        j                  | j                        S r7  )ru   proc_memory_mapsr   r;  s    r   memory_mapszProcess.memory_maps  s    ((22r   c                     | t        j                  | j                  |      S t        |      dk7  rd|}t	        |      |\  }}t        j
                  | j                  |||      S )Nr   z2second argument must be a (soft, hard) tuple, got )ru   proc_getrlimitr   r   r   proc_setrlimit)r(  resourcelimitsr   softhards         r   rlimitzProcess.rlimit  sn    ~**488X>>v;!#":'  %S/)#
d**488XtTJJr   )inetr7  )0__name__
__module____qualname____doc__	__slots__r8  r<  r/  r   r?  rB  rE  rI   rO  rM  rU  r[  r   ra  re  r   r   ri  rk  memory_full_infor+   rp  rs  ro  r   r  r  r  r   r  r  r   nt_mmap_groupednt_mmap_extr  r  r  HAS_PROC_NUM_FDSr  r  r  r  r  r   r   r   r  r  t  s   ;3I
!   *, F F  2 / /4 + +     
 
 
 
 
 
 		< 
	< 
 
 #= = ' ' 
 
 	 	  0 @ @ 0 0 7 7 , ,
 
 
   !<O HK"
 		I 
	I &
 		 
	 # 		8 
	8 
	 
	4 
	3 
	3 
	K 
	KM r   r  r   )F)wr  
contextlibr   r-  rJ  collectionsr   r   	xml.etreer   rH  r   r   r	   ru   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   __extra__all__SIDLSTATUS_IDLESRUNSTATUS_RUNNINGSSLEEPSTATUS_SLEEPINGSSTOPSTATUS_STOPPEDSZOMBr  SWAITSTATUS_WAITINGSLOCKSTATUS_LOCKEDr  SDEADSTATUS_WAKINGSONPROCTCPS_ESTABLISHEDCONN_ESTABLISHEDTCPS_SYN_SENTCONN_SYN_SENTTCPS_SYN_RECEIVEDCONN_SYN_RECVTCPS_FIN_WAIT_1CONN_FIN_WAIT1TCPS_FIN_WAIT_2CONN_FIN_WAIT2TCPS_TIME_WAITCONN_TIME_WAITTCPS_CLOSED
CONN_CLOSETCPS_CLOSE_WAITCONN_CLOSE_WAITTCPS_LAST_ACKCONN_LAST_ACKTCPS_LISTENCONN_LISTENTCPS_CLOSINGCONN_CLOSINGPSUTIL_CONN_NONE	CONN_NONEr   getpagesizePAGESIZEAF_LINKr   HAS_PER_CPU_TIMESrn  r  r  dictr  rK   rW   r^   pfullmemrb   re   rg   ri   r   r   r   r   r   r   r   r   r   r   
disk_usagedisk_io_countersr   net_if_addrsr   r   r   r  r  r	  r  r  r  r!  r/  contextmanagerr3  r  r   r   r   <module>r     s  
 <    	 # " !   ! )    ! " "  #   + "  		7&&		7))W,,

G**

G))

G**

G))M 		7&&W,,

G** 	

G))

G)) 			7((g,,'M* 		7&&W,,

G**

G))		7((g,,M 	733--G11'00'00//g(('11--g))w++7,, ":!!#


D/2 t%78 d$56 40  	
  	
             !" #$ %& 	'( 	)* +, -. /0 12 
3H 	 L	M :<	 &AB{MO	 AC IK	  %2 3G
  %B CG,^@4 "  %M$
 f76A@ 0 2   
((  &&&&02 B 0
* 	 	 
 ! $$J0 / /"WK WKr   