SmartOS Application Development and Debugging
Thank you for your interest in Joyent Training Services.
Duration: 3 days
This course is aimed at developers familiar with other operating systems, who want to develop applications on SmartOS. It covers topics and features specific to SmartOS and Smart Machines. The concepts being taught are reinforced throughout with hands-on live demos and lab work. Some prior experience doing development work is essential. The course will look at applications written in a variety of languages including shell scripting, C, and node.js. Development, deployment, debugging, and performance analysis are covered through examples and labs. The course shows the tools available on SmartOS for application developers, and describes techniques and strategies for using the tools to solve a wide range of problems. Along with developers, support staff will also benefit from this course.
- File System Layout (i.e., what's where)
- Address Space Layout
- User versus Kernel
- 32-bit vs. 64-bit Applications
- text, data, heap, stack, shared memory, libraries
- pmap output explained
- proc(1) tools
- pstack, pwdx, pargs, psig, preap, pflags, pcred, pldd, pwdx, pstop, prun, pwait, ptime
- Threads and Processes
- Threading model (1x1)
- ps, prstat
- mutexes, condition variables, readers/writer locks, semaphores
- User Level Debugging
- Types of bugs/hangs
- Tools (mdb, pstack, DTrace, truss)
- Techiques and strategies
- Overview of Crossbow
- ifconfig, dladm, netstat, dlstat(?), flowadm, flowstat
- snoop, wireshark, tcpdump, traceroute
- DTrace net provider
- Layout on disk(s)
- Snapshots and Clones
- ARC and ZIO
See the course calendar. From there you can also also fill out the request form to let us know of other courses or dates you would be interested in.
See cancellation policy.