linux ulimit ½²½â
1,˵Ã÷:
ulimitÓÃÓÚshellÆô¶¯½ø³ÌËùÕ¼ÓõÄ×ÊÔ´.
2,Àà±ð:
shellÄÚ½¨ÃüÁî
3,Óï·¨¸ñʽ:
ulimit [-acdfHlmnpsStvw] [size]
4,²ÎÊý½éÉÜ:
-H ÉèÖÃÓ²¼þ×ÊÔ´ÏÞÖÆ.
-S ÉèÖÃÈí¼þ×ÊÔ´ÏÞÖÆ.
-a ÏÔʾµ±Ç°ËùÓеÄ×ÊÔ´ÏÞÖÆ.
-c size:ÉèÖÃcoreÎļþµÄ×î´óÖµ.µ¥Î»:blocks
-d size:ÉèÖÃÊý¾Ý¶ÎµÄ×î´óÖµ.µ¥Î»:kbytes
-f size:ÉèÖô´½¨ÎļþµÄ×î´óÖµ.µ¥Î»:blocks
-l size:ÉèÖÃÔÚÄÚ´æÖÐËø¶¨½ø³ÌµÄ×î´óÖµ.µ¥Î»:kbytes
-m size:ÉèÖÿÉÒÔʹÓõij£×¤ÄÚ´æµÄ×î´óÖµ.µ¥Î»:kbytes
-n size:ÉèÖÃÄں˿ÉÒÔͬʱ´ò¿ªµÄÎļþÃèÊö·ûµÄ×î´óÖµ.µ¥Î»:n
-p size:ÉèÖùܵÀ»º³åÇøµÄ×î´óÖµ.µ¥Î»:kbytes
-s size:ÉèÖöÑÕ»µÄ×î´óÖµ.µ¥Î»:kbytes
-t size:ÉèÖÃCPUʹÓÃʱ¼äµÄ×î´óÉÏÏÞ.µ¥Î»:seconds
-v size:ÉèÖÃÐéÄâÄÚ´æµÄ×î´óÖµ.µ¥Î»:kbytes
5.¾ÙÀý
ÔÚLinuxÏÂд³ÌÐòµÄʱºò£¬Èç¹û³ÌÐò±È½Ï´ó£¬¾³£»áÓöµ½“¶Î´íÎ󔣨segmentation fault£©ÕâÑùµÄÎÊÌ⣬ÕâÖ÷Òª¾ÍÊÇÓÉÓÚLinuxϵͳ³õʼµÄ¶ÑÕ»´óС£¨stack size£©Ì«Ð¡µÄÔµ¹Ê£¬Ò»°ãΪ10M¡£ÎÒÒ»°ã°Ñstack sizeÉèÖóÉ256M£¬ÕâÑù¾ÍûÓжδíÎóÁË£¡ÃüÁîΪ£º
ulimit -s 262140
Èç¹ûҪϵͳ×Ô¶¯¼ÇסÕâ¸öÅäÖ㬾ͱà¼/etc/profileÎļþ£¬ÔÚ “ulimit -S -c 0 > /dev/null 2>&1”ÐÐÏ£¬Ìí¼Ó“ulimit -s 262140”£¬±£´æÖØÆôϵͳ¾Í¿ÉÒÔÁË
Ïà¹ØÎĵµ£º
do_exit() Function
-----------------------------------------------------------------------
kernel/exit.c
707 NORET_TYPE void do_exit(long code)
708 {
709 struct task_struct *tsk = current;
710
711 if (unlikely(in_interrupt()))
712 panic("Aiee, killing interrupt handler!");
713 if ......
Ò»¡¢½ø³Ì¿ØÖÆ£º
fork
´´½¨Ò»¸öнø³Ì
clone
°´Ö¸¶¨Ìõ¼þ´´½¨×Ó
½ø³Ì
execve
ÔËÐпÉÖ´ÐÐÎļþ
exit
ÖÐ
Ö¹½ø³Ì
_exit
Á¢¼´ÖÐÖ¹µ±Ç°½ø³Ì
getdtablesize
½ø
³ÌËùÄÜ´ò¿ªµÄ×î´óÎļþÊý
getpgid
»ñȡָ¶¨½ø³Ì×é±êʶºÅ
setpgid
Éè
ÖÃÖ¸¶¨½ø³Ì×é±êÖ¾ºÅ
getpgrp
»ñÈ¡µ±Ç°½ø³Ì×é±êʶºÅ
setpgrp
Éè
Öõ±Ç°½ø³Ì×é± ......
Ô´´ÎÄÕ£¬×ªÔØÇë×¢Ã÷³ö´¦£¬Ð»Ð»£¡
×÷ÕߣºÇåÁÖ£¬²©¿ÍÃû£º·É¿Õ¾²¶É
ÔÚwindowsÏÂ×ö¹ý·´»ã±àµÄÈË£¬¹À¼Æ¶¼ÈÏʶollydbgÕâÑùÈí¼þ¡£Ã»´í£¬ollydbgÊÇwindowÏÂ×öÆÆ½âÈí¼þºÍ·´»ã±àÈí¼þÈËÊ¿µÄÀûÆ÷¡£ÏÖÔÚ½éÉÜÒ»¸öºÍollydbgÒ»ÑùµÄÈí¼þ£¬µ«ËüÊÇÔÚlinuxÏÂÔËÐÐµÄ --- EDG¡£
Õâ¸öÈí¼þµÄ×÷Õß±¾À´ÊǸöÈí¼þ·´»ã±àÈËÊ¿£¬ÔÚwindowsϾ³£·´»ã±à ......