python --- socket服务器与客户端各种状态案例

来源:互联网 发布:鬼吹灯与盗墓笔记 知乎 编辑:程序博客网 时间:2024/06/05 06:16

=======客户端请求一次成功后,服务器一直处于获取客户端的死循环中=======

服务器端:

root@kali:~/python/socket# pwd/root/python/socketroot@kali:~/python/socket# lssocket_server.py  socket_server_using.pyroot@kali:~/python/socket# 

客户短端:

root@kali:~/python/socket# pwd/root/python/socketroot@kali:~/python/socket# lssocket_client.py  socket_client_using.pyroot@kali:~/python/socket# 

服务器端代码与运行:

root@kali:~/python/socket# vi socket_server_using.py root@kali:~/python/socket# cat socket_server_using.py #!/usr/bin/python# --*-- coding:utf-8 --*--#服务器端的ip地址192.168.72.129,编写的文件socket_server.py#客户端的地址ip192.168.72.130,需要编写文件socket_client.pyimport socket#导入socket模块import time#导入时间模块host = ''#''与‘0.0.0.0’表示所有机器都可以连接,'192.168.72.130'连接特定机器port = 7777#表示启用端口7777,不能使用双引号s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)s.bind((host,port))#绑定主机与端口s.listen(2)#启用两个监听2进程conn, addr = s.accept()#地址接收所有的连接#--------以上代码为socket server端-------------while 1:#会出现客户端请求完成后,服务器端一直没有中断,使服务器处于死循环中    print 'Got connection from:' , addr#打印连接地址    #while 1:#为死循环,如果不使用while循环的话,就执行一次就退出    data = conn.recv(4096)#一次性可以连接4096字节    print 'get data',data#打印客户端请求的数据    if not data:#如果没有收到客户端数据就继续接收        time.sleep(1.5)#每次暂停1.5秒        continue    #if not data:break#没有接收任何数据就break连接    #conn.sendall(data)#如果有数据就全部原样回显    conn.sendall(data.upper())#如果有数据就全部回显,并且把回显的字母全部变成大写字母conn.close()#如果break话,就关闭会话代码运行:服务器端接收一次客户端数据成功后,就处于死循环中root@kali:~/python/socket# python socket_server_using.py Got connection from: ('192.168.72.130', 49860)get data hello world!!Got connection from: ('192.168.72.130', 49860)get data Got connection from: ('192.168.72.130', 49860)get data Got connection from: ('192.168.72.130', 49860)get data Got connection from: ('192.168.72.130', 49860)get data Got connection from: ('192.168.72.130', 49860)get data Got connection from: ('192.168.72.130', 49860)get data Got connection from: ('192.168.72.130', 49860)get data Got connection from: ('192.168.72.130', 49860)get data ^CTraceback (most recent call last):  File "socket_server_using.py", line 23, in <module>    time.sleep(1.5)#每次暂停1.5秒KeyboardInterrupt

客户端代码与运行:

root@kali:~/python/socket# vi socket_client_using.py root@kali:~/python/socket# cat socket_client_using.py #!/usr/bin/python# --*-- coding:utf-8 --*--#客户端的地址ip192.168.72.130,编写文件为socket_client.pyimport socket#导入socket模块host = '192.168.72.129'#服务器端的ip地址port = 7777#服务器端的端口s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)#启用ipv4的tcp/ip协议与类型s.connect((host,port))#连接服务器端的主机与端口#--------以上为客户端的代码信息-------------#--------以下为客户端发送一次性的信息,有while 1:才是死循环发送信息-----s.sendall('hello world!!')#客户端发送的信息data = s.recv(4096)#服务器端返回信息就赋值给datas.close()#不返回信息就断开连接print 'received',repr(data)#打印返回的信息代码运行:客户端发送成功一次数据root@kali:~/python/socket# vi socket_client_using.py root@kali:~/python/socket# python  socket_client_using.py received 'HELLO WORLD!!'

===============================================

++++++++客户端请求一次,服务器端获取一次信息++++++++++++++
服务器端:

root@kali:~/python/socket# lssocket_server_ok.py  socket_server.py  socket_server_using.pyroot@kali:~/python/socket# clearroot@kali:~/python/socket# vi socket_server_ok.py root@kali:~/python/socket# cat socket_server_ok.py

客户端:

