Microsoft Asia Technical Center interview questions
1. Differences between processes and threads.
A thread is an execution unit in a process and a schedulable entity in the process.
Differences from processes:
(1) scheduling: A thread is the basic unit of scheduling and allocation, and a process is the basic unit of resource ownership.
(2) concurrency: not only can concurrent execution be performed between processes, but also between multiple threads of the same process.
(3) Owning resources: a process is an independent unit of resources. A thread does not own system resources, but can access resources belonging to a process.
(4) system overhead: when a process is created or withdrawn, because the system allocates and recycles resources for it, the overhead of the system is significantly greater than the overhead when a thread is created or withdrawn.
2. Test Method
Manual testing: personal review, spot check, and review
Machine testing: black box testing and white box testing
2. Differences between heap and stack.
Heap is a stack, and stack is a stack.
Stack space is automatically allocated/released by the operating system, and heap space is manually allocated/released.
Stack space is limited, and heap is a large free storage zone.
The memory allocated by the malloc function in C is on the heap, and the c ++ corresponds to the new operator.
During the compilation period, the program implements both the variable and function allocation memory on the stack, and the parameter transfer is also performed on the stack when the function is called during the program running.
3. How is the memory managed in windows?
4. Introduce the security of. NET and. net.
5. How does the client access the. NET component to implement web service?
6. How does a virtual table in C/C ++ compiler complete it?
7. Talk about the com thread model. Then, we will discuss the differences between internal and external components.
8. Talk about the paging mechanism under ia32
Small page (4 K) two-level paging mode, large page (4 m) level
9. For two variables, how can we find out where a ring exists in a single linked list with a ring?
One increments one and the other increments two. When they point to the same point, the ring appears.
10. How many methods does ia32 switch from user to kernel?
Call the door, from ring3 to ring0, interrupt from ring3 to ring0, and enter vm86.
11. If you only want to run one instance of the program, you cannot run two instances. Like Winamp, only one window can be opened. How can this problem be implemented?
Use memory ing or global atomic (mutex variable) to find the window handle ..
Findwindow, mutually exclusive, write flag to file or registry, shared memory ..
12. How can I intercept the keyboard response and change all 'A' to 'B '?
Keyboard hook setwindowshookex
13. What is the use of apartment in com? Why?
14. What is a stored procedure? What is the purpose? What are the advantages?
My understanding is a collection of SQL statements that can be used to create complex queries and compile and run them. Therefore, after a single run, it is much faster to run the query later than to execute the SQL statement separately.
15. What are the features of a template? When will it be used?
16. Let's talk about the features and advantages of Windows DNA structure.
This article from: http://news.csdn.net/n/20080228/113934.html