ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

子进程物理内存空间公平预留

2022-07-19 23:02:37  阅读:176  来源: 互联网

标签:__ process pid 内存空间 system 公平 预留 import os


目录

实验环境

  • Ubuntu 21.04
  • python3

实验目的

  • 实现客户端多子进程发送数据包至同一个服务器
  • 为客户端每个子进程预留同样的物理内存空间

成果

  • 客户端
import multiprocessing
import psutil
import os
import resource
from scapy.all import *
def pkt_send(i):
  os.system("prlimit --pid %s --rss=10" %os.getpid())
  os.system("sudo renice -5 -p %s "%(os.getpid()))
  os.system("ps -l -p %s"%os.getpid())
  print("----in 主进程 pid=%d---父进程pid=%d----" % (os.getpid(), os.getppid()))
  p=Ether()/IP(dst="192.168.0.3", src="192.168.0.2")/TCP(sport=5000,dport=80)/"Payload"
  sendp(p,iface='ens33')
  print("This is process",i)
if __name__ == '__main__':
    process_list = []
    for i in range(3):
        p = multiprocessing.Process(target=pkt_send,args=(i,))
        p.start()
        process_list.append(p.pid)
    for i in process_list:
        os.system("prlimit --pid %s --rss" %i)
  • 服务器
from scapy.all import *
import pprint
def packet_callback(packet):
    pprint.pprint(packet)
sniff(filter="ip src 192.168.0.2 and tcp and tcp port 80",prn=packet_callback, count=0)

标签:__,process,pid,内存空间,system,公平,预留,import,os
来源: https://www.cnblogs.com/2002ljy/p/16496167.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有