SystemTap�Ő^�Ɛl��߂܂���I�FLinux�g���u���V���[�e�B���O�T��c�@�ԊO�ҁi3�j�i2/4 �y�[�W�j

» 2009�N03��25�� 00��00�� ���J
[���c�N��, �O��^�P�CNTT OSS�Z���^]

�u�����Ȃ��v�������̓�

�@�ł́A���i2�j����ɐςݏグ�O���t���쐬���A�������̎g�p�ʂ���͂��܂��B

}2@meminfo̓Ot �}2�@meminfo��̓O���t

�@�}2�̓��u�[�g���鏭���O��/proc/meminfo�ɂ‚��āA�O���̊ϓ_�Ɋ�Â��Đςݏグ�O���t����������̂ł��B

�@�قڂ��ׂẴ�������Active�ƂȂ��Ă���AMemFree��Inactive�͂킸���ł��B����͊m���Ƀ������s���Ƃ��������ł��B�J�[�l���̕������������������ƍl���Ă����̂ł����A�̐S��PageTables��Slab�AVmallocUsed�Ȃǂ͂��܂葝���Ă��܂���B����͈�̂ǂ��������Ƃł��傤���H

�@�c�c�ƁA�����܂ł��āA1�•s�R�ȓ_�ɋC���t���܂��񂩁H

�@�����B���ׂĂ𑫂����������̑��ʂ���12Gbytes��������܂���B�m�����̃T�[�o�̓�������50Gbytes���ڂ��Ă��܂�����ˁH ���ꂪ���‚̊Ԃɂ�12Gbytes�ɂȂ��Ă���c�c������ςȂ��Ƃ��N���Ă������ł��B

�@�m�F�̂��߂ɁA���u�[�g���O��̃������g�p�ʂ̃O���t�����Ă݂܂��傤�i�}3�j�B���u�[�g�O��10Gbytes�O��ł����A���u�[�g���50Gbytes���x�ɏオ���Ă��܂��B����͖��炩�����i2�j�����藧���Ă��Ȃ����Ƃ������Ă��܂��B

}3@u[gOmeminfo̓Ot �}3�@���u�[�g�O���meminfo��̓O���t

�c���ł��Ȃ��������̈�̐��̂�ǂ�

�@�}1�̉E���ɔ����󔒂��c�������Ƃɂ��C�t���ł��傤���H ���i2�j�Ōv�Z������Ȃ��̂͂��̕����ł��B�‚܂�ALinux�ɂ�/proc/meminfo�ɂ͋L�^����Ȃ��������̈悪���݂���̂ł��B����͈�̉��Ȃ̂ł��傤���B

�@vmalloc()��kmalloc()�𗘗p���ă��������m�ۂ����ꍇ�A�����API�̉�����ŃJ�E���^��݂��ē��v�����擾���Ă��܂��B/proc/meminfo�́A���̓��v�����o�͂��邽�߂̃G���g���ł��B

�@������Linux�J�[�l���ł́A������API��������Ƀ��[���x���̊֐��𗘗p���邱�ƂŁA�����̃J�E���g��������邱�Ƃ��ł��܂��B����Ӗ��u���A�v�̂悤�Ȍ`�Ń��������擾���邱�Ƃ��ł��Ă��܂��̂ł��B���́u���ł�����v���A�J�[�l���v���O���~���O�̋��낵���Ƃ����1�‚Ƃ����܂��B

�@���̂悤�ȏꍇ�A�؂蕪���̎菇�Ƃ��Ă͂ǂ�����΂悢�ł��傤���H Linux�J�[�l����1000���s�𒴂��鋐��ȃv���O�����ł��B��݂����Ƀ\�[�X�R�[�h��ǂ�Ŗ��_�ɂԂ‚���”\���́A���ꂱ���󂭂��ɓ���������Ⴂ���炢�ł��B��͂�_���I�ɏ���ǂ��Ēn���ȍi�荞�݂�����Ă�����������܂���B

�@�����󔒂̃������̈������Ă��錴����_���I�ɒǂ��Ă����ɓ������āA���ڂ��ׂ��͈ȉ���2�_�ł��B

  1. Slab�AVmallocUsed�APageTables�Ȃǂɂ̓J�E���g����Ȃ�
  2. MemFree�̓J�E���g�_�E�������Ă���

�@�‚܂�A�ʏ��API�͗��p���Ă��Ȃ����AMemFree�̃J�E���g�_�E���͍s���Ă���̂ł��BMemFree���J�E���g�_�E��������悤�ȏ����́A�e�탁�����m��API�������[���x���ȕ����Ŏ�������Ă��܂��BSlab��vmalloc�APageTables�Ȃǂ����ׂāA����MemFree���J�E���g�_�E��������悤�ȋ��ʊ֐��𗘗p���Ă��܂��B���̊֐���alloc_pages()�i��3�j�ł��B

�@��{�I�ɂ��̊֐��̓������̓��v���̃J�E���g�ΏۂɂȂ�Ȃ����߁A���ڎg�����Ƃ͖]�܂����Ȃ��̂ł����A�\�[�X�R�[�h��grep���Ă݂�ƁA����alloc_pages()�𒼐ڌĂяo���Ă���s�͂��҂͌��\���܂��B���ɁA�h���C�o�̂悤�ȁu��x���������m�ۂ���Ƃ������܂胁������K�v�Ƃ��Ȃ��v���[�`���ɑ��������܂��B�ق��ɂ��ADMA�̈�p�̃������m�ۂȂǁA�����̃T�u�V�X�e�����狤�ʊ֐��Ƃ��ČĂяo����Ă��܂��B

�@���������alloc_pages()�𒼐ڌĂяo���Ă��镔���𒆐S�I�ɒ��ׂ�̂��悳�����ł��B�������A���ɑ����̕����ŗ��p����Ă��邱�̊֐��̌Ăяo�����𒀈�ǂ��Ă����̂��܂������I�ł͂���܂���B�ǂ�����Ζ��̍��������‚��邱�Ƃ��ł���̂ł��傤���c�c�H

��3�Falloc_pages()���̂̓}�N����`����Ă���A�֐��Ƃ��Ă�__alloc_pages()�Ƃ������̂��{�̂ł��B�����ł͊ȒP�ɂ��邽�߂ɁA�֘A�����̑��̂Ƃ���alloc_pages()�ƌĂ�ł��܂�


�������Ƃ��̃J�[�l���v���[�u

�@�J�[�l���ɖ�肪����ꍇ�A�\�[�X�R�[�h������̂�1�‚̎�ł����A�ق��ɂ���͂̂��߂̎�@�͂����‚�����܂��B�Ⴆ�Έȉ��̎�@����\�I�ł��傤�B

  1. Crash Dump
  2. OProfile
  3. �J�[�l����printk��������p�b�`�𓖂ĂĒn���ɉ�́i�J�[�l���v���[�u�j

�@1��Crash Dump�̓v���Z�X�̃R�A�_���v�Ɠ����ŁA���񂾏u�Ԃ̃������C���[�W��ۑ����A��͂����@�ł��B�J�[�l���p�j�b�N�Ȃǂ��N�����ăV�X�e������~�����ꍇ�ɁA�ǂ�ȗ��R�Œ�~�����̂��Ȃǂ���͂���̂Ɍ����Ă��܂��i��4�j�B

�@2��OProfile�͐��\��̓c�[���Ƃ��Ă̈Ӗ������������A�{�g���l�b�N�̉�͂ȂǂɌ����Ă��܂��B

�@3�̕��@�͐�������܂ł�����܂��񂪁A���܂�ɂ��n���Ȏ�i�ł��B�������ꏊ�Ɂuprintk()�v�Ƃ����A���[�U�[�v���O�����ł���printf()�ɓ�����֐��𖄂ߍ��݁A�������ώ@���܂��B

�@1��2�̕��@�̓��������[�N�̂悤�Ȏ��ۂɂ͌����Ă��܂���B3�͍�Ƃ���ςȂ����ɁA�Ǝ��p�b�`���ڋq�̊‹��œ������Ă��炦��Ƃ͎v���܂���B�r���ɕ��Ă�������ꂪ�]�݂��|�����c�[��������܂��B���̖����uSystemTap�v�Ƃ����܂��B

�@SystemTap�Ƃ́A���傤�ǂ��̃V�X�e�������삵�Ă���RHEL 4 Update 2����A�e�N�m���W�[�v���r���[�Ƃ��ē��������悤�ɂȂ����c�[���ł��B�ꌾ�ł����ƁA���쒆�̃J�[�l���ɓƎ��̃p�b�`�𓖂āA�D���ȏ����������邱�Ƃ��ł���c�[���ł��B

}4 SystemTap̓ �}4 SystemTap�̓���

�@�����Ƃ�����Ɛ�������ƁA�ȉ��̂悤�ɓ��삵�܂��B

  1. �}�������������������J�[�l�����W���[�����쐬����
  2. kprobes�Ƃ����@�\�𗘗p���A�C�ӂ̏ꏊ�ւ��̃J�[�l�����W���[���ւ̃W�����v���߂𖄂ߍ���
  3. �J�[�l���̓��삪�ύX�����

�@���̃c�[���́A���쒆�̃J�[�l���A�‚܂胁������ɂ����ύX�������܂���B�‚܂�A�f�B�X�N��ɂ���J�[�l���̃o�C�i���Ƀp�b�`�𓖂ĂȂ����߁A���u�[�g����΂���ȑO�ɃJ�[�l�����W���[�����A�����[�h���A���ɖ߂�܂��B���̂��߁A�ڋq���猩��ƁA�p�b�`�𓖂Ăĉ�͂�����������X�N��R�X�g�����i�����čς݂܂��B

�@����ł́ASystemTap���ǂ̂悤�ɗ��p�����̂��������܂��傤�B

�@alloc_pages()�ɂ́A�΂ɂȂ郁��������p�֐��Ƃ���free_pages()������܂��B�ʏ�́A�Ƃ���alloc_pages()�Ŏ擾�����������́A���΂炭�����free_pages()�ʼn������܂��B�‚܂�Aalloc_pages()�ɂ́A����ɑΉ�����free_pages()������͂��ł��B�����΂ɂȂ��Ă��Ȃ��ꍇ�̓��������[�N���������Ă���”\���������Ƃ������ƂɂȂ�܂��B

�@�����͂���2�‚̊֐��ɁA�J�[�l�����̃X�^�b�N�g���[�X�ƃv���Z�X�����擾���ĕۑ�����悤�ȏ������������݁A�ڋq���̌��؊‹��Ŏ��{���Ă��炤���Ƃɂ��܂����B

�@�������Ď擾�������O�f�[�^����Aalloc_pages()�ɑΉ�����free_pages()�����‚��ăy�A�����܂��B���̃y�A�̂����Aalloc_pages��free_pages�̐����ނ荇���Ă��Ȃ����̂����‚��o���܂��B

�@���̍�ƁA��ς����ɕ������܂����A�{���ɑ�ςł��I

�@5�����x�f�[�^���擾���������ŁA�X�^�b�N�g���[�X�ŕ��ނ��ׂ�alloc_pagas�̌Ăяo���p�^�[������5000��ވȏ�ɂȂ��Ă��܂����B�����Ȃ�alloc_pages��free_pages�̑Ή��֌W�����Ă����Ă��L�����Ȃ����߁A���������v�����擾����API����Ăяo����Ă�����̂�Ђ��[�������Ă����܂��B��������A�ގ��̃X�^�b�N�g���[�X���܂Ƃ߂Ă����Afree_pages�Ƃ̑Ή��֌W������Ă����܂��B

�@�����āA�ŏI�I��alloc_pages��free_pages�̑Ή��֌W�����Ă��Ȃ��悤�Ɍ������̂��ANFS����Ăяo����Ă�����̂ƁAcciss�iHP��SMART�A���C�̃h���C�o�j����Ăяo����Ă�����̂ł����B

��4�F���̎�@�𗘗p���āA�ғ����̃J�[�l���̃������C���[�W��ۑ�����Live Dump�Ƃ�����@������܂����A���̏u�ԏu�Ԃ̃C���[�W�����擾�ł��܂���̂ŁASystemTap�قǂ̏_��͂���܂���B


Copyright © ITmedia, Inc. All Rights Reserved.

'; this.insertTarget = document.querySelector('#cmsBody .subscription') || document.querySelector('#cmsBody .inner'); }; BodyAdIMSWithCCE.prototype = Object.create(BodyAdContent.prototype); BodyAdIMSWithCCE.prototype.activate = function () { refreshGam('InArtSpecialLink'); } // global reference window.itm = itm; //entry point BodyAdEventBase.polyfill(); const bodyAdManager = BodyAdManager.getInstance(); bodyAdManager.addEventListener(BodyAdManager.EVENTS.READY, function (ev) { bodyAdManager.loadAdvertise(); }); bodyAdManager.init(); })();
�X�|���T�[����̂��m�点PR

���ڂ̃e�[�}

Microsoft  WindowsőO2025
AI for GWjAO
[R[h^m[R[h Zg by IT - ITGWjArWlX̒SŊ􂷂gD
Cloud Native Central by IT - XP[uȔ\͂gD
�V�X�e���J���m�E�n�E �y�����i�r�zPR
���Ȃ��ɂ������߂̋L��PR

RSS�ɂ‚���

�A�C�e�B���f�B�AID�ɂ‚���

���[���}�K�W���o�^

��IT�̃��[���}�K�W���́A �������A���ׂĖ����ł��B���Ѓ��[���}�K�W�������w�ǂ��������B