root@kali:~/python/socket# pwd/root/python/socketroot@kali:~/python/socket# lssocket_client_ok.py  socket_client.py  socket_client_using.pyroot@kali:~/python/socket# 

服务器端代码与运行:

root@kali:~/python/socket# vi socket_server_ok.py root@kali:~/python/socket# cat socket_server_ok.py #!/usr/bin/python# --*-- coding:utf-8 --*--#服务器端的ip地址192.168.72.129,编写的文件socket_server.py#客户端的地址ip192.168.72.130,需要编写文件socket_client.pyimport socket#导入socket模块import timehost = ''#''与‘0.0.0.0’表示所有机器都可以连接,'192.168.72.130'连接特定机器port = 7777#表示启用端口7777,不能使用双引号s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)s.bind((host,port))#绑定主机与端口s.listen(2)#启用两个监听客户端进程while 1:#每次服务器重新获取客户端的请求    conn, addr = s.accept()#地址接收所有的连接    #--------以上代码为socket server端-------------    #while 1:#会出现客户端请求完成后,服务器端一直没有中断,使服务器处于死循环中    print 'Got connection from:' , addr#打印连接地址    #while 1:#为死循环,如果不使用while循环的话,就执行一次就退出    data = conn.recv(4096)#一次性可以连接4096字节    print 'get data',data#打印客户端请求的数据    if not data:#如果没有收到客户端数据就继续接收        time.sleep(1.5)#每次暂停1.5秒        continue    #if not data:break#没有接收任何数据就break连接    #conn.sendall(data)#如果有数据就全部原样回显    conn.sendall(data.upper())#如果有数据就全部回显,并且把回显的字母全部变成大写字母conn.close()#如果break话,就关闭会话服务器端返回4次信息:root@kali:~/python/socket# python socket_server_ok.py Got connection from: ('192.168.72.130', 49867)get data hello world!!Got connection from: ('192.168.72.130', 49868)get data hello world!!Got connection from: ('192.168.72.130', 49869)get data hello world!!Got connection from: ('192.168.72.130', 49870)get data hello world!!

客户端代码与运行:

root@kali:~/python/socket# vi socket_client_ok.py root@kali:~/python/socket# cat socket_client_ok.py #!/usr/bin/python# --*-- coding:utf-8 --*--#客户端的地址ip192.168.72.130,编写文件为socket_client.pyimport socket#导入socket模块host = '192.168.72.129'#服务器端的ip地址port = 7777#服务器端的端口s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)#启用ipv4的tcp/ip协议与类型s.connect((host,port))#连接服务器端的主机与端口#--------以上为客户端的代码信息-------------#--------以下为客户端发送一次性的信息,有while 1:才是死循环发送信息-----s.sendall('hello world!!')#客户端发送的信息data = s.recv(4096)#服务器端返回信息就赋值给datas.close()#不返回信息就断开连接print 'received',repr(data)#打印返回的信息客户端请求4次:root@kali:~/python/socket# python socket_client_ok.py received 'HELLO WORLD!!'root@kali:~/python/socket# python socket_client_ok.py received 'HELLO WORLD!!'root@kali:~/python/socket# python socket_client_ok.py received 'HELLO WORLD!!'root@kali:~/python/socket# python socket_client_ok.py received 'HELLO WORLD!!'

+++++++++++++++++++++++++++++++++++++++++++

*%%%%%%%%单线程的客户端与服务器实现长连接(一直有数据进行通信)%%%%%%%%%%*
客户端:

root@kali:~/python/socket# lssocket_client_ok.py  socket_client.py  socket_client_using.pyroot@kali:~/python/socket# pwd/root/python/socketroot@kali:~/python/socket# python socket_client_ok.py 

服务器端:

root@kali:~/python/socket# pwd/root/python/socketroot@kali:~/python/socket# lssocket_server_ok.py  socket_server.py  socket_server_using.py

服务器端代码与运行:

