Behavioral Unix/Linux programming Interview Questions & Answers:
1. Construct pipes to execute the following jobs?
Who | echo "total users `who|wc -l`"ls | grep -c "poem" | tee filename.txtcat file1 file2 >> filetoappendto.txt??rm -rf dir1 | tee errorlog
2. Explain difference between IPC mechanisms?
Ipc mechanisms are mianly 5 types
1.pipes:it is related data only send from one pipe output is giving to another pipe input
to share resouses pipe are used
drawback:itis only related process only communicated
2.message queues:message queues are un related process are also communicate with message queues
drawback:user dont know which process curently works
share memory:memory shared in distributed systems some memory wants to share some files that time it is use full
semaphores
semaphore is integer type and in semaphore resourses give coding like negetive value means process are wants to use perticular resource waiting only and 0 means no process is waiting and 1 means one resource is free and
sockets:sockets also ipc it is comunicate clients and server
with socket system calls connection oriented and connection less also
3. What type of scheduling is used in Unix?
Multi Level Feedback Queue Scheduling with each queue in round robin.
Sets options for your terminal.
Print or change terminal characteristics.
5. How would you remove a semaphore / shared memory whose owner processes have died?
ipcrm -sem id ; for semaphores
ipcrm -shm id ; for shared mem
6. Explain the Unix file system?
Basically there are 4 different types of file systems in unix ,they are as follows
1.Device file
2.Directory fil.
3.FIFO
4.Regular file
7. Give examples of how memory leaks can occur with c programs?
Memory leaks can be occured if no allocated memory is freed. for example,malloc() and free().It is always a good practice to release the memory because it can be dangerous. it could afftect the whole program and lead to very difficult situtation. Make sure that you are releasing the allocated memory at time. so next time you write program, think twice before allocating memory. I always writedown a notes before i start program. so i know whats going on.
Momery leak example occurs when a developer allocates memory, assigns it to a pointer, and then assigns a different value to the pointer without freeing the first block of memory. In this example, overwriting the address in the pointer erases the reference to the original block of memory, making it impossible to release.
8. What are the differences between Shared and Dynamic libraries?
There are two ways in which a library is shared. Static and dynamic
In statically linked library the code of library is referenced at compile time and the result executable will be bigger.
I dynamically linked libraries the code of library is referenced at run time and resulting executable will be smaller. But drwaback is that at run time this will need the library to reference the library related symbols.
9. How would you create shared and dynamic libraries?
Well shared libraries have 2 types
1) Static
2) Dynamic.
u can create library by
ar cr -o sharedobj.a file1.o file2.o
while file1 and file2 are headfiles (obj)
now put this sharedobj.a into /usr/lib directory
10. How do you debug a core dump?
► gdb a.out
► core core
► backtrace
https://InterviewQuestionsAnswers.ORG.