当前位置: 首页 > news >正文

做文案策划需要看什么网站怎么做北京赛车网站

做文案策划需要看什么网站,怎么做北京赛车网站,网上开店流程,机械公司网站源码前言 话不多说#xff0c;先来张脑图~ linux 虚拟内存知识回顾 虚拟内存空间长啥样 在 Linux 操作系统中#xff0c;虚拟地址空间的内部又被分为内核空间和用户空间两部分#xff0c;不同位数的系统#xff0c;地址空间的范围也不同。比如最常见的 32 位和 64 位系统先来张脑图~ linux 虚拟内存知识回顾 虚拟内存空间长啥样 在 Linux 操作系统中虚拟地址空间的内部又被分为内核空间和用户空间两部分不同位数的系统地址空间的范围也不同。比如最常见的 32 位和 64 位系统如下所示 通过这里可以看出 32 位系统的内核空间占用 1G位于最高处剩下的 3G 是用户空间 64 位系统的内核空间和用户空间都是 128T分别占据整个内存空间的最高和最低处剩下的中间部分是未定义的。 32 位虚拟内存空间 通过这张图你可以看到用户空间内存从低到高分别是 6 种不同的内存段 0x0000 0000 到 0x0804 8000 这段虚拟内存地址是一段不可访问的保留区因为在大多数操作系统中数值比较小的地址通常被认为不是一个合法的地址这块小地址是不允许访问的。比如在 C 语言中我们通常会将一些无效的指针设置为 NULL指向这块不允许访问的地址。 代码段包括二进制可执行代码 数据段包括已初始化的静态常量和全局变量 BSS 段包括未初始化的静态变量和全局变量 堆段包括动态分配的内存从低地址开始向上增长 堆空间的上边是一段待分配区域用于扩展堆空间的使用 文件映射段包括动态库、共享内存等从低地址开始向上增长 栈段包括局部变量和函数调用的上下文等。栈的大小是固定的一般是 8 MB。当然系统也提供了参数以便我们自定义大小 在上面的内存段中堆和文件映射段的内存是动态分配的。比如说使用 C 标准库的 malloc() 或者 mmap() 就可以分别在堆和文件映射段动态分配内存。 64 位虚拟内存空间 我们知道在 32 位机器上指针的寻址范围为 2^32所能表达的虚拟内存空间为 4 GB。 那么我们可能会认为在 64 位机器上指针的寻址范围为 2^64所能表达的虚拟内存空间为 16 EB 。虚拟内存地址范围为0x0000 0000 0000 0000 0000 - 0xFFFF FFFF FFFF FFFF 。 事实上在目前的 64 位系统下只使用了 48 位来描述虚拟内存空间寻址范围为 2^48 所能表达的虚拟内存空间为 256TB。 从上图中我们可以看出 64 位系统中的虚拟内存布局和 32 位系统中的虚拟内存布局大体上是差不多的。 创建一个线程需要消耗多大虚拟内存 前面我们也介绍了栈段包括局部变量和函数调用的上下文等。栈的大小是固定的一般是 8 MB。当然系统也提供了参数以便我们自定义大小 现在我们来验证一下执行 ulimit -a 这条命令查看进程创建线程时默认分配的栈空间大小 影响一个进程可创建多少线程的条件 进程的虚拟内存空间上限因为创建一个线程操作系统需要为其分配一个栈空间如果线程数量越多所需的栈空间就要越大那么虚拟内存就会占用的越多。 系统参数限制虽然 Linux 并没有内核参数来控制单个进程创建的最大线程个数但是有系统级别的参数来控制整个系统的最大线程个数。 虚拟内存空间上限 32 位系统 在 32 位 Linux 系统里一个进程的虚拟空间是 4G内核分走了 1G用户能用的只有 3G。 创建一个线程需要占用 8M 虚拟内存总共有 3G 虚拟内存可以使用。于是我们可以算出最多可以创建差不多 380 个3G/8M左右的线程。 如果想使得进程创建上千个线程那么我们可以调整创建线程时分配的栈空间大小比如调整为 512k [ecs-useriZ2ze923utbhhwxwgc0pd9Z ~]$ ulimit -s 51264 位系统 64 位系统意味着用户空间的虚拟内存最大值是 128T这个数值是很大的一个线程需占用 8M 栈空间的情况来算那么理论上可以创建 128T/8M 个线程也就是 1000 多万个线程有点魔幻 所以按 64 位系统的虚拟内存大小理论上可以创建无数个线程。 系统参数限制 前面学习我们了解到了 64 位系统的虚拟内存大小理论上可以创建无数个线程。不过事实上肯定创建不了那么多线程除了虚拟内存的限制还有系统的限制。 比如下面这三个内核参数的大小都会影响创建线程的上限 /proc/sys/kernel/threads-max表示系统支持的最大线程数默认值是 14553 /proc/sys/kernel/pid_max表示系统全局的 PID 号数值的限制每一个进程或线程都有 IDID 的值超过这个数进程或线程就会创建失败默认值是 32768 /proc/sys/vm/max_map_count表示限制一个进程可以拥有的 VMA(虚拟内存区域) 的数量具体什么意思我也没搞清楚反正如果它的值很小也会导致创建线程失败默认值是 65530。 总结 最后简单总结下 32 位系统用户态的虚拟空间只有 3G默认创建线程时分配的栈空间是 8M那么一个进程最多只能创建 380 个左右的线程。 64 位系统用户态的虚拟空间大到有 128T理论上不会受虚拟内存大小的限制而会受系统的参数或性能限制。
http://www.dnsts.com.cn/news/207344.html

相关文章:

  • 站内推广的方法电子商务运营
  • 南昌做网站哪家专业优秀的品牌策划案例
  • 重庆建站网站流程及费用建设网站的公司的官网
  • 网站信息安全监测建设方案深圳做网站公司有哪些公司
  • 国内做的比较大的外贸电商网站亚马逊雨林生存游戏
  • 深圳网站建设zhaoseowordpress 地图导航
  • 小豹子韬韬是哪个网站做的电脑手机网站制作
  • 门户网站建设安全管理制度自己做网站 需要哪些
  • 如何做网站搜索优化seo高手培训
  • 网站建设初级教程下载网站php源码
  • 做攻略的网站好食品包装设计的介绍
  • 凡科网站怎么关闭建设中wordpress 二次验证失败
  • 实惠的网站建设产品秦皇岛网站优化
  • 郑州网站开发定制博客园wordpress主题
  • 上海公司注册网站最专业的网站设计公司有哪些
  • sem是什么基团杭州网站seo推广软件
  • o2o手机网站建设难电子商务网站网络拓扑
  • 临沂品牌网站推广大连建设工程集团有限公司
  • 西安制作网站公司有赞微商城登录
  • 想建立一个网站怎么做网站建设好怎么发布
  • 绵阳住房和城乡建设局网站潍坊网站制作发
  • 建设部特殊工种查询网站龙岗网站建设电话
  • 韩国网站购物网站制作 网站建设
  • 如何建一个简单的网站wordpress的ico怎么更换
  • 龙岗附近网站建设公共资源交易中心待遇
  • 学习网站后台维护成都今天新闻大事件
  • 网站建设金手指排名专业wordpress ajax钩子
  • 苏州企业网站建设定制海南百度推广公司电话
  • 网站的建设入什么科目深圳航空公司订票电话
  • 舟山公司网站建设做企业网站域名需要解析吗