root@kali:~/python/socket# vi socket_server_ok.py root@kali:~/python/socket# cat socket_server_ok.py #!/usr/bin/python# --*-- coding:utf-8 --*--#服务器端的ip地址192.168.72.129,编写的文件socket_server.py#客户端的地址ip192.168.72.130,需要编写文件socket_client.pyimport socket#导入socket模块import timehost = ''#''与‘0.0.0.0’表示所有机器都可以连接,'192.168.72.130'连接特定机器port = 7777#表示启用端口7777,不能使用双引号s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)s.bind((host,port))#绑定主机与端口s.listen(2)#启用两个监听客户端进程while 1:#每次服务器重新获取客户端的请求    conn, addr = s.accept()#地址接收所有的连接    #--------以上代码为socket server端-------------    #while 1:#会出现客户端请求完成后,服务器端一直没有中断,使服务器处于死循环中    print 'Got connection from:' , addr#打印连接地址    #下面的while使用是单线程处理的,客户端可以长连接服务器端    while 1:#为死循环,如果不使用while循环的话,就执行一次就退出        data = conn.recv(4096)#一次性可以连接4096字节        print 'get data',data#打印客户端请求的数据        if not data:#如果没有收到客户端数据就继续接收            time.sleep(1.5)#每次暂停1.5秒            continue    #if not data:break#没有接收任何数据就break连接    #conn.sendall(data)#如果有数据就全部原样回显        conn.sendall(data.upper())#如果有数据就全部回显,并且把回显的字母全部变成大写字母conn.close()#如果break话,就关闭会话root@kali:~/python/socket# python socket_server_ok.py

服务器运行:

root@kali:~/python/socket# python socket_server_ok.py Got connection from: ('192.168.72.130', 49949)get data hello world!!get data hello world!!get data hello world!!get data hello world!!get data hello world!!get data hello world!!get data hello world!!get data hello world!!get data hello world!!get data hello world!!get data hello world!!get data hello world!!^CTraceback (most recent call last):  File "socket_server_ok.py", line 25, in <module>    data = conn.recv(4096)#一次性可以连接4096字节KeyboardInterruptroot@kali:~/python/socket# ```客户端代码与运行:
root@kali:~/python/socket# cat socket_client_ok.py #!/usr/bin/python# --*-- coding:utf-8 --*--#客户端的地址ip192.168.72.130,编写文件为socket_client.pyimport socket#导入socket模块from time import sleep#导入时间模块,并使用sleep功能host = '192.168.72.129'#服务器端的ip地址port = 7777#服务器端的端口s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)#启用ipv4的tcp/ip协议与类型s.connect((host,port))#连接服务器端的主机与端口#--------以上为客户端的代码信息-------------#--------以下为客户端发送一次性的信息,有while 1:才是死循环发送信息-----while 1:#使客户端暂停1.5秒后循环发送信息,给服务器端    s.sendall('hello world!!')#客户端发送的信息    data = s.recv(4096)#服务器端返回信息就赋值给data    sleep(1.5)#每次暂停1.5秒#s.close()#不返回信息就断开连接    print 'received',repr(data)#打印返回的信息s.close()#不返回信息就断开连接root@kali:~/python/socket# 
root@kali:~/python/socket# lssocket_client_ok.py  socket_client.py  socket_client_using.pyroot@kali:~/python/socket# pwd/root/python/socketroot@kali:~/python/socket# python socket_client_ok.py received 'HELLO WORLD!!'received 'HELLO WORLD!!'received 'HELLO WORLD!!'received 'HELLO WORLD!!'received 'HELLO WORLD!!'received 'HELLO WORLD!!'received 'HELLO WORLD!!'received 'HELLO WORLD!!'received 'HELLO WORLD!!'received 'HELLO WORLD!!'received 'HELLO WORLD!!'received 'HELLO WORLD!!'^CTraceback (most recent call last):  File "socket_client_ok.py", line 20, in <module>    sleep(1.5)#每次暂停1.5秒KeyboardInterrupt

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

######在客户端执行命令,只在服务器端显示执行结果##########
服务器端:

