Title
SF006 – Linux & C Debugging Techniques
Course Overview
Course Highlight
- Course will be delivered by our Founder/Director who is an Expert with 16+ years of experience in Linux Kernel and SAN software development.
- The course flow will be an assignment driven model so that participants can have a hands-on experience of various debugging techniques.
- Participants will be writing, reviewing and debugging lots of C programs dealing with segmentation violation, stack overflow, heap overflow, arithmetic overflow, illegal code execution, stack issue, endian-ness issue, c library assertion, data type mismatches, etc.
Course Delivery
- Lectures, Classroom Discussions and Lab Exercises
- 30% Theory, 70% Lab
- Location: Bangalore, India
Sample Lab Assignment – Linux & C Debugging
/** Sanfoundry.com Memory Leak Program* Author: Manish Kumar Bhojasia, Location: Bangalore, India*/#include <stdio.h>#include <stdlib.h>#include <string.h>#define KB1 1024#define MEMSIZE (4 * KB1)char *string = "IDENTIFY 10 ISSUES IN THIS MEMLEAK PROGRAM";
char *gstring = "IDENTIFY 10 ISSUES IN THIS MEMLEAK PROGRAM";
char *gptr;
int num;
char * f1_alloc(void);
char * f2_copyme(void);
void f3_free(char *);
main()
{srand((int)getpid());
while (1) {
gptr = f1_alloc();
strcpy(gptr, string);
f2_copyme();
f3_free(gptr);
}}char *f1_alloc()
{return (malloc(MEMSIZE));
}char *f2_copyme()
{static int len, i = 0;
char *s;
len = strlen(string);
s = (char *)malloc(len);
strncpy(s, string, len);
i++;if (!(i % MEMSIZE))
printf("i=%d, %s\n", i, s);
}void f3_free(char *p)
{num = rand() % 3;
if (!num)
free(p);
}
Pre-Requisites
Basic understanding of C programming language
Target Audience
IT Professionals who are doing development, maintenance and testing of software products
Click Here for Linux & C Debugging course training schedule, fee and registration information
Course Outline
|
|
Manish Bhojasia, a technology veteran with 17+ years @ Cisco & Wipro, is Founder and CTO at Sanfoundry. He is Linux Kernel Developer and SAN Architect and is passionate about competency developments in these areas. He lives in Bangalore and delivers focused training sessions to IT professionals in Linux Kernel, Linux Debugging, Linux Device Drivers, Linux Networking, Linux Storage & Cluster Administration, Advanced C Programming, SAN Storage Technologies, SCSI Internals and Storage Protocols such as iSCSI & Fiber Channel. Stay connected with him below.
Register for Expert Level Training Classes by our Founder & CTO. Alternatively, call us for your Corporate Training or College Training needs.
















