System Programming Interview Questions
18 March, 2017 | preetam.mn
- How will you write a driver for a device? Design parameter..?
- Have you used IPC mechanism? Define individual pros and cons.
- Are you aware about Linux Memory Management?
- How will you allocate memory in interrupt handler?
- What are the things you care while writing an interrupt handler?
- What are physical address and virtual address? Why we use virtual address?
- Why (void *) is used when passing an argument in pthread_create()?
- Which posix API is used to create a thread?
- How free() knows how much memory needs to be free?
- What is AMP? How synchronization done in AMP system?
- What are the different synchronization mechanisms?
- What is the difference between binary semaphore and mutux?
- What are the minimum requirements to write a C language program?
- How do you find loop in a linked list?
- What is virtualization?
- What is structure padding?
- Is there any way to tell the compiler to avoid structure padding?
- What is a page write?
- Have you ever faced cache related issue? If yes then how will you resolve
it?
- Why we need to flush the cache?
- What is priority inversion?
- What are the pre processors?
- Write a macro for SET_BIT( value, from bit, to bit)
- What are the different segments is executable? Describe individual usage.
- What are ELF file format? Describe its different sections.
- How file system is implemented in Linux OS?
- Write a program to reverse a string.
- How will you debug your driver?
- What is the difference between a malloc() and a calloc()?
- What is a “Flat Memory” model?
- What is the difference between an exception and interrupt?
- Describe the interrupt handling mechanism in OS from the point hardware
generate an interrupt till its exception handler gets called.
- How will you write a program in c which takes variable number of parameters?
- From which flash (NAND or NOR) code can execute? (No need to load into RAM)
- What is volatile variable? When it is used? What compiler dose with volatile
variable?
- What is difference between kmalloc() and vmalloc()?
- How can we map a physical address in linux?
- What id endiness? How to find the endiness of a machine? Write a program.
- What are the things taken care while writing an endiness free program?
- Write a code to page alignment.
- Can we find the address of a variable type Register? How compile response
with it?
- What are the advantages of macros?
- Write a program for dynamic allocation of 2D array.
- Is it possible to allocate memory in Stack? How?
- What are top-half and bottom-half?
- What is the difference between softirq, taskelt and workqueue?
- Where spin locks are used apart from interrupt handler?
- Where semaphores are used?
- How interrupt gets registered in Linux? What is the return value of that
function?
- How will you design / write a new BSP?
- How will you flash an image to dead board?
- What are the difference between char and block drivers?
- Is spinlock available in uni-processor system?
- Can a variable be both volatile and constant?
- Can a pointer be volatile?
- What malloc(0) will return?
- Difference between const char A and char const A?
- Write a program to insert a node in double linked list.
- Write a program to count number of set bits in a 32 bit integer.
- Write a macro to get offset of its variable macro(element, struct_t).
- What is system call? Why asm linkage is used?