root@kali:~/python/socket# pwd/root/python/socketroot@kali:~/python/socket# lssocket_server_ok.py  socket_server.py  socket_server_using.pyroot@kali:~/python/socket# cat socket_server_ok.py #!/usr/bin/python# --*-- coding:utf-8 --*--#服务器端的ip地址192.168.72.129,编写的文件socket_server.py#客户端的地址ip192.168.72.130,需要编写文件socket_client.pyimport socket#导入socket模块import time#导入时间模块import os#导入系统模块host = ''#''与‘0.0.0.0’表示所有机器都可以连接,'192.168.72.130'连接特定机器port = 7777#表示启用端口7777,不能使用双引号s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)s.bind((host,port))#绑定主机与端口s.listen(2)#启用两个监听客户端进程conn, addr = s.accept()#地址接收所有的连接    #--------以上代码为socket server端-------------#使用服务器端执行系统的命令while 1:#为死循环,如果不使用while循环的话,就执行一次就退出        data = conn.recv(4096)#一次性可以连接4096字节        print 'get data',data#打印客户端请求的数据        if not data:#如果没有收到客户端数据就继续接收            time.sleep(1.5)#每次暂停1.5秒        os.system(data)#让服务器执行系统的命令        conn.sendall(data.upper())#如果有数据就全部回显,并且把回显的字母全部变成大写字母conn.close()#如果break话,就关闭会话root@kali:~/python/socket# python socket_server_ok.py get data lssocket_server_ok.py  socket_server.py  socket_server_using.pyget data df文件系统                                                  1K-块    已用    可用 已用% 挂载点rootfs                                                 19620732 8713432 9887552   47% /udev                                                      10240       0   10240    0% /devtmpfs                                                    110880     568  110312    1% /run/dev/disk/by-uuid/1d69c4b7-8825-4a6e-a4a4-e1ef94f2d30f 19620732 8713432 9887552   47% /tmpfs                                                      5120       0    5120    0% /run/locktmpfs                                                    401980      76  401904    1% /run/shm

客户端:

root@kali:~/python/socket# pwd/root/python/socketroot@kali:~/python/socket# lssocket_client_ok.py  socket_client.py  socket_client_using.pyroot@kali:~/python/socket# cat socket_client_ok.py #!/usr/bin/python# --*-- coding:utf-8 --*--#客户端的地址ip192.168.72.130,编写文件为socket_client.pyimport socket#导入socket模块from time import sleep#导入时间模块,并使用sleep功能host = '192.168.72.129'#服务器端的ip地址port = 7777#服务器端的端口s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)#启用ipv4的tcp/ip协议与类型s.connect((host,port))#连接服务器端的主机与端口#--------以上为客户端的代码信息-------------#--------以下为客户端发送一次性的信息,有while 1:才是死循环发送信息-----while 1:#一直等待客户端输入命令给服务器端    input = raw_input('please input system command:')#输入要使用的系统命令    s.send(input)#客户端发送的信息    data = s.recv(4096)#服务器端返回信息就赋值给data    print 'received from server:',data#打印返回的信息s.close()#不返回信息就断开连接root@kali:~/python/socket# python socket_client_ok.py please input system command:lsreceived from server: LSplease input system command:dfreceived from server: DFplease input system command:

在服务器端,把端口7777的进程结束掉:

root@kali:~/python/socket# netstat -an | grep 7777tcp        0      0 0.0.0.0:7777            0.0.0.0:*               LISTEN     tcp        0      0 192.168.72.129:7777     192.168.72.130:49992    CLOSE_WAIT root@kali:~/python/socket# lsof -i :7777COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAMEpython  10869 root    3u  IPv4  36055      0t0  TCP *:7777 (LISTEN)python  10869 root    4u  IPv4  36057      0t0  TCP 192.168.72.129:7777->192.168.72.130:49992 (CLOSE_WAIT)root@kali:~/python/socket# kill -9 10869[1]+  Killed                  python socket_server_ok.pyroot@kali:~/python/socket# netstat -an | grep 7777root@kali:~/python/socket# 

############################################

&&&&&&&&&在客户端执行命令,在客户端显示执行结果&&&&&&&&&&
该功能相当于单线程的简单SSH工具

服务器端:

