Viewing File: /opt/hc_python/lib/python3.12/site-packages/psutil/__pycache__/_psosx.cpython-312.pyc

�

`�*j)>����dZddlZddlZddlZddlmZddlmZddlmZddlm	Z
ddlmZdd	lmZdd
lm
Z
ddlmZddlmZdd
lmZddlmZddlmZddlmZddlmZgZe
j,�Ze
j0Ze
j2ej4e
j6ej8e
j:ej<e
j>ej@e
jBejDe
jFejHe
jJejLe
jNejPe
jRejTe
jVejXe
jZej\e
j^ej`iZ1e
jdejfe
jhejje
jlejne
jpejre
jtejviZ<e=ddddddddddd��Z>e=dddddddd��Z?d�Z@d�ZAe
j�ZBe
j�ZCd�ZDd �ZEd!�ZFd"�ZGd#�ZHe
j��rd$�ZJej�ZKe
j�ZLd1d%�ZMd&�ZNe
j�ZOe
j�ZPd2d'�ZQd(�ZRd)�ZS	eS�ZTd+�ZWd,�ZXd-�ZYej�ZZd.�Z[Gd/�d0�Z\y#eU$rZVed*eV���dZTYdZV[V�:dZV[VwwxYw)3zmacOS platform implementation.�N�)�_common)�_ntuples)�_psposix)�_psutil_osx)�AccessDenied)�
NoSuchProcess)�
ZombieProcess)�	conn_tmap)�conn_to_ntuple)�debug)�
isfile_strict)�memoize_when_activated)�parse_environ_block)�
usage_percent��������	�
)�ppid�ruid�euid�suid�rgid�egid�sgid�ttynr�ctime�status�name)�cpuutime�cpustime�rss�vms�pfaults�pageins�
numthreads�volctxswc
��tj�\}}}}}}||z}||z}||z}t||z
|d��}tj||||||||�S)z&System virtual memory as a namedtuple.r��round_)�cext�virtual_memr�ntp�svmem)	�total�active�inactive�wired�free�speculative�avail�used�percents	         �>/opt/hc_python/lib64/python3.12/site-packages/psutil/_psosx.py�virtual_memoryr?[sq��8<�8H�8H�8J�5�E�6�8�U�D�+�
�t�O�E��E�>�D�	�K��D��U�U�]�U�1�=�G��9�9�
�u�g�t�T�6�8�U���c��tj�\}}}}}t||d��}tj||||||�S)z=Swap system memory as a (total, used, free, sin, sout) tuple.rr/)r1�swap_memrr3�sswap)r5r<r9�sin�soutr=s      r>�swap_memoryrFls?��#'�=�=�?� �E�4��s�D��D�%��2�G��9�9�U�D�$���d�;�;r@c�d�tj�\}}}}tj||||�S)z(Return system CPU times as a namedtuple.)r1�	cpu_timesr3�	scputimes)�user�nice�system�idles    r>rHrH}s,��#�~�~�/��D�$����=�=��t�V�T�2�2r@c��g}tj�D]2}|\}}}}tj||||�}|j	|��4|S)z)Return system CPU times as a named tuple.)r1�
per_cpu_timesr3rI�append)�ret�cpu_trJrKrLrM�items       r>rOrO�sO��
�C��#�#�%��#(� ��d�F�D��}�}�T�4���6���
�
�4��&��Jr@c�*�tj�S)z0Return the number of logical CPUs in the system.)r1�cpu_count_logical�r@r>rUrU�s���!�!�#�#r@c�*�tj�S)z-Return the number of CPU cores in the system.)r1�cpu_count_coresrVr@r>rXrX�s�����!�!r@c�f�tj�\}}}}}tj||||�S�N)r1�	cpu_statsr3�	scpustats)�ctx_switches�
interrupts�soft_interrupts�syscalls�_trapss     r>r[r[�s3������@�L�*�o�x���=�=��z�?�H�M�Mr@c�b�tj�\}}}tj|||�gS)z�Return CPU frequency.
        On macOS per-cpu frequency is not supported.
        Also, the returned frequency never changes, see:
        https://arstechnica.com/civis/viewtopic.php?f=19&t=465002.
        )r1�cpu_freqr3�scpufreq)�curr�min_�max_s   r>rcrc�s,�� �=�=�?���d�D����T�4��.�/�/r@c�0�g}tj�}|D]z}|\}}}}|dk(rd}|s?tjj	|�rtjj|�s�Rt
