The topic of information exchange has to be from "software is service". Software is the concept of services that do not refer to software engineers to have a very good work attitude towards customers, but also the service functions provided by the application. Instead, in the Internet environment, a new computation mode works between computer programs (which is software).
Initially people write the program is a program from the head. With the popularity of the network, TCP / IP, and the computational model of the comparative model - Customer / Server model, which is often said, is often the two-layer structure. In the late 1990s, the Internet was connected to thousands of households, and people's understanding of the software, there were so-called "three-layer structure" computing model, and one layer of the middle is called middleware. So the three-layer structure refers to the client / middleware / server (Client / MiddleWare / Server), but does not refer to the application / support software / operating system.
Microsoft has called the three-layer structure model for Windows DNA (Distributed Internet Architecture). After it is difficult to understand, Microsoft will replace it with more advertising "software services" (also known as Web services). The difference between them is only different in terms of words. Sun Microsystems has also promoted J2EE, and its degree of ration is unified by the WINDOWS DNA, and now it is now unified by the web service.
No matter what the three-story structure model is now, let's analyze what it can do, what benefits can be brought to us. First let's use the following picture to class more than the Web service:
The person sitting in the figure called a man with a hat outside a thousand miles away. "Work desk" first check the yellow page, then dial it to "Hat". "Desk" does not know the specific location of the "hat", the call transmission medium, the call transmission protocol, the call is not listening, he doesn't care if "Hat" uses a call transfer, the signal is to take a satellite or take a microwave Whether the other party is a cluster call center, whether the signal is encrypted, etc.; in short "office desk" is just a "hat" to provide him with the necessary "service".
Let's take a closer look, "Office desk" "Telephone Bureau" "Hat" is not a three-layer structure? From the perspective of workload, the "Telephone Bureau" has made a lot of practical and not cared by people, which corresponds to the modern internetwork of the work. From the service and return, "Hat" provides a service, and the telephone bureau also provides services. The telephone station provides voice exchange service, a service of "geese halt", or can be said to be a service service. We tried to make a "hat" to earn more money, or do the "telephone bureau" to earn more money? Probably readers will associate China Telecom, and the answer should be a bit number in my heart.
In fact, today's computer software is increasingly large, the production and collaboration of large industrialization is an inevitable trend. The operating system is single-handed, and your own core is far from enough. Computers also have to communicate and live in the big society of the Internet. Advertising, news, MP3 in the same page, may come from different websites. Email, online chat, information retrieval, file encryption, etc. also have "people". If the reader thinks about the "desk", "hat" as a client program and application software, put the "telephone bureau" as an operating system and the Internet, can you get a picture?
If the communication protocol between the user software and the service software, TCP / IP becomes http in the environment where God is unknowingly, some people call cross firewalls; if the agreement is backed up, the system can be fault tolerant If the protocol assigns a message according to the server busy, it is load balancing; implementing these functions in a process, this process is called Application Server; and so on. The common "tricks" in the Telecom Bureau have found a corresponding new name in the Internet, and it is also said to be a god. The "Telecom Service" between software and software is the information exchange service of our title. Traditional calculation 飨 飨 逑 逑 峁 峁 峁 ,, 步..... 百. 百 百 百 百 百 百 百 百 百 百 百 百 百 百 百 百 百 百 百 百 百 百 百However, there is no single-machine operating system to be directly qualified for information exchange services, so it has appeared Microsoft's .NET, its primary purpose is to provide information exchange service. Sun's Java is also doing this. These big companies encourage everyone to do software's "doctors", "lawyers" of software, all offer the "service" of the so-predicted. So similar to "China Telecom's service", they only mentioned that because they have to do "China Telecom's service" to achieve a wider range of monopoly.
The most important service in software services is the service exchange of information in the Internet.
So, how is this information exchanged service? The topic returned to the three-layer structure of the client / middleware / server mentioned in this article. The important concepts in this three-layer structure model are components and middleware.
Previously, objects that often refer to data structural arithmetic operations, and objects enable the package package, making the program structure clearer, but the object model is static, and cannot be actually organized in the runtime, so information exchange is not implemented. For example, we cannot imagine that modern telecommunications services are N × M fixed connections, and cannot replace the physical channels of communication according to communication requests.
The component is the program module of the object plus metadata, metadata is a description of the calculation, such as the class information of Java. In the three-layer structure, when the client needs to call a software service, the system is responsible for finding the service, and generating a proxy component according to the metadata dynamically generating agency, enabling the environment of the customer and service connection. This proxy component generated by the system is middleware. In this mechanism, customers are no longer directly in contact with services. All communication mechanisms are automated through the middleware, so that the system can provide services to the user's transparent service, automatically implement the replacement communication protocols, encryption, and listen to the above mentioned Function such as firewall, fault tolerance, and distributed transaction processing. The middleware plays a service similar to the telecommunications, making software exchange services.
Looking at the service through the Internet, this service is transparent to the user online, which is grid calculation. When a person is moving, the system is automatically positioned, providing services corresponding to the environment, this is the general calculation of MIT University research (Pervasive Computing). These require the system to automatically provide corresponding communication and computing environments. The key technologies are middleware technology, and the middleware programming technology is the outline of the technology of the Internet.
From object-oriented to facing components, middleware programming is a leap in network age programming technology. This technique provides an effective computational model for network applications, while the components are independently upgraded, automatic loading, cross-platform compatibility, and multiple features provide advanced methods for software factory production.
Why invented Java, invented .NET? Some people say that Java is because of the simple grammatical, waste recycling, cross-platform, which is the advantage of Java, but there is a little clear that Java's core is actually compiled for .class files, its compilation results That is, the metadata, this is the brush of the Java author's painting. There is no class information in the target code generated by C , so it is called a .obj file. Java's .CLASS is a problem of computing models on a higher level of mathematical space. In order to process metadata invented a new language, in order to generate an intermediate invented a virtual machine, in order to establish a software factory invented the component library. The virtual machine is actually a special operating system. Language, virtual machine, component library triad, in order to effectively describe new ideas facing components, middleware programming, new computing models, is to better implement information exchange. Nowadays, many people have not seen this development trend, which is like the traditional "ground war" and stereo, space "war" comparison. The application and development trend of the next generation of information and computing technologies is very obvious, the focus of strategic competition has been transferred from the traditional operating system to the network-based, component-oriented information exchange infrastructure. Java took a step forward and made a lot of work in developing promotion. Microsoft is using its own advantages in operating systems and components, and the .NET is pursued.
This is very severe for China far behind computer and information technology. In the face of this future strategic system, China can be based on the basis of the base. Although in decades, it is also working hard in basic software, and has continuously achieved through identification, but there is no business successful example.
More serious shortcomings are in the concept, the judgment and grasp of the situation. The main funds, the team has to put in the traditional operating system, Linux, office software, etc. "Enemy District". We should see that the traditional "ground war" will soon be replaced by "three-dimensional" and "space".
Under such a situation, China should seize the opportunity of this world information and software technology strategy. Beijing Catai Century Technology Co., Ltd. puts forward innovation ideas on software platforms facing three-story structure. The basic idea is to implement a member-oriented component, middleware programming; effectively utilize hardware resources, directly supporting dynamic loading components on the operating system kernel, running two ¿Native Code to get higher operation effectiveness. Such ideas have two meanings: a general software engineer can use known technologies easier to master new programming ideas; increased efficiency improvements to hardware configuration requirements. The latter has universal significance in embedded devices such as mobile phones, PDAs, and information appliances.
The EZCOM component technology of the embedded operating system in Beijing Catai Century Technology Co., Ltd. has made a positive effort in China's basic software technology and international advanced ideas. Zyco is a multi-process, multi-thread 32-bit real-time operating system, supports dynamic link library DLL, dynamically loads the application. EZCOM component technology is compatible with Microsoft COM; EZCOM development environment automatically realizes components package, simplifying the automatic generation of midfunction of the runtime environment, providing the operating environment of the self-driven component, automated component function query and calls and Automated system support for remote communication. The Zyco operating system and EZCOM technology provide various embedded devices with Java, .NET synchronization, network service, for network services.
Can China's software industry seize the opportunity of this world information and software technology strategy? Breakthroughs and success of basic software is not a company's efforts, but also need decision-making, industry, media, funds, etc. to consequent consensus.