结束占有7777端口的进程,重新使用7777的端口root@kali:~/python/socket# clearroot@kali:~/python/socket# netstat -an | grep 7777tcp        0      0 0.0.0.0:7777            0.0.0.0:*               LISTEN     tcp        0      0 192.168.72.129:7777     192.168.72.130:49999    CLOSE_WAIT root@kali:~/python/socket# lsof -i :7777COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAMEpython  10913 root    3u  IPv4  38492      0t0  TCP *:7777 (LISTEN)python  10913 root    4u  IPv4  38494      0t0  TCP 192.168.72.129:7777->192.168.72.130:49999 (CLOSE_WAIT)root@kali:~/python/socket# kill -9 10913[1]+  Killed                  python socket_server_ok.pyroot@kali:~/python/socket# netstat -an | grep 7777root@kali:~/python/socket# pwd/root/python/socketroot@kali:~/python/socket# lssocket_client_ok.py  socket_client.py  socket_client_using.py  tab.pyroot@kali:~/python/socket# cat tab.py #pyhton startup fileimport sysimport readlineimport rlcompleterimport atexitimport os#tab completionreadline.parse_and_bind('tab:complete')#history filehistfile = os.path.join(os.environ['HOME'],'.pythonhistory')try:    readline.read_history_file(histfile)except IOError:    passatexit.register(readline.write_history_file,histfile)del os, histfile, readline, rlcompleterroot@kali:~/python/socket# root@kali:~/python/socket# vi socket_server_ok.py root@kali:~/python/socket# cat socket_server_ok.py #!/usr/bin/python# --*-- coding:utf-8 --*--#服务器端的ip地址192.168.72.129,编写的文件socket_server.py#客户端的地址ip192.168.72.130,需要编写文件socket_client.pyimport socket#导入socket模块import time#导入时间模块import os#导入系统模块import tab#导入换行host = ''#''与‘0.0.0.0’表示所有机器都可以连接,'192.168.72.130'连接特定机器port = 7777#表示启用端口7777,不能使用双引号s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)s.bind((host,port))#绑定主机与端口s.listen(2)#启用两个监听客户端进程conn, addr = s.accept()#地址接收所有的连接    #--------以上代码为socket server端-------------#使用服务器端执行系统的命令while 1:#为死循环,如果不使用while循环的话,就执行一次就退出        data = conn.recv(4096)#一次性可以连接4096字节        print 'get data',data#打印客户端请求的数据        if not data:#如果没有收到客户端数据就继续接收            time.sleep(1.5)#每次暂停1.5秒        #os.system(data)#让服务器执行系统的命令        cmd = os.popen(data)#让服务器执行系统的命令,并回显到客户端        result = cmd.read()#回显结果        conn.sendall(result)#给客户端返回信息        print result#服务器端打印回显结果        #conn.sendall(data.upper())#如果有数据就全部回显,并且把回显的字母全部变成大写字母conn.close()#如果break话,就关闭会话root@kali:~/python/socket# root@kali:~/python/socket# python socket_server_ok.py get data lsget data ls -laget data pwdget data df

客户端:

