summaryrefslogtreecommitdiffstats
path: root/cddl/contrib/dtracetoolkit/Code
diff options
context:
space:
mode:
Diffstat (limited to 'cddl/contrib/dtracetoolkit/Code')
-rw-r--r--cddl/contrib/dtracetoolkit/Code/Java/Func_abc.java26
-rw-r--r--cddl/contrib/dtracetoolkit/Code/Java/Func_loop.java19
-rw-r--r--cddl/contrib/dtracetoolkit/Code/JavaScript/func_clock.html39
-rw-r--r--cddl/contrib/dtracetoolkit/Code/JavaScript/func_slow.html31
-rwxr-xr-xcddl/contrib/dtracetoolkit/Code/Perl/func_abc.pl20
-rwxr-xr-xcddl/contrib/dtracetoolkit/Code/Perl/func_malloc.pl18
-rwxr-xr-xcddl/contrib/dtracetoolkit/Code/Perl/func_slow.pl20
-rwxr-xr-xcddl/contrib/dtracetoolkit/Code/Perl/hello.pl3
-rwxr-xr-xcddl/contrib/dtracetoolkit/Code/Perl/hello_strict.pl5
-rw-r--r--cddl/contrib/dtracetoolkit/Code/Php/func_abc.php23
-rwxr-xr-xcddl/contrib/dtracetoolkit/Code/Python/func_abc.py19
-rwxr-xr-xcddl/contrib/dtracetoolkit/Code/Python/func_slow.py26
-rw-r--r--cddl/contrib/dtracetoolkit/Code/Readme16
-rwxr-xr-xcddl/contrib/dtracetoolkit/Code/Ruby/func_abc.rb20
-rwxr-xr-xcddl/contrib/dtracetoolkit/Code/Ruby/func_slow.rb32
-rwxr-xr-xcddl/contrib/dtracetoolkit/Code/Shell/func_abc.sh23
-rwxr-xr-xcddl/contrib/dtracetoolkit/Code/Shell/func_slow.sh35
-rwxr-xr-xcddl/contrib/dtracetoolkit/Code/Shell/func_waste.sh23
-rw-r--r--cddl/contrib/dtracetoolkit/Code/Tcl/func_abc.tcl20
-rw-r--r--cddl/contrib/dtracetoolkit/Code/Tcl/func_slow.tcl29
20 files changed, 447 insertions, 0 deletions
diff --git a/cddl/contrib/dtracetoolkit/Code/Java/Func_abc.java b/cddl/contrib/dtracetoolkit/Code/Java/Func_abc.java
new file mode 100644
index 0000000..c14012e
--- /dev/null
+++ b/cddl/contrib/dtracetoolkit/Code/Java/Func_abc.java
@@ -0,0 +1,26 @@
+public class Func_abc {
+ public static void func_c() {
+ System.out.println("Function C");
+ try {
+ Thread.currentThread().sleep(1000);
+ } catch (Exception e) { }
+ }
+ public static void func_b() {
+ System.out.println("Function B");
+ try {
+ Thread.currentThread().sleep(1000);
+ } catch (Exception e) { }
+ func_c();
+ }
+ public static void func_a() {
+ System.out.println("Function A");
+ try {
+ Thread.currentThread().sleep(1000);
+ } catch (Exception e) { }
+ func_b();
+ }
+
+ public static void main(String[] args) {
+ func_a();
+ }
+}
diff --git a/cddl/contrib/dtracetoolkit/Code/Java/Func_loop.java b/cddl/contrib/dtracetoolkit/Code/Java/Func_loop.java
new file mode 100644
index 0000000..81be852
--- /dev/null
+++ b/cddl/contrib/dtracetoolkit/Code/Java/Func_loop.java
@@ -0,0 +1,19 @@
+public class Func_loop {
+ public static void func_c() {
+ System.out.println("Function C");
+ while (true) {
+ }
+ }
+ public static void func_b() {
+ System.out.println("Function B");
+ func_c();
+ }
+ public static void func_a() {
+ System.out.println("Function A");
+ func_b();
+ }
+
+ public static void main(String[] args) {
+ func_a();
+ }
+}
diff --git a/cddl/contrib/dtracetoolkit/Code/JavaScript/func_clock.html b/cddl/contrib/dtracetoolkit/Code/JavaScript/func_clock.html
new file mode 100644
index 0000000..c25610b
--- /dev/null
+++ b/cddl/contrib/dtracetoolkit/Code/JavaScript/func_clock.html
@@ -0,0 +1,39 @@
+<HTML>
+<HEAD>
+<TITLE>func_clock, JavaScript</TITLE>
+<SCRIPT type="text/javascript">
+function func_c() {
+ document.getElementById('now').innerHTML += "Function C<br>"
+ for (i = 0; i < 30000; i++) {
+ j = i + 1
+ }
+}
+
+function func_b() {
+ document.getElementById('now').innerHTML += "Function B<br>"
+ for (i = 0; i < 20000; i++) {
+ j = i + 1
+ }
+ func_c()
+}
+
+function func_a() {
+ document.getElementById('now').innerHTML += "Function A<br>"
+ for (i = 0; i < 10000; i++) {
+ j = i + 1
+ }
+ func_b()
+}
+
+function start() {
+ now = new Date()
+ document.getElementById('now').innerHTML = now + "<br>"
+ func_a()
+ var timeout = setTimeout('start()', 1000)
+}
+</SCRIPT>
+</HEAD>
+<BODY onload="start()">
+<DIV id="now"></DIV>
+</BODY>
+</HTML>
diff --git a/cddl/contrib/dtracetoolkit/Code/JavaScript/func_slow.html b/cddl/contrib/dtracetoolkit/Code/JavaScript/func_slow.html
new file mode 100644
index 0000000..14fdfda
--- /dev/null
+++ b/cddl/contrib/dtracetoolkit/Code/JavaScript/func_slow.html
@@ -0,0 +1,31 @@
+<HTML>
+<HEAD><TITLE>func_slow, JavaScript</TITLE></HEAD>
+<BODY>
+<SCRIPT type="text/javascript">
+function func_c() {
+ document.write("Function C<br>")
+ for (i = 0; i < 30000; i++) {
+ j = i + 1
+ }
+}
+
+function func_b() {
+ document.write("Function B<br>")
+ for (i = 0; i < 20000; i++) {
+ j = i + 1
+ }
+ func_c()
+}
+
+function func_a() {
+ document.write("Function A<br>")
+ for (i = 0; i < 10000; i++) {
+ j = i + 1
+ }
+ func_b()
+}
+
+func_a()
+</SCRIPT>
+</BODY>
+</HTML>
diff --git a/cddl/contrib/dtracetoolkit/Code/Perl/func_abc.pl b/cddl/contrib/dtracetoolkit/Code/Perl/func_abc.pl
new file mode 100755
index 0000000..394f1c2
--- /dev/null
+++ b/cddl/contrib/dtracetoolkit/Code/Perl/func_abc.pl
@@ -0,0 +1,20 @@
+#!./perl -w
+
+sub func_c {
+ print "Function C\n";
+ sleep 1;
+}
+
+sub func_b {
+ print "Function B\n";
+ sleep 1;
+ func_c();
+}
+
+sub func_a {
+ print "Function A\n";
+ sleep 1;
+ func_b();
+}
+
+func_a();
diff --git a/cddl/contrib/dtracetoolkit/Code/Perl/func_malloc.pl b/cddl/contrib/dtracetoolkit/Code/Perl/func_malloc.pl
new file mode 100755
index 0000000..5340c82
--- /dev/null
+++ b/cddl/contrib/dtracetoolkit/Code/Perl/func_malloc.pl
@@ -0,0 +1,18 @@
+#!./perl -w
+
+sub func_c {
+ print "Function C\n";
+}
+
+sub func_b {
+ print "Function B\n";
+ my $b = "B" x 100_000;
+ func_c();
+}
+
+sub func_a {
+ print "Function A\n";
+ func_b();
+}
+
+func_a();
diff --git a/cddl/contrib/dtracetoolkit/Code/Perl/func_slow.pl b/cddl/contrib/dtracetoolkit/Code/Perl/func_slow.pl
new file mode 100755
index 0000000..f32d09e
--- /dev/null
+++ b/cddl/contrib/dtracetoolkit/Code/Perl/func_slow.pl
@@ -0,0 +1,20 @@
+#!./perl -w
+
+sub func_c {
+ print "Function C\n";
+ for (my $i = 0; $i < 3000000; $i++) { my $j = $i + 1; }
+}
+
+sub func_b {
+ print "Function B\n";
+ for (my $i = 0; $i < 2000000; $i++) { my $j = $i + 1 ; }
+ func_c();
+}
+
+sub func_a {
+ print "Function A\n";
+ for (my $i = 0; $i < 1000000; $i++) { my $j = $i + 1; }
+ func_b();
+}
+
+func_a();
diff --git a/cddl/contrib/dtracetoolkit/Code/Perl/hello.pl b/cddl/contrib/dtracetoolkit/Code/Perl/hello.pl
new file mode 100755
index 0000000..3ca70a2
--- /dev/null
+++ b/cddl/contrib/dtracetoolkit/Code/Perl/hello.pl
@@ -0,0 +1,3 @@
+#!./perl
+
+print "Hello World!\n";
diff --git a/cddl/contrib/dtracetoolkit/Code/Perl/hello_strict.pl b/cddl/contrib/dtracetoolkit/Code/Perl/hello_strict.pl
new file mode 100755
index 0000000..78003a9
--- /dev/null
+++ b/cddl/contrib/dtracetoolkit/Code/Perl/hello_strict.pl
@@ -0,0 +1,5 @@
+#!./perl -w
+
+use strict;
+
+print "Hello World!\n";
diff --git a/cddl/contrib/dtracetoolkit/Code/Php/func_abc.php b/cddl/contrib/dtracetoolkit/Code/Php/func_abc.php
new file mode 100644
index 0000000..9165611
--- /dev/null
+++ b/cddl/contrib/dtracetoolkit/Code/Php/func_abc.php
@@ -0,0 +1,23 @@
+<?php
+function func_c()
+{
+ echo "Function C\n";
+ sleep(1);
+}
+
+function func_b()
+{
+ echo "Function B\n";
+ sleep(1);
+ func_c();
+}
+
+function func_a()
+{
+ echo "Function A\n";
+ sleep(1);
+ func_b();
+}
+
+func_a();
+?>
diff --git a/cddl/contrib/dtracetoolkit/Code/Python/func_abc.py b/cddl/contrib/dtracetoolkit/Code/Python/func_abc.py
new file mode 100755
index 0000000..0d4919f
--- /dev/null
+++ b/cddl/contrib/dtracetoolkit/Code/Python/func_abc.py
@@ -0,0 +1,19 @@
+#!/usr/bin/python
+
+import time
+
+def func_c():
+ print "Function C"
+ time.sleep(1)
+
+def func_b():
+ print "Function B"
+ time.sleep(1)
+ func_c()
+
+def func_a():
+ print "Function A"
+ time.sleep(1)
+ func_b()
+
+func_a()
diff --git a/cddl/contrib/dtracetoolkit/Code/Python/func_slow.py b/cddl/contrib/dtracetoolkit/Code/Python/func_slow.py
new file mode 100755
index 0000000..9cba9c5
--- /dev/null
+++ b/cddl/contrib/dtracetoolkit/Code/Python/func_slow.py
@@ -0,0 +1,26 @@
+#!/usr/bin/python
+
+def func_c():
+ print "Function C"
+ i = 0
+ while (i < 3000000):
+ i = i + 1
+ j = i + 1
+
+def func_b():
+ print "Function B"
+ i = 0
+ while (i < 2000000):
+ i = i + 1
+ j = i + 1
+ func_c()
+
+def func_a():
+ print "Function A"
+ i = 0
+ while (i < 1000000):
+ i = i + 1
+ j = i + 1
+ func_b()
+
+func_a()
diff --git a/cddl/contrib/dtracetoolkit/Code/Readme b/cddl/contrib/dtracetoolkit/Code/Readme
new file mode 100644
index 0000000..f8b16d7
--- /dev/null
+++ b/cddl/contrib/dtracetoolkit/Code/Readme
@@ -0,0 +1,16 @@
+Code - Example Programs
+
+ This directory contains example software sorted by language, which may
+ be used as the target for DTrace scripts. These examples are simple and
+ to the point, and are intended as example targets for when learing
+ DTrace.
+
+ Some people attempt to learn DTrace by tracing their complex real
+ world application first. That's the hard way. Try these programs instead,
+ and once you are confident here, move onto harder targets.
+
+ Some of these programs feature in the example files in the /Examples
+ directory.
+
+ This directory does not contain DTrace scripts.
+
diff --git a/cddl/contrib/dtracetoolkit/Code/Ruby/func_abc.rb b/cddl/contrib/dtracetoolkit/Code/Ruby/func_abc.rb
new file mode 100755
index 0000000..75adaf9
--- /dev/null
+++ b/cddl/contrib/dtracetoolkit/Code/Ruby/func_abc.rb
@@ -0,0 +1,20 @@
+#!./ruby -w
+
+def func_c
+ print "Function C\n"
+ sleep 1
+end
+
+def func_b
+ print "Function B\n"
+ sleep 1
+ func_c
+end
+
+def func_a
+ print "Function A\n"
+ sleep 1
+ func_b
+end
+
+func_a
diff --git a/cddl/contrib/dtracetoolkit/Code/Ruby/func_slow.rb b/cddl/contrib/dtracetoolkit/Code/Ruby/func_slow.rb
new file mode 100755
index 0000000..87a498c
--- /dev/null
+++ b/cddl/contrib/dtracetoolkit/Code/Ruby/func_slow.rb
@@ -0,0 +1,32 @@
+#!./ruby -w
+
+def func_c
+ print "Function C\n"
+ i = 0
+ while i < 300000
+ i = i + 1
+ j = i + 1
+ end
+end
+
+def func_b
+ print "Function B\n"
+ i = 0
+ while i < 200000
+ i = i + 1
+ j = i + 1
+ end
+ func_c
+end
+
+def func_a
+ print "Function A\n"
+ i = 0
+ while i < 100000
+ i = i + 1
+ j = i + 1
+ end
+ func_b
+end
+
+func_a
diff --git a/cddl/contrib/dtracetoolkit/Code/Shell/func_abc.sh b/cddl/contrib/dtracetoolkit/Code/Shell/func_abc.sh
new file mode 100755
index 0000000..b44ce57
--- /dev/null
+++ b/cddl/contrib/dtracetoolkit/Code/Shell/func_abc.sh
@@ -0,0 +1,23 @@
+#!./sh
+
+func_c()
+{
+ echo "Function C"
+ sleep 1
+}
+
+func_b()
+{
+ echo "Function B"
+ sleep 1
+ func_c
+}
+
+func_a()
+{
+ echo "Function A"
+ sleep 1
+ func_b
+}
+
+func_a
diff --git a/cddl/contrib/dtracetoolkit/Code/Shell/func_slow.sh b/cddl/contrib/dtracetoolkit/Code/Shell/func_slow.sh
new file mode 100755
index 0000000..3407646
--- /dev/null
+++ b/cddl/contrib/dtracetoolkit/Code/Shell/func_slow.sh
@@ -0,0 +1,35 @@
+#!./sh
+
+func_c()
+{
+ echo "Function C"
+ i=0
+ while [ $i -lt 300 ]
+ do
+ i=`expr $i + 1`
+ done
+}
+
+func_b()
+{
+ echo "Function B"
+ i=0
+ while [ $i -lt 200 ]
+ do
+ i=`expr $i + 1`
+ done
+ func_c
+}
+
+func_a()
+{
+ echo "Function A"
+ i=0
+ while [ $i -lt 100 ]
+ do
+ i=`expr $i + 1`
+ done
+ func_b
+}
+
+func_a
diff --git a/cddl/contrib/dtracetoolkit/Code/Shell/func_waste.sh b/cddl/contrib/dtracetoolkit/Code/Shell/func_waste.sh
new file mode 100755
index 0000000..bfeeecb
--- /dev/null
+++ b/cddl/contrib/dtracetoolkit/Code/Shell/func_waste.sh
@@ -0,0 +1,23 @@
+#!./sh
+
+func_c()
+{
+ /usr/bin/echo "Function C"
+ sleep 1
+}
+
+func_b()
+{
+ /usr/bin/echo "Function B"
+ sleep 1
+ func_c
+}
+
+func_a()
+{
+ /usr/bin/echo "Function A"
+ sleep 1
+ func_b
+}
+
+func_a
diff --git a/cddl/contrib/dtracetoolkit/Code/Tcl/func_abc.tcl b/cddl/contrib/dtracetoolkit/Code/Tcl/func_abc.tcl
new file mode 100644
index 0000000..c84acb0
--- /dev/null
+++ b/cddl/contrib/dtracetoolkit/Code/Tcl/func_abc.tcl
@@ -0,0 +1,20 @@
+#!./tclsh
+
+proc func_c {} {
+ puts "Function C"
+ after 1000
+}
+
+proc func_b {} {
+ puts "Function B"
+ after 1000
+ func_c
+}
+
+proc func_a {} {
+ puts "Function A"
+ after 1000
+ func_b
+}
+
+func_a
diff --git a/cddl/contrib/dtracetoolkit/Code/Tcl/func_slow.tcl b/cddl/contrib/dtracetoolkit/Code/Tcl/func_slow.tcl
new file mode 100644
index 0000000..d4fc598
--- /dev/null
+++ b/cddl/contrib/dtracetoolkit/Code/Tcl/func_slow.tcl
@@ -0,0 +1,29 @@
+#!./tclsh
+
+proc func_c {} {
+ puts "Function C"
+ set i 0
+ while {$i < 300000} {
+ set i [expr $i + 1]
+ }
+}
+
+proc func_b {} {
+ puts "Function B"
+ set i 0
+ while {$i < 200000} {
+ set i [expr $i + 1]
+ }
+ func_c
+}
+
+proc func_a {} {
+ puts "Function A"
+ set i 0
+ while {$i < 100000} {
+ set i [expr $i + 1]
+ }
+ func_b
+}
+
+func_a
OpenPOWER on IntegriCloud