-
I am Dave (Jing) Tian, an Associate Professor in the Department of Computer Science at Purdue University working on system security. My research involves embedded systems, operating systems, trusted and confidential computing, and hardware security. All opinions are my own.
Shoot me:
root@davejingtian.org Categories
Tags
- ABNF
- agile
- AI/ML
- Alcatel-Lucent
- android
- arp
- asn1c
- assembly
- bash
- ber
- bison
- BNF
- build
- C
- CentOS
- CIS122
- Coverity
- crypto
- csv
- cuda
- DCA
- ddclient
- debugfs
- DH
- Diffie-Hellman
- drd
- drig
- elixir
- fedora
- fedup
- flex
- fsck
- gcc
- gdb
- GFW
- git
- github
- gnome
- gprof
- gpu
- guitar
- gumstix
- helgrind
- intel
- itevad
- Java
- jmgsim
- JVM
- kenai
- kernel
- kill
- ksh
- kvm
- ld
- Linux
- list
- netbeans
- netlink
- nvidia
- OS
- overo
- Python
- relay
- security
- selinux
- sgx
- socket
- ssh
- Ubuntu
- UO
- USB
- valgrind
- x86
- x86_64
- yocto
Blog Stats
- 277,618 hits
-

All blogs on this website are licensed under a Creative Commons Attribution 4.0 International License.
Author Archives: daveti
Valgrind – dynamic code analysis tool – part III – Helgrind
Valgrind – Helgrind – concurrency issue detection. # Helgrind http://valgrind.org/docs/manual/hg-manual.html –tool=helgrind [root@localhost valgrindTest]# cat simpleDataRace.c /* Code from Valgrind Manual */ #include <pthread.h> int var = 0; void* child_fn ( void* arg ) { var++; /* Unprotected relative to parent … Continue reading
Valgrind – dynamic code analysis tool – part II – fd leak
Valgrind – File descriptor (fd) leak detection trial # File descriptor (fd) leak detection –track-fds=yes [root@localhost valgrindTest]# cat fdLeakTry.c /* daveti’s stupid code for fd leak */ #include <stdio.h> int main( int argc, char *argv[]) { FILE *fdPtr = fopen(“daveti.log”, … Continue reading
Valgrind – dynamic code analysis tool – part I – basic trial and hints
We are recently trying to find a tool providing the ability for concurrency issue detection. For this topic, generally, I believe in 3 steps: 1. CPR (capacity, performance, redundancy) testing, 2. Static code analysis, 3. Dynamic code analysis. CPR testing … Continue reading
bind() error 0x63 – Cannot assign requested address
Recently encountered a bind() error 0x63 – cannot assign requested address. After some effort on debugging, I list 2 possibilities here for reference when handling such this error code from bind(). Generally, if it is related with bad socket close/cleanup, … Continue reading
gprof and dot – some hints using gprof, gprof2dot and dot
Recently done a performance tuning using gprof, gprof2dot and dot. While there are already a lot of webs talking about them respectively or generally. This post is trying to provide some hints from my real experience, as well as some … Continue reading
A bad include in C – why static code analysis is needed for modern C/C++ projects
We have already had a long discussion and argument for ‘include’ mechanism in C/C++, no matter good or bad, and this is not my intention here. I am writing this post to show a confusing compiler error we have recently … Continue reading
Posted in Programming, Static Code Analysis, Stuff about Compiler
Tagged C/C++, SCA, splint
Leave a comment
csve – csv file evolver
Csv file, short for Comma Separated Version file, is usually a easy and common way to record [field:value] in multiple lines with all fields and values separated by comma, which is the basic data file of Microsoft Excel, as well … Continue reading
cccmt – Coverity code complexity metrics tool
cccmt is used to parse the METRICS.errors.xml generated by cov-analyze of Coverity to produce a Code Complexity Metrics (CCM) report of different functions. SAX is used to parse XML file instead of DOM as the XML file may be very … Continue reading
Posted in Dave's Tools, Programming, Static Code Analysis
Tagged cccmt, ccm, Coverity, Java, netbeans, SAXParser, xml
Leave a comment
itevad – How to write your own protocol and its stack – part 9
Previous_Part_8 Now we are moving to the last post of ‘itevad’ – writing a stack for decoding text format of Itevad Protocol using Flex and Bison as well as C as a main function. Being different with previous Flex and … Continue reading
Posted in Dave's Tools, H.248/MEGACO/EGCP, Programming, Stuff about Compiler
Tagged bison, flex, itevad
Leave a comment
itevad – How to write your own protocol and its stack – part 8
Previous_Part_7 After writing a Flex standalone lexer, we are going to make it a little bit useful – adding parser, Bison. When Flex and Bison work together, standalone flex file needs some changes to cooperate with Bison, as you will … Continue reading
Posted in Dave's Tools, H.248/MEGACO/EGCP, Programming, Stuff about Compiler
Tagged bison, flex, itevad
Leave a comment