root@kali:~/python/socket# clearroot@kali:~/python/socket# pwd/root/python/socketroot@kali:~/python/socket# lssocket_server_ok.py  socket_server.py  socket_server_using.py  tab.pyroot@kali:~/python/socket# root@kali:~/python/socket# cat tab.py #pyhton startup fileimport sysimport readlineimport rlcompleterimport atexitimport os#tab completionreadline.parse_and_bind('tab:complete')#history filehistfile = os.path.join(os.environ['HOME'],'.pythonhistory')try:    readline.read_history_file(histfile)except IOError:    passatexit.register(readline.write_history_file,histfile)del os, histfile, readline, rlcompleterroot@kali:~/python/socket# root@kali:~/python/socket# cat socket_client_ok.py #!/usr/bin/python# --*-- coding:utf-8 --*--#客户端的地址ip192.168.72.130,编写文件为socket_client.pyimport socket#导入socket模块import tab#导入换行from time import sleep#导入时间模块,并使用sleep功能host = '192.168.72.129'#服务器端的ip地址port = 7777#服务器端的端口s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)#启用ipv4的tcp/ip协议与类型s.connect((host,port))#连接服务器端的主机与端口#--------以上为客户端的代码信息-------------#--------以下为客户端发送一次性的信息,有while 1:才是死循环发送信息-----while 1:#一直等待客户端输入命令给服务器端    input = raw_input('please input system command:')#输入要使用的系统命令    s.send(input)#客户端发送的信息    data = s.recv(4096)#服务器端返回信息就赋值给data,如果返回的字节小于服务器端的4096字节话,会分几次发送,发到4096字节就算完成    print 'received from server:',data#打印返回的信息s.close()#不返回信息就断开连接root@kali:~/python/socket# python socket_client_ok.py please input system command:lsreceived from server: socket_server_ok.pysocket_server.pysocket_server_using.pyplease input system command:ls -lareceived from server: 总用量 20drwxr-xr-x  2 root root 4096  624 17:05 .drwxr-xr-x 11 root root 4096  621 20:57 ..-rw-r--r--  1 root root 1448  6月 24 17:05 socket_server_ok.py-rw-r--r--  1 root root 1082  6月 22 23:31 socket_server.py-rw-r--r--  1 root root 1374  6月 24 13:21 socket_server_using.pyplease input system command:pwdreceived from server: /root/python/socketplease input system command:dfreceived from server: 文件系统                                                  1K-块    已用    可用 已用% 挂载点rootfs                                                 19620732 8713508 9887476   47% /udev                                                      10240       0   10240    0% /devtmpfs                                                    110880     568  110312    1% /run/dev/disk/by-uuid/1d69c4b7-8825-4a6e-a4a4-e1ef94f2d30f 19620732 8713508 9887476   47% /tmpfs                                                      5120       0    5120    0% /run/locktmpfs                                                    401980      76  401904    1% /run/shmplease input system command:root@kali:~/python/socket# python socket_client_ok.py please input system command:top - bn 1received from server: top - 17:40:10 up  4:41,  3 users,  load average: 0.00, 0.01, 0.05Tasks: 137 total,   1 running, 135 sleeping,   0 stopped,   1 zombie%Cpu(s):  2.0 us,  0.3 sy,  0.0 ni, 96.9 id,  0.9 wa,  0.0 hi,  0.0 si,  0.0 stKiB Mem:   1108800 total,   626184 used,   482616 free,    40484 buffersKiB Swap:   901116 total,        0 used,   901116 free,   374004 cached  PID USER      PR  NI  VIRT  RES  SHR S  %CPU %MEM    TIME+  COMMAND    1 root      20   0  2312 1516 1416 S   0.0  0.1   0:01.29 init    2 root      20   0     0    0    0 S   0.0  0.0   0:00.00 kthreadd    3 root      20   0     0    0    0 S   0.0  0.0   0:01.56 ksoftirqd/0    5 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 kworker/0:0H    7 root      20   0     0    0    0 S   0.0  0.0   0:03.19 rcu_sched    8 root      20   0     0    0    0 S   0.0  0.0   0:00.00 rcu_bh    9 root      rt   0     0    0    0 S   0.0  0.0   0:00.28 migration/0   10 root      rt   0     0    0    0 S   0.0  0.0   0:00.09 watchdog/0   11 root      rt   0     0    0    0 S   0.0  0.0   0:00.13 watchdog/1   12 root      rt   0     0    0    0 S   0.0  0.0   0:00.49 migration/1   13 root      20   0     0    0    0 S   0.0  0.0   0:00.77 ksoftirqd/1   15 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 kworker/1:0H   16 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 khelper   17 root      20   0     0    0    0 S   0.0  0.0   0:00.00 kdevtmpfs   18 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 netns   19 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 perf   20 root      20   0     0    0    0 S   0.0  0.0   0:00.00 khungtaskd   21 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 writeback   22 root      25   5     0    0    0 S   0.0  0.0   0:00.00 ksmd   23 root      39  19     0    0    0 S   0.0  0.0   0:00.00 khugepaged   25 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 crypto   26 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 kintegrityd   27 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 bioset   28 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 kblockd   29 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 devfreq_wq   31 root      20   0     0    0    0 S   0.0  0.0   0:00.00 kswapd0   32 root      20   0     0    0    0 S   0.0  0.0   0:00.00 fsnotify_mark   39 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 kthrotld   40 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 ipv6_addrconf   41 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 deferwq   96 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 mpt_poll_0  113 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 ata_sff  114 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 mpt/0  448 root      20   0     0    0    0 S   0.0  0.0   0:00.00 scsi_eh_0  449 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 scsi_tmf_0  450 root      20   0     0    0    0 S   0.0  0.0   0:00.01 scsi_eh_1  452 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 scsi_tmf_1  453 root      20   0     0    0    0 S   0.0  0.0   0:01.29 scsi_eh_2  454 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 scsi_tmf_2  466 root       0 -20     0    0    0 S   0.0  0.0   0:00.46 kworker/0:1H  472 root       0 -20     0    0    0 S   0.0  0.0   0:00.76 kworker/1:1H  509 root      20   0     0    0    0 S   0.0  0.0   0:00.13 jbd2/sda1-8  510 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 ext4-rsv-conver  657 root      20   0  3084 2672 1804 S   0.0  0.2   0:00.09 udevd 1080 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 kpsmoused 1096 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 ttm_swap 1097 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 kworker/u5:0 1098 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 hci0 1099 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 hci0 1101 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 kworker/u5:2 1530 root      20   0  3072 2432 1568 S   0.0  0.2   0:00.00 udevd 1please input system command:

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&