-
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
- 278,424 hits
-

All blogs on this website are licensed under a Creative Commons Attribution 4.0 International License.
Category Archives: Programming
x86 assembly programming with GNU – tool tips
1. coding pattern # Pattern used by as and ld .section .data < initialized data here> .section .bss < uninitialized data here> .section .text .globl _start _start: < instruction code here> ———————————- # Pattern used by gcc .section .data < … Continue reading
KSH coding standard – by Stephen Phil Hill
This post was originated by Stephen Phil Hill (Stephen.p.Hill@alcatel-lucent.com) on Oct 8, 2008. As an experienced developer in SU (software upgrade), Phil has spent years on writing KSH and TCL scripts. More ever, this KSH coding standard has been a … Continue reading
passing 2D array in C – some mistakes and tips
// This is an example source file which is used to show common // mistakes and tips when passing 2D array as a parameter to a // function call in C/C++ programming. // Feb 19, 2011 // dave.tian@alcatel-lucent.com #include <stdio.h> … Continue reading
happy chinese new year – do the right thing – some thoughts on software
(The pic above was taken on Feb 3, 2011 – Chinese New Year, Spring Festival – my Jackson and Squier) Happy Chinese New Year – the year of rabbit 过年好, my dear friends:) though it seems a little late…I have … Continue reading
to record my stupid mistake in programming
This post is used to record one mistake while my coding – just for my bad memory:) I have to admit that it spent me the whole day to figure out what was wrong, as it looked prefect except parse … Continue reading
write your own function with varying arguments
This post is used to tell how to write your own function with varying arguments (如何写变参函数) – we will write our own ‘printf()’ function called ‘ddLog()’. Wish the code below would give you a hint:) /* * This source file … Continue reading
error C2026 – VC compiler limitation and countermeasure
De facto, I am not familiar with VC compiler and do not use it often either. However, it really gives me a little surprise when I have a try, like the limitation on number of ‘else if’ (I could not … Continue reading
state machine programming – smp
This is a little C program used to show the framework of state machine programming (smp,状态机编程). Detailed state transition picture is as below. Try to build the source code below and enjoy:) /* * State Machine Program (SMP) * This … Continue reading
Essential Essence of Agile/Scrum
近期参加了公司组织的风险管理培训,结合Agile/Scrum,总结了一下自己对Why Agile/Scrum的理解,以下仅为个人见解,如有雷同,只能说英雄所见略同:) Essential Essence of Agile by Dave Tian 1. 挖掘客户的need而不是want - 通过与PO的及时、按时沟通,以最低风险达到客户最大满意度和最大收益 2. 软件开发从功能层面转向业务层面 - 通过捆绑PO、dev、tester,使团队整体感知客户的业务,高屋建瓴领,而不是仅仅专注于feature层面 3. 应对客户需求的多变 - 通过PO和短期迭代,随时交付可用产品(demo),客户可随时根据自身情况作出需求调整 4. 应对现代软件管理的滞后与盲目预测 - 混沌告诉我们超过24小时的天气预报是扯淡,那么在软件项目开始前就做出的任何预测也将在短期内失效,通过Scrum每天的例会和短期迭代,把大计划分化成阶段计划,并可以根据backlog里feature的prio随时更新计划 5. 应对软件开发人员水平的参差不齐 - 通过Scrum的例会,随时总结个人项目中的问题并分享与团队,以期团队整体在项目中最大化技术提升和团队战斗力而不是重在个人 6. 应对软件测试的资源浪费和事倍功半 - 忘了谁说的这句话(大概意思),软件测试不是用来发现bug的。个人非常同意,dev应当是自己code的最好tester,于是在agile中,dev应当充分利用新的UT技术或者其他自动化测试技术来完成对自己code的测试;而tester将从功能测试的层面转向业务层面,而业务层面的测试又要求新技术TDD、BDD、ATDD的应用(如果以现在FT、ST、NLT的架构来看,那么dev将负责FT和ST,tester会直接专注于NLT-业务层面)
clear screen for text – 3 ways in C
I have been wondering the implementation of top’s (I mean ‘top’ command) displaying for long – like a text ‘GUI’ on the screen with numbers changing all the time. Though still I have not got time to go thru the … Continue reading



