Collecting information from sysfs about cpu events

$sudo cat /sys/devices/cpu/events/cache-misses 
event=0x81
$sudo cat /sys/devices/cpu/type 
4
$sudo cat /sys/devices/cpu/events/branch-instructions 
event=0xc2
$sudo cat /sys/devices/cpu/events/branch-instructions 
event=0xc2
$sudo cat /sys/devices/cpu/events/branch-instructions 
event=0xc2
$sudo cat /sys/devices/cpu/events/branch-instructions 
event=0xc2
$sudo cat /sys/devices/cpu/events/branch-misses 
event=0xc3
$sudo cat /sys/devices/cpu/events/branch-misses 
event=0xc3
$sudo cat /sys/devices/cpu/events/cache-references 
event=0x80
$sudo cat /sys/devices/cpu/events/cpu-cycles 
event=0x76
$sudo cat /sys/devices/cpu/events/instructions 
event=0xc0
$

Example related — Recovering typical deleted file in GNU/Linux

$which glxgears
/usr/bin/glxgears
$rm /usr/bin/glxgears 
rm: remove write-protected regular file ‘/usr/bin/glxgears’? y
rm: cannot remove ‘/usr/bin/glxgears’: Permission denied
$sudo rm /usr/bin/glxgears 
[sudo] password for jeffrin: 
$ps aux | grep glxgears
jeffrin   2469  4.4  0.6 157656 20888 pts/0    Sl+  22:43   0:07 glxgears
jeffrin   2515  0.0  0.0  12656  1560 pts/1    S+   22:46   0:00 grep glxgears
$sudo cat /proc/246
2466/ 2467/ 2469/ 
$sudo cat /proc/2469/exe > /usr/bin/glxgears
bash: /usr/bin/glxgears: Permission denied
$sudo cat /proc/2469/exe > /usr/bin/glxgears
bash: /usr/bin/glxgears: Permission denied
$su
Password: 
root>cat /proc/2469/exe > /usr/bin/glxgears
root>exit
$/usr/bin/glx
glxdemo   glxheads  glxinfo   
$ls -l /usr/bin/glxgears 
-rw-r--r-- 1 root root 23088 May 13 22:47 /usr/bin/glxgears
$ls -l /usr/bin/gl
glib-compile-resources  glib-genmarshal         glib-mkenums            glxdemo                 glxheads
glib-compile-schemas    glib-gettextize         glilypond               glxgears                glxinfo
$ls -l /usr/bin/glxdemo 
-rwxr-xr-x 1 root root 10376 Jul  8  2014 /usr/bin/glxdemo
$ls -l /usr/bin/glxgears 
-rw-r--r-- 1 root root 23088 May 13 22:47 /usr/bin/glxgears
$sudo chmod +x /usr/bin/glxgears 
$ls -l /usr/bin/glxgears 
-rwxr-xr-x 1 root root 23088 May 13 22:47 /usr/bin/glxgears
$/usr/bin/glxgears 
Running synchronized to the vertical refresh.  The framerate should be
approximately the same as the monitor refresh rate.
379 frames in 5.0 seconds = 75.789 FPS
XIO:  fatal IO error 11 (Resource temporarily unavailable) on X server ":0"
      after 1627 requests (1627 known processed) with 0 events remaining.
$

Example for – Trace all system calls which involve process management

$strace  -e trace=process  python dig.py 
execve("/usr/bin/python", ["python", "dig.py"], [/* 39 vars */]) = 0
arch_prctl(ARCH_SET_FS, 0x7feb563b4700) = 0
I think lscpu command is using proc filesystem to get data.
/* /sys paths */
#define _PATH_SYS_SYSTEM        "/sys/devices/system"
#define _PATH_SYS_CPU           _PATH_SYS_SYSTEM "/cpu"
#define _PATH_SYS_NODE          _PATH_SYS_SYSTEM "/node"
#define _PATH_PROC_XEN          "/proc/xen"
#define _PATH_PROC_XENCAP       _PATH_PROC_XEN "/capabilities"
#define _PATH_PROC_CPUINFO      "/proc/cpuinfo"
#define _PATH_PROC_PCIDEVS      "/proc/bus/pci/devices"
#define _PATH_PROC_SYSINFO      "/proc/sysinfo"
#define _PATH_PROC_STATUS       "/proc/self/status"
#define _PATH_PROC_VZ   "/proc/vz"
#define _PATH_PROC_BC   "/proc/bc"
#define _PATH_PROC_DEVICETREE   "/proc/device-tree"
#define _PATH_DEV_MEM           "/dev/mem"

Number of commands found is :  0
exit_group(0)                           = ?
+++ exited with 0 +++
$man strace
$man strace
$

Hacking with a JavaScript Program

