The operating system can use the "Operating System's Nuclear Design and Implementation" and "Modern Operating System" two books. Both of these are classic, the only disadvantage is theoretical is not strict. However, this area belongs to Hardcore System, so it is also the same as the theoretical manual. If you want to see the theory, you will recommend Tsinghua University Press "Operating System". Zhang Xi, Director of the Higher Education Department, and the textbooks used. It can be said that the theory is related to the complex, which is his experimental guide, the operation system, the same discipline is the same as the program design, not to try something, I am afraid it is difficult to do. Also recommend a "Windows Operating System Principles" Machinery Press, this book is for my country's operating system experts for half a year in Microsoft zero, writing a year, and the top professor of teaching operating system has been in addition to Tsinghua University. (The Director of the Senior TECD) has participated in many experts. Bill Gates personally write. It is not only combined with Windows2000, XP details the kernel of the operating system, and there are some Windows programming foundations, there is a taste of the external book, and some of the above content can be said that there are only one book at home and abroad to have a micro-core. Introduce.
If you first learn the form, you will see the front end of the compilation principle. I only learn four algorithms: the most easily achieved recursive decline; the best auto-down algorithm LL (K); the best bottom up algorithm LR (k); LR (1) simplified SLR (perhaps another simplified LALR). The backend is completely engineering nature, nature is Another Story. Recommended Textbook: Kenneth C.Louden Written "Compiler Construction Principles and Practice" is "Compilation Principle and Practice" (Translation of Mechanical Industry Press) To remind everyone that it will use VFP, VB, Power Builder, not equal to Understand the database. (This world has thought of too many people who understand the database!) Database design is both scientific and art, and database implementation is a typical project. So in a sense, the database is the most typical computer course - the combination of science and engineering, penetrates each other. Also recommend everyone to finish the software engineering and turn over and see database technology, it will be a new feeling. At least some basic concepts and description methods have a deep understanding, such as data dictionary, E-R. Recommended Textbook: Abraham SilberSchatz Waiting "Database System Concepts". As the integrity of knowledge, we also recommend everyone to see the "Data Warehouse" translation of the Machinery Industry Press. Computer network standard textbooks are still from TANENBAUM (COMPUTER NETWORKS "(Tsinghua University has a translation). There is also a recommendation of Xie Heren's "Computer Network Tutorial" (People's Posts and Telecommunications Publishing House). However, the network is also Hardcore System, so light reading is not enough. It is recommended to read the RFC, http://www.ietf.org/rfc.html can be downloaded to download the RFC document as number. Read from IP. Waiting to master 10 kinds of common agreements, there are no few people who dare to look at you. I did another job I saw it in the network design.
The importance of the data structure is not allowed. After learning the data structure, you will have a revolutionary baptism for your programming ideas, which will have a clear understanding of how to establish a reasonable and efficient algorithm. I think everyone should pay attention to the following points for the establishment of algorithms:
When you encounter an algorithm problem, you must first know that you have had this problem before you have handled this. If you have seen it, then you will usually make it smoothly; if you haven't seen it, consider the following questions:
1. Is the problem be built on a known familiar data structure (for example, a binary tree)? If not, you should design the data structure yourself. 2. The algorithm requested by the question belongs to which type of algorithm is the following? (Establish a data structure, modify data structure, traversal, find, sort ...) 3. Mathematical properties of the algorithm required to prepare the problem. Do you have recursive characteristics? (For recursive programming, as long as the reasonable parameter table and the crucial conditions are designed, it is basically big.) 4. Continue to analyze the mathematical essence of the problem. According to your previous programming experience, imagine a possible solution solution And proved the correctness of this solution. If the title is required to meet the requirements of the algorithm, you have proved that your idea meets its requirements. General, time efficiency and space efficiency are difficult to comply. Sometimes it is necessary to establish a secondary storage method. Save time. 5. Through a period of analysis, you have some ideas for solving this problem. Or you can use the natural language to simply describe your algorithm. Continue to verify its correctness, try to find it Error and find a solution. When necessary (discovered the conflicting contradictions that cannot be solved), overthrow your ideas, start thinking from the head. 6. After confirming your ideas, start writing the program. During the process of writing code, To consider various problems, we should have a good structure, and the procedure should have a comment in a critical place. 7. Make an example, then perform your program on the paper, further verify its correctness When encountered with your imagination, the cause of analysis issues is the programming problem or the algorithm idea itself has a problem. 8. If the program passes the correctness verification, then further optimize or simplifies it. 9. Write ideas, comments. For specific algorithm ideas, you can only rely on yourself through your own knowledge and experience, there is no specific law (otherwise the programmer can be laid off, using the machine automatically generates code) ). To have a wealth of imagination, when a road is not going, don't drill the horn pointed, you must dare to overthrow your idea. I am just a beginner, say some of the experiences, for everyone's reference and discussion .
Regarding artificial intelligence, I think it is also very worth studying. Although it is impossible to have just a discipline, it is absolutely very developing a discipline. One of my country's artificial intelligence founders, Professor, Beijing University of Science and Technology (this old gentleman is my mentor Li Xiaoyun's mentor) to artificial intelligence: artificial intelligence is imitating, extensioning and expanding the intelligent technology science of people and nature. Education in the United States artificial intelligence official website made the following definition of artificial intelligence:. Artificial Intelligence, or AI for short, is a combination of computer science, physiology, and philosophy AI is a broad topic, consisting of different fields, from machine vision To Expert Systems. The Element That The Fields of Ai Have In Common Is The Creation of Machines That Can "Think". The problem of this study is probably: (1) Symbolism: symbol computing and program design foundation, knowledge expression Method: Knowledge and thinking, generating rules, language network, first-order word logic problem solving method: search strategy, heuristic search, search algorithm, problem protocol method, predicate calculation: concatenation principle, payback process expert system: establish expert system Methods and Tools (2) Connectionism (Neural Network School): In 1988, the US authority pointed out: database, network development has risen straight lines, and neural networks may be the only way to solve artificial intelligence. About the neural network school, now a lot of development phases.
I want to learn about artificial intelligence, you must do not learn to analyze the problem, it is best to learn to analyze the problem, it is best to use the program design to achieve, here is the best Dr. Award winner, Dr. Xiaoyuan Works "Artificial Life Method of Artificial Fish - Computer Animation" (Tsinghua University Press). Classmates who engage in artificial life will not know the internationally renowned father. The book about artificial intelligence is the first choice "Artificial Intelligence A New Synthesis" NILS J. Nilsson. Nasal ancestors! About network security, I also want to say two sentences here. With the development of computer technology, the information level of the entire society has leap forward, and the computer network technology has changed, and the network has become an indispensable part of the field of society. As long as there is a network Network security issues are a problem that must solve it. Learning network security is not a simple collection of some hacker tools black and black, but to learn his mathematics principle, achieve principles, to engage in the underlying working mechanism, so Can solve most of the existing problems and new security issues. In general, the research of information security is still very deepest, which is relatively deep in the process of using the .NET platform developed in the nearest Microsoft Cup Processing Competition in the MY E-Business Fairy.NET.