j||||�}|j|��||S)z8Return mounted disk partitions as a list of namedtuples.�none�)	r1�disk_partitions�os�path�isabs�existsr3�	sdiskpartrP)	�all�retlist�
partitions�	partition�device�
mountpoint�fstype�opts�ntuples	         r>rkrk�s����G��%�%�'�J��	�+4�(��
�F�D��V���F���7�7�=�=��(������v�0F�����v�z�6�4�@�����v�� ��Nr@c���	tj�\}}}|dk(}|rtj}n|dk(rtj
}n|dz}t
j|||�S#t$rYywxYw)zReturn battery information.Nr����<)r1�sensors_battery�NotImplementedErrorr�POWER_TIME_UNLIMITED�POWER_TIME_UNKNOWNr3�sbattery)r=�minsleft�
power_plugged�secslefts    r>r}r}�sx���+/�+?�+?�+A�(���=�"�Q�&�M���/�/��	�R���-�-���b�=���<�<���=�9�9������s�A$�$	A0�/A0c���g}t�D]W}	t|�j|�}|s�!|D]2}t|�|gz}|j	tj|���4�Y|S#t$rY�gwxYw)z System-wide network connections.)�pids�Process�net_connections�listrPr3�sconnr	)�kindrQ�pid�cons�cs     r>r�r��s{��
�C��v��	.��3�<�/�/��5�D���A��Q��3�%��A��J�J�s�y�y�!�}�-����J���	��	�s�A)�)	A5�4A5c���t�j�}i}|D]�}	tj|�}tj|�}tj
|�\}}t
td�rtj|�}dj|�}d|v}tj|||||�||<��|S#t$r(}	|	jtjk7r�Yd}	~	��d}	~	wwxYw)z)Get NIC stats (isup, duplex, speed, mtu).�	NicDuplex�,�runningN)�net_io_counters�keysr1�
net_if_mtu�net_if_flags�net_if_duplex_speed�hasattrrr��joinr3�	snicstats�OSError�errno�ENODEV)
�namesrQr%�mtu�flags�duplex�speed�output_flags�isup�errs
          r>�net_if_statsr��s�����"�"�$�E�
�C���
	N��/�/�$�'�C��%�%�d�+�E� �4�4�T�:�M�F�E��w��,� �*�*�6�2���8�8�E�?�L���%�D��
�
�d�F�E�3��M�C��I���J���	��y�y�E�L�L�(��)��	�s�AB=�=	C.�C)�)C.c�*�tj�S)z:The system boot time expressed in seconds since the epoch.)r1�	boot_timerVr@r>r�r�s���>�>��r@zignoring exception on import: c��tdk(r|Stt�z
}|dk(st|�dkr|Std�|dkr||z
S||zS)z!Account for system clock updates.rrz9system clock was updated; adjusting process create_time())�INIT_BOOT_TIMEr��absr
)r#�diffs  r>�adjust_proc_create_timer�sU��������I�K�'�D��q�y�C��I��M���	�
E�F��a�x��t�|���4�<�r@c���g}tj�}|D]E}|\}}}}}|dk(r�|s�tj||xsd|xsd||�}|j	|��G|S)z:Return currently connected users as a list of namedtuples.�~N)r1�usersr3�suserrP)	rr�rawlistrSrJ�tty�hostname�tstampr��nts	         r>r�r�+sn���G��j�j�l�G���+/�(��c�8�V�S��#�:����
�Y�Y�t�S�[�D�(�*:�d�F�C�
H�����r����Nr@c���tj�}d|vr.	td�j�|j	dd�|S|S#t
$rY|St$r|j	dd�Y|SwxYw�Nr)r1r�r��create_time�insertr	r)�lss r>r�r�?sx��	
����B���{�	��A�J�"�"�$��I�I�a��O�
�I�2�I��	�	���I��	��I�I�a��O�
�I�	�s�+A	�		A3�A3�2A3c�B��tj���fd��}|S)z`Decorator which translates bare OSError exceptions into
    NoSuchProcess and AccessDenied.
    c�b��|j|j|j}}}	�|g|��i|��S#t$r5}t	j
|�rt
|||�|�t||�|�d}~wt$r}t||�|�d}~wtj$r}t
|||�|�d}~wwxYwrZ)r��_ppid�_name�ProcessLookupErrorr1�proc_is_zombier
r	�PermissionErrorr�ZombieProcessError)�self�args�kwargsr�rr%r��funs       �r>�wrapperz wrap_exceptions.<locals>.wrapperWs�����(�(�D�J�J��
�
�4�T��		:��t�-�d�-�f�-�-��!�	4��"�"�3�'�#�C��t�4�#�=���T�*��3���	3��s�D�)�s�2���&�&�	:���T�4�0�c�9��	:�s,�3�	B.�0A,�,B.�8
B�B.�B)�)B.)�	functools�wraps)r�r�s` r>�wrap_exceptionsr�Rs'���
�_�_�S��:��:��Nr@c���eZdZdZgd�Zd�Zeed���Zeed���Z	d�Z
d�Zed��Zed	��Z
ed
��Zed��Zed��Zed
��Zed��Zed��Zed��Zed��Zed��Zed��Zed d��Zed��Zed��Zed��Zed!d��Zed��Zed"d��Zed��Zed��Z ed��Z!ed��Z"y)#r�z1Wrapper class around underlying C implementation.)�_cacher�r�r�c�.�||_d|_d|_yrZ)r�r�r�)r�r�s  r>�__init__zProcess.__init__ms�������
���
r@c�~�tj|j�}t|�tt�k(sJ�|SrZ)r1�proc_kinfo_oneshotr��len�kinfo_proc_map�r�rQs  r>�_get_kinfo_proczProcess._get_kinfo_procrs4���%�%�d�h�h�/���3�x�3�~�.�.�.�.��
r@c�~�tj|j�}t|�tt�k(sJ�|SrZ)r1�proc_pidtaskinfo_oneshotr�r��pidtaskinfo_mapr�s  r>�_get_pidtaskinfozProcess._get_pidtaskinfozs4���+�+�D�H�H�5���3�x�3��/�/�/�/��
r@c�p�|jj|�|jj|�yrZ)r��cache_activater��r�s r>�
oneshot_enterzProcess.oneshot_enter�s*�����+�+�D�1����,�,�T�2r@c�p�|jj|�|jj|�yrZ)r��cache_deactivater�r�s r>�oneshot_exitzProcess.oneshot_exit�s*�����-�-�d�3����.�.�t�4r@c�|�|j�td}|�|Stj|j�S)Nr%)r�r�r1�	proc_namer�)r�r%s  r>r%zProcess.name�s7���#�#�%�n�V�&<�=���'�t�E�T�^�^�D�H�H�-E�Er@c�@�tj|j�SrZ)r1�proc_exer�r�s r>�exezProcess.exe�����}�}�T�X�X�&�&r@c�@�tj|j�SrZ)r1�proc_cmdliner�r�s r>�cmdlinezProcess.cmdline�s��� � ����*�*r@c�R�ttj|j��SrZ)rr1�proc_environr�r�s r>�environzProcess.environ�s��"�4�#4�#4�T�X�X�#>�?�?r@c�X�|j�td|_|jS)Nr)r�r�r�r�s r>rzProcess.ppid�s&���)�)�+�N�6�,B�C��
��z�z�r@c�@�tj|j�SrZ)r1�proc_cwdr�r�s r>�cwdzProcess.cwd�r�r@c��|j�}tj|td|td|td�S)Nrrr�r�r3�puidsr��r��rawtuples  r>�uidszProcess.uids��H���'�'�)���y�y��^�F�+�,��^�F�+�,��^�F�+�,�
�	
r@c��|j�}tj|td|td|td�S)Nrr r!r�r�s  r>�gidszProcess.gids�r�r@c��|j�td}tj�}	||S#t$rYywxYw)Nr")r�r�r�get_terminal_map�KeyError)r��tty_nr�tmaps   r>�terminalzProcess.terminal�sI���%�%�'��w�(?�@���(�(�*��	���<����	��	�s�5�	A�Ac��|j�}tj|td|td|td|td�S)Nr(r)r*r+)r�r3�pmemr�r�s  r>�memory_infozProcess.memory_info�sU���(�(�*���x�x��_�U�+�,��_�U�+�,��_�Y�/�0��_�Y�/�0�	
�	
r@c��|j�}tj|j�}t	j
||fz�SrZ)rr1�proc_memory_ussr�r3�pfullmem)r��	basic_mem�usss   r>�memory_full_infozProcess.memory_full_info�s:���$�$�&�	��"�"�4�8�8�,���|�|�Y�#��/�0�0r@c�z�|j�}tj|td|tddd�S)Nr&r'g)r�r3�	pcputimesr�r�s  r>rHzProcess.cpu_times�sA���(�(�*���}�}��_�Z�0�1��_�Z�0�1���
�	
r@c�T�|j�td}|st|�}|S)Nr#)r�r�r�)r��	monotonicr#s   r>r�zProcess.create_time�s,���$�$�&�~�g�'>�?���+�E�2�E��r@c�b�|j�td}tj|d�S)Nr-r)r�r�r3�pctxsw)r��vols  r>�num_ctx_switcheszProcess.num_ctx_switches�s-��
�#�#�%�o�j�&A�B���z�z�#�q�!�!r@c�6�|j�tdS)Nr,)r�r�r�s r>�num_threadszProcess.num_threads�s���$�$�&��|�'D�E�Er@c���|jdk(rgSg}tj|j�}|D]8\}}t|�s�t	j
||�}|j
|��:|Sr�)r�r1�proc_open_filesrr3�	popenfilerP)r��filesr�rm�fdrys      r>�
open_fileszProcess.open_files�sd���8�8�q�=��I����&�&�t�x�x�0���H�D�"��T�"����t�R�0�����V�$� ��r@c
���t|\}}tj|j||�}g}|D]1}|\}}}	}
}}t	|||	|
||t
�}
|j
|
��3|SrZ)rr1�proc_net_connectionsr�r�TCP_STATUSESrP)r�r��families�typesr�rQrSr�fam�type�laddr�raddrr$r�s              r>r�zProcess.net_connections�su��#�D�/���%��+�+�D�H�H�h��F�����D�26�/�B��T�5�%����C��u�e�V�\��B�
�J�J�r�N���
r@c�`�|jdk(rytj|j�Sr�)r�r1�proc_num_fdsr�s r>�num_fdszProcess.num_fdss%���8�8�q�=��� � ����*�*r@Nc�B�tj|j|�SrZ)r�wait_pidr�)r��timeouts  r>�waitzProcess.waits��� � ����7�3�3r@c�@�tj|j�SrZ)r1�proc_priority_getr�r�s r>�nice_getzProcess.nice_gets���%�%�d�h�h�/�/r@c�B�tj|j|�SrZ)r1�proc_priority_setr�)r��values  r>�nice_setzProcess.nice_sets���%�%�d�h�h��6�6r@c�b�|j�td}tj|d�S)Nr$�?)r�r��
PROC_STATUSES�get)r��codes  r>r$zProcess.statuss-���#�#�%�n�X�&>�?��� � ��s�+�+r@c��tj|j�}g}|D].\}}}tj|||�}|j|��0|SrZ)r1�proc_threadsr�r3�pthreadrP)r�r�rr�	thread_id�utime�stimerys       r>�threadszProcess.threadssQ���#�#�D�H�H�-����'.�#�I�u�e��[�[��E�5�9�F��N�N�6�"�(/��r@�F��inetrZ)#�__name__�
__module__�__qualname__�__doc__�	__slots__r�r�rr�r�r�r�r%r�r�r�rr�r�r�r�rrrHr�rrrr�r$r(r+r/r$r;rVr@r>r�r�hs#��;�3�I��
������������3�5��F��F��'��'��+��+��@��@������'��'��
��
��
��
������
��
��1��1�
�
��
������"��"��F��F��	��	��
��
��+��+�
�4��4��0��0��7��7��,��,�
���r@r�r<r=)]rBr�r�rlrjrrr3rrr1rr	r
rrr
rrrr�__extra__all__�getpagesize�PAGESIZE�AF_LINK�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�SIDL�STATUS_IDLE�SRUN�STATUS_RUNNING�SSLEEP�STATUS_SLEEPING�SSTOP�STATUS_STOPPED�SZOMB�
STATUS_ZOMBIEr2�dictr�r�r?rF�	heap_info�	heap_trimrHrOrUrXr[�has_cpu_freqrc�
disk_usage�disk_io_countersrkr}r��net_if_addrsr�r�r�r��	Exceptionr�r�r�r��
pid_existsr�r�rVr@r>�<module>rss���
%���	����!�!�"�"��#��"�+�(�"����4�����
�,�,��	���7�3�3�����-�-����G�1�1����'�0�0����'�0�0�����/�/����g�(�(����'�1�1�����-�-����g�)�)����w�+�+����7�,�,�
�� 	�I�I�w�"�"��I�I�w�%�%��K�K��(�(��J�J��&�&��J�J��%�%��
��	
�	
�	
�	
�	
�	
�	
�
�
��	����
�
�	�	�
�
��
�	��"�"<�
�N�N�	��N�N�	�3��$�
"�
N��4����0��
 �
 �
��(�(��
�*:�,�&�&��� � ���$�6�
��[�N���(
� �
 �
 �
��,}�}��e��	�*�3�'�
2�3��N���s�"K�K(�
K#�#K(
Back to Directory File Manager