var drawCats = function (howManyTimes) {
  for (var i = 0; i < howManyTimes; i++) {
    console.log(i + " =^.^=);
  }
};
drawCats(11);
VM455:4 Uncaught SyntaxError: Unexpected token ILLEGALmessage: "Unexpected token ILLEGAL"stack: (...)get stack: function () { [native code] }arguments: nullcaller: nulllength: 0name: ""prototype: StackTraceGetter__proto__: function Empty() {}set stack: function () { [native code] }arguments: nullcaller: nulllength: 1name: ""prototype: StackTraceSetter__proto__: function Empty() {}__proto__: Errorconstructor: function SyntaxError() { [native code] }name: "SyntaxError"stack: (...)get stack: function () { [native code] }set stack: function () { [native code] }__proto__: d
var drawCats = function (howManyTimes) {
  for (var i = 0; i < howManyTimes; i++) {
    console.log(i + " =^.^= ");
  }
};
drawCats(11);
VM504:4 0 =^.^= 
VM504:4 1 =^.^= 
VM504:4 2 =^.^= 
VM504:4 3 =^.^= 
VM504:4 4 =^.^= 
VM504:4 5 =^.^= 
VM504:4 6 =^.^= 
VM504:4 7 =^.^= 
VM504:4 8 =^.^= 
VM504:4 9 =^.^= 
VM504:4 10 =^.^= 
undefined

Hacking with strace to find about write calls in a program

$strace -e write python dig.py 
write(1, "\33[31mI think lscpu command is us"..., 69I think lscpu command is using proc filesystem to get data.
) = 69
write(1, "\33[31m/* /sys paths */\33[0m\n", 26/* /sys paths */
) = 26
write(1, "\33[31m#define _PATH_SYS_SYSTEM   "..., 63#define _PATH_SYS_SYSTEM        "/sys/devices/system"
) = 63
write(1, "\33[31m#define _PATH_SYS_CPU      "..., 65#define _PATH_SYS_CPU           _PATH_SYS_SYSTEM "/cpu"
) = 65
write(1, "\33[31m#define _PATH_SYS_NODE     "..., 66#define _PATH_SYS_NODE          _PATH_SYS_SYSTEM "/node"
) = 66
write(1, "\33[31m#define _PATH_PROC_XEN     "..., 53#define _PATH_PROC_XEN          "/proc/xen"
) = 53
write(1, "\33[31m#define _PATH_PROC_XENCAP  "..., 72#define _PATH_PROC_XENCAP       _PATH_PROC_XEN "/capabilities"
) = 72
write(1, "\33[31m#define _PATH_PROC_CPUINFO "..., 57#define _PATH_PROC_CPUINFO      "/proc/cpuinfo"
) = 57
write(1, "\33[31m#define _PATH_PROC_PCIDEVS "..., 65#define _PATH_PROC_PCIDEVS      "/proc/bus/pci/devices"
) = 65
write(1, "\33[31m#define _PATH_PROC_SYSINFO "..., 57#define _PATH_PROC_SYSINFO      "/proc/sysinfo"
) = 57
write(1, "\33[31m#define _PATH_PROC_STATUS  "..., 61#define _PATH_PROC_STATUS       "/proc/self/status"
) = 61
write(1, "\33[31m#define _PATH_PROC_VZ   \"/p"..., 44#define _PATH_PROC_VZ   "/proc/vz"
) = 44
write(1, "\33[31m#define _PATH_PROC_BC   \"/p"..., 44#define _PATH_PROC_BC   "/proc/bc"
) = 44
write(1, "\33[31m#define _PATH_PROC_DEVICETR"..., 61#define _PATH_PROC_DEVICETREE   "/proc/device-tree"
) = 61
write(1, "\33[31m#define _PATH_DEV_MEM      "..., 52#define _PATH_DEV_MEM           "/dev/mem"
) = 52
write(1, "\33[31m\33[0m\n", 10
)         = 10
write(1, "Number of commands found is :  0"..., 33Number of commands found is :  0
) = 33
+++ exited with 0 +++
$

Internal of lscpu command

I think lscpu command is using proc filesystem to get data.
/* /sys paths */
#define _PATH_SYS_SYSTEM        "/sys/devices/system"
#define _PATH_SYS_CPU           _PATH_SYS_SYSTEM "/cpu"
#define _PATH_SYS_NODE          _PATH_SYS_SYSTEM "/node"
#define _PATH_PROC_XEN          "/proc/xen"
#define _PATH_PROC_XENCAP       _PATH_PROC_XEN "/capabilities"
#define _PATH_PROC_CPUINFO      "/proc/cpuinfo"
#define _PATH_PROC_PCIDEVS      "/proc/bus/pci/devices"
#define _PATH_PROC_SYSINFO      "/proc/sysinfo"
#define _PATH_PROC_STATUS       "/proc/self/status"
#define _PATH_PROC_VZ   "/proc/vz"
#define _PATH_PROC_BC   "/proc/bc"
#define _PATH_PROC_DEVICETREE   "/proc/device-tree"
#define _PATH_DEV_MEM           "/dev/mem"

Looking into a few commands with python interactive shell

ABOUT PYTHON

Python is an interpreted, high-level, general-purpose programming language. Created by Guido van Rossum and first released in 1991, Python has a design philosophy that emphasizes code readability, notably using significant whitespace. It provides constructs that enable clear programming on both small and large scales.[26] Van Rossum led the language community until stepping down as leader in July 2018.[27][28]

TYPICAL PYTHON SHELL EXPOSURE
[python]
Python 2.7.9 (default, Mar 1 2015, 12:57:24)
[GCC 4.9.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys, os
>>> len(dir(sys))
69
>>> len(dir(os))
235
>>> len(dir(os.oath))
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: ‘module’ object has no attribute ‘oath’
>>> len(dir(os.path))
53
>>>
[/python]
[python]
Python 2.7.15+ (default, Feb 16 2019, 10:39:20)
[GCC 8.2.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> help
Type help() for interactive help, or help(object) for help about object.
>>> help()

Welcome to Python 2.7! This is the online help utility.

If this is your first time using Python, you should definitely check out
the tutorial on the Internet at http://docs.python.org/2.7/tutorial/.

Enter the name of any module, keyword, or topic to get help on writing
Python programs and using Python modules. To quit this help utility and
return to the interpreter, just type "quit".

To get a list of available modules, keywords, or topics, type "modules",
"keywords", or "topics". Each module also comes with a one-line summary
of what it does; to list the modules whose summaries contain a given word
such as "spam", type "modules spam".

help> help if
no Python documentation found for ‘help if’

help> if

Related help topics: TRUTHVALUE

help> keywords

Here is a list of the Python keywords. Enter any keyword to get more help.

and elif if print
as else import raise
assert except in return
break exec is try
class finally lambda while
continue for not with
def from or yield
del global pass

help>

[/python]]

LINKS
https://en.wikipedia.org/wiki/Python_(programming_language)
https://docs.python.org/3/tutorial/interpreter.html

Hacking with strace on ls

$ls
1
$strace ls
execve("/bin/ls", ["ls"], [/* 38 vars */]) = 0
brk(0)                                  = 0x7ae000
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fb78ab18000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=136302, ...}) = 0
mmap(NULL, 136302, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7fb78aae8000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libselinux.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\20c\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=142728, ...}) = 0
mmap(NULL, 2246896, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fb78a6c8000
mprotect(0x7fb78a6e9000, 2097152, PROT_NONE) = 0
mmap(0x7fb78a8e9000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x21000) = 0x7fb78a8e9000
mmap(0x7fb78a8eb000, 6384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fb78a8eb000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libacl.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\200\37\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=35288, ...}) = 0
mmap(NULL, 2130592, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fb78a4b8000
mprotect(0x7fb78a4c0000, 2093056, PROT_NONE) = 0
mmap(0x7fb78a6bf000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x7000) = 0x7fb78a6bf000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0P\34\2\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=1729984, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fb78ab17000
mmap(NULL, 3836448, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fb78a108000
mprotect(0x7fb78a2a7000, 2097152, PROT_NONE) = 0
mmap(0x7fb78a4a7000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x19f000) = 0x7fb78a4a7000
mmap(0x7fb78a4ad000, 14880, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fb78a4ad000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libpcre.so.3", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\20\27\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=448440, ...}) = 0
mmap(NULL, 2543976, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fb789e98000
mprotect(0x7fb789f04000, 2097152, PROT_NONE) = 0
mmap(0x7fb78a104000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6c000) = 0x7fb78a104000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libdl.so.2", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320\16\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=14664, ...}) = 0
mmap(NULL, 2109712, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fb789c90000
mprotect(0x7fb789c93000, 2093056, PROT_NONE) = 0
mmap(0x7fb789e92000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7fb789e92000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libattr.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320\23\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=18640, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fb78ab16000
mmap(NULL, 2113912, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fb789a88000
mprotect(0x7fb789a8c000, 2093056, PROT_NONE) = 0
mmap(0x7fb789c8b000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x7fb789c8b000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\20o\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=137440, ...}) = 0
mmap(NULL, 2213008, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fb789868000
mprotect(0x7fb789880000, 2093056, PROT_NONE) = 0
mmap(0x7fb789a7f000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x17000) = 0x7fb789a7f000
mmap(0x7fb789a81000, 13456, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fb789a81000
close(3)                                = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fb78ab15000
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fb78ab13000
arch_prctl(ARCH_SET_FS, 0x7fb78ab13800) = 0
mprotect(0x7fb78a4a7000, 16384, PROT_READ) = 0
mprotect(0x7fb789a7f000, 4096, PROT_READ) = 0
mprotect(0x7fb789c8b000, 4096, PROT_READ) = 0
mprotect(0x7fb789e92000, 4096, PROT_READ) = 0
mprotect(0x7fb78a104000, 4096, PROT_READ) = 0
mprotect(0x7fb78a6bf000, 4096, PROT_READ) = 0
mprotect(0x7fb78a8e9000, 4096, PROT_READ) = 0
mprotect(0x61b000, 4096, PROT_READ)     = 0
mprotect(0x7fb78ab10000, 4096, PROT_READ) = 0
munmap(0x7fb78aae8000, 136302)          = 0
set_tid_address(0x7fb78ab13ad0)         = 3887
set_robust_list(0x7fb78ab13ae0, 24)     = 0
rt_sigaction(SIGRTMIN, {0x7fb78986e9f0, [], SA_RESTORER|SA_SIGINFO, 0x7fb7898778d0}, NULL, 8) = 0
rt_sigaction(SIGRT_1, {0x7fb78986ea80, [], SA_RESTORER|SA_RESTART|SA_SIGINFO, 0x7fb7898778d0}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0
statfs("/sys/fs/selinux", 0x7fffb8555110) = -1 ENOENT (No such file or directory)
statfs("/selinux", 0x7fffb8555110)      = -1 ENOENT (No such file or directory)
brk(0)                                  = 0x7ae000
brk(0x7cf000)                           = 0x7cf000
open("/proc/filesystems", O_RDONLY)     = 3
fstat(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fb78ab0f000
read(3, "nodev\tsysfs\nnodev\trootfs\nnodev\tr"..., 1024) = 344
read(3, "", 1024)                       = 0
close(3)                                = 0
munmap(0x7fb78ab0f000, 4096)            = 0
open("/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=1607936, ...}) = 0
mmap(NULL, 1607936, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7fb78a980000
close(3)                                = 0
ioctl(1, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
ioctl(1, TIOCGWINSZ, {ws_row=40, ws_col=126, ws_xpixel=0, ws_ypixel=0}) = 0
openat(AT_FDCWD, ".", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 3
getdents(3, /* 3 entries */, 32768)     = 72
getdents(3, /* 0 entries */, 32768)     = 0
close(3)                                = 0
fstat(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 0), ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fb78ab0f000
write(1, "1\n", 21
)                      = 2
close(1)                                = 0
munmap(0x7fb78ab0f000, 4096)            = 0
close(2)                                = 0
exit_group(0)                           = ?
+++ exited with 0 +++
$

Examining an ELF binary with binutils

$strings a.out
/lib64/ld-linux-x86-64.so.2
libc.so.6
printf
__libc_start_main
__gmon_start__
GLIBC_2.2.5
fffff.
[]A\A]A^A_
hello
;*3$"
GCC: (Debian 4.9.2-10) 4.9.2
GCC: (Debian 4.8.3-13) 4.8.3
hello.c
long unsigned int
short unsigned int
short int
GNU C 4.9.2 -mtune=generic -march=x86-64 -g
unsigned char
long int
sizetype
main
hello.c
/home/jeffrin
.symtab
.strtab
.shstrtab
.interp
.note.ABI-tag
.note.gnu.build-id
.gnu.hash
.dynsym
.dynstr
.gnu.version
.gnu.version_r
.rela.dyn
.rela.plt
.init
.text
.fini
.rodata
.eh_frame_hdr
.eh_frame
.init_array
.fini_array
.jcr
.dynamic
.got
.got.plt
.data
.bss
.comment
.debug_aranges
.debug_info
.debug_abbrev
.debug_line
.debug_str
crtstuff.c
__JCR_LIST__
deregister_tm_clones
register_tm_clones
__do_global_dtors_aux
completed.6661
__do_global_dtors_aux_fini_array_entry
frame_dummy
__frame_dummy_init_array_entry
hello.c
__FRAME_END__
__JCR_END__
__init_array_end
_DYNAMIC
__init_array_start
_GLOBAL_OFFSET_TABLE_
__libc_csu_fini
_ITM_deregisterTMCloneTable
data_start
_edata
_fini
printf@@GLIBC_2.2.5
__libc_start_main@@GLIBC_2.2.5
__data_start
__gmon_start__
__dso_handle
_IO_stdin_used
__libc_csu_init
_end
_start
__bss_start
main
_Jv_RegisterClasses
__TMC_END__
_ITM_registerTMCloneTable
_init
$