Sunday, July 4, 2010

FAQS

1) Processors

1. What is difference between RISC and CISC processor?
2. Which type of processor should be used i.e. either RISC or CISC?
3. What is the significance of 2.2 GHz in the technical specification of a PC/Board?
4. What are different type of addressing modes
5. Write an assembly language program to show different addressing modes.
6. On what factor does the speed of a processor depends.
7. On what factor it is decided that whether a processor is an 8/16/32/64 bit processor.
8. Explain what Cache memory is.


2) C Programming
1) What is macro?
2) Write a macro for finding out a largest number among two numbers.
3) What are type qualifiers (const and volatile)?
4) If re-declaration error occurs what is the solution.
5) Write a program to store a value a given location.
6) Write a prototype for a call back function which returns nothing and receives an integer and character pointer.
7) What is Endean?
8) How do find a machine is whether a big Endean or Little Endean
9) Write a conversion program from Big Endean to Little Endean and vice-versa.
10) What is nibble?
11) Write a program to swap nibble of an integer.
12) Write a program to convert from little Endian to Big Endian and vice versa. How this can be done by using pointers and bitshifting.
13) How do you set/clear a bit in a given integer?
14) Write a program for generating random number function (app).
15) What is the difference between the functions memmove () and memcpy ()?
16) Describe processes memory layout.
17) Different type of storage areas.
18) What is the use of auto keyword? Is that keyword is necessary in the code.
19) What is the purpose of volatile key word?
20) What is function pointer and what r the advantages of using function pointer.
21) Examples where the function pointer are used.
22) How do you guarantee that when you allocate a memory, the allocated memory is not in the range of kernel allocated by
23) What is a linked list. Different operations on the linked list.
24) What is an array?
25) What is the difference between the linked list and the array in terms of space allocation, traversing, searching and sorting?
26)

3) LINUX / OS
1) What is a process? What parameters (structures) are created and updated.
2) What is fork, exec and how does they work.
3) Which tables are updated when a process is created and how is going to maintain it or who is going to create it.
4) What is a thread? What all parameters will be created when a thread is created?
5) What is difference between a thread and a process?
6) Is that stack creating necessary when there is no local variables in a thread.
7) What is inode.
8) How does a kernel find a file using inode?
9) What are different file systems? How inode is related to the file system.
10) What is hard link and soft link?
11) What happens when a hard link is created and what will be their inodes?
12) What is scheduling.
13) What is context switching, when does it make context switch where will be all the values of the current process will be stored.
14) What happens when the process request for input data from a device, how does the scheduler knows it and makes the context switch.
15) What are different types of scheduling?
16) How the priority of a process is changed.
17) What is priority inheritance and priority scheduling?
18) What is semaphore and mutex?
19) Example for demonstrating semaphore.
20) What is spin lock, where it is used?
21) What are different IPC mechanisms? What u has used in your project.
22) What are system calls?
23) What is virtual Memory?
24) Memory management in Linux.
25) What are memory barriers? Where are they used?
26) What is kernel Panic? How did u debug the kernel panic?
27) What is kernel oops? How do u debug kernel oops.
4) Device Drivers
1) How does an application program reach hardware?
2) What is the device model in Linux?(KOBJECT)
3) How does u initiate a device?
4) What is File Operation structure?
5) What is the different API’s used in your project?
6) How you have done testing for your module.
7) What does u know about Flash devices?
8) What is the maximum capacity of a flash device that can be inserted/support on a board?
9) What are different types of flash devices?
10) What is Virtual File System?
11) Can you brief me about network driver architecture (flow)?
12) How will you register Network Driver?
13) Which API's you have used for transmission and reception of data packets takes place?
14) What is the difference between Char, Block and Network drivers?
15) How will you register a Char device driver?
16) How do you insert your module?
17) Tell me about make file?
18) Do you Heard about demesg?
19) What are Probmod and Dipmod?
20) Where do you insert your module (either in kernel space or user space)?
21) Tell me about Memcpy?
22) Can you brief me DMA in Linux?
23) Who do take care about packet transmission and how will you transmit a data packet over a network and how do you receive your packet?
24) Tell me all the steps involved in allocation of device, transmission and reception?
25) What is skbuff?
26) How a module is loaded into the kernel?
27) What are minor number and minor number?
28) What is device driver’s entry routine?
29) Can you brief me about network file system?
30) What is /root in Linux?
31) How many types of reception of data packets are there in network card driver
32) How do you save from concurrent call to the transmission?
33) What is kernel symbol table?
34) What are modules?
35) How do you acquire memory for your driver?
36) Difference between micro, monolithic kernel
37) Kernel versions : - current 2.6
38) Kernel version: - earlier 2.4 depending.
39) Multithreaded application support. Most modern operating systems have some kind of support for multithreaded applications, that is, user programs that are well designed in terms of many relatively independent execution flows sharing a large portion of the application data structures. A multithreaded user application could be composed of many lightweight processes (LWP), or processes that can operate on a common address space, common physical memory pages, common opened files, and so on.
40) Difference between 2.4 and 2.6
41) In which case EMAC resets.
42) How does the size of the data packet affect the buffers of EMAC device?
43) What happens if the device buffer overrun.
44) How is bus arbitration done for six cores by the EMAC device?
45) How the size of the buffers does is increased during running of device driver.
46) In receiving how many interrupts are generated.
47) How the interrupts are acknowledged i.e. how external ram is used for interrupt processing.
48) To test what is the size of the packet that is coming out of the driver, compare this with the ethereal output.

No comments:

Post a Comment