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.

4. What is stty used for?

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

Download Interview PDF