
Software is the core driving force to promote the development of a new generation of information technology, and the operating system is in the position of the sea god needle in the software technology system. At present, the mainstream desktop operating systems mainly include Microsoft Windows, Apple MacOS, various Linux distributions and Google's Chrome OS; mobile operating systems include Apple's IOS, Google's Android, Microsoft's WP system, etc.; server operating systems mainly include Unix, Linux, Windows Server and Netware; cloud operating systems mainly have Windows and Linux.
This series of articles focuses on the analysis of operating system technology, from operating system overview and architecture, to server operating systems, embedded operating systems, Internet of Things operating systems, cloud operating systems, and even giant general operating systems. Due to space limitations, the content is divided into several presentations.
Introduction to computer architecture
The operating system is an important part of the computer system, and the ordinary PC computer system is divided into the following 4 levels from bottom to top: hardware (providing basic computing resources, including CPU, memory, I/O devices, etc.) operating system, system and applications, and users. Overall, the hardware is at the lowest level, completely wrapped up in the operating system. The upper-level system and application software cannot directly deal with the hardware, and the user cannot directly manipulate the hardware to provide basic resources, so the hardware must be called through the operating system and the hardware must be managed.
Intel's CPUs divide privilege levels into 4 levels: RING0, RING1, RING2, RING3; Windows uses only two of these levels, RING0 and RING3. The code of the operating system (kernel) runs at the highest runlevel ring0 and can use privileged directives to control interrupts, modify page tables, access devices, and so on.
Modern operating systems are characterized by multi-program, multi-tasking, and time-sharing systems. The operation of any user program must be executed by the CPU, and I/O is the input and output. Both are indispensable.
Operating system artifacts
From a designer's perspective, an operating system is a whole bunch of modules and the interconnections between them. The basic units that make up the operating system are usually called components, and the basic operating system components are kernels, processes, threads, and pipes. Wherein, the kernel is a set of program modules as trusted software to support the basic functions and basic operations performed concurrently by the process, the kernel usually resides in kernel space, runs in kernel state, has access to hardware devices and all main memory space, and is the only part of the program that can execute privileged instructions. The kernel structure of the operating system can be divided into a single kernel structure, a hierarchy, and a microkernel structure.
Single kernel structure All operating systems run as a single program in kernel state; the hierarchy is optimized from the theory of a single system; the microkernel structure divides the operating system into small, well-defined modules, only one of which – the microkernel – runs in kernel state, and the rest of the modules, due to their relatively weak functions, run as ordinary user processes to achieve high reliability of the operating system.
The operating system has the following five major management functions
1) Device management: mainly responsible for the data interaction between the kernel and peripheral devices, the essence is the management of hardware devices, including the allocation, initialization, maintenance and recycling of input and output devices.
2) Job management: responsible for the management of human-computer interaction, graphical interface or system tasks.
3) File management: it involves the logical organization and physical organization of files, directory structure and management, etc.
4) Process management: The only sign that a process exists is the PCB (process control block), which is responsible for maintaining the information and state of the process. The essence of process management is that the system takes certain process scheduling algorithms to be used to be handled reasonably assigned to each task.
5) Storage management: how data is stored and organized.
Operating system classification
The types of operating systems are very diverse, and the operating systems installed on different machines can range from simple to complex, from embedded operating systems for IoT terminals, mobile operating systems on mobile phones to large operating systems for supercomputers. Some operating systems integrate a graphical user interface, while others use only a command-line interface.
At present, the desktop operating systems on the market mainly include Microsoft Windows, Apple's MacOS, various Linux distributions, Google's Chrome OS; mobile operating systems have Apple's IOS, Google's Android, Microsoft's WP system, etc.; server operating systems are mainly divided into four major genres: Unix, Linux, Windows Server and Netware; cloud operating systems are also mainly monopolized by Windows and Linux. Linux is mainly divided into two open source operating systems, Ubuntu and Centos.
For embedded operating systems, there is no operating system on the market that can be suitable for all different types of embedded applications, and commercial embedded operating systems have gone through 4 stages of development: RTOS kernel, RTOS, universal operating system embedded (such as embedded Linux and embedded Windows) and application-oriented embedded operating systems represented by Android. In the kernel of most embedded operating systems, there will be a real-time operating system (RTOS).
IoT operating systems follow the technology in embedded operating systems, which can currently be divided into two types, one is real-time and the other is general-purpose.
China's desktop operating system market is mainly occupied by Microsoft's Windows system. According to Statcounter's statistics, as of April 2019, windows systems account for 90% of the share of desktop operating systems in China. The mobile operating system field is mainly Google's Android (accounting for about 75%), and Apple's IOS (accounting for about 25%).
The history of the development of the operating system
The operating system was developed in the middle of the last century, and after several stages such as single-channel batch processing system, multi-channel batch processing system, time-sharing system, real-time system, etc., a general operating system with various types of operation characteristics was developed. In this process, Microsoft, Apple, Google and other companies have laid the industry advantage and successfully occupied a place in the operating system market.
1. The history of Linux development and foreign mainstream distributions
Linux is a free and open source UNIX-like operating system that allows any individual or organization to freely use all of Linux's underlying source code on a GPL-compliant basis, as well as to modify and redistribute it. Linux distributions refer to what is commonly referred to as the Linux operating system‖, including: the Linux kernel, GNU libraries and various system tools, command-line shells, the underlying X window system of the graphical interface, and the desktop environment at the upper level.
Compared with the Windows system with the highest market share, the two main differences are as follows: Windows has a higher threshold for learning and citation, but the existing resources are more extensively supported; Linux is network-based and easy to obtain the latest resources. But there are too many Linux desktop distributions, resulting in an overly fragmented market. In the early years, there was a lack of application support, and the support for commonly used software and fonts was insufficient, but it has been improved a lot and the ecological problems have been alleviated. Both API and ABI stability are insufficient. In the development of Linux, it was also affected by Apple's MacOS X, resulting in a tightening of market share.
2, linux development is slow
Microsoft effectively suppressed the development of its market in the first decade of Linux. At present, the market with a high share of Linux is mainly concentrated in the server market. Linux distributions are also often used as the operating system for supercomputers. In terms of mobile devices such as smartphones and tablets, Linux has also received important developments, and the Android operating system is based on the Linux kernel.
The development of China's Linux system began at the end of the last century, with the birth of Linux in the 1990s and the rise of the open source movement, Linux has become the mainstream of domestic operating system development with the inherent advantage of open source, and most of the domestic computer operating systems are based on Linux for secondary development of operating systems. The Linux kernel is maintained by programmers all over the world and foreign giants, and it is a relatively advanced kernel in itself, and there is no possibility of revolutionary change at the technical level. Therefore, there is no need to overthrow the Linux kernel and rewrite the new kernel at the technical level, not to mention that Linux is still open source and free, which is conducive to domestic developers to use it for research and development.
3. Android development
At present, the Android system accounts for the first share of mobile operating systems, Statcounter's data shows that as of June 2019, in the global mobile operating system, Google Android accounted for 76.02%, Apple iOS accounted for 22.91%, and the sum of the remaining platforms did not exceed 1%. At present, the systems running on domestic mobile phones are almost all based on Google's Android operating system. China's mobile phone manufacturers share the top few, that is, Huawei, OPPO, VIVO, Xiaomi and other manufacturers have their modified Android system.
4, open source Android, closed source Google mobile services
Android is a free and open source Linux-based operating system led and developed by Google (Google) Inc. and the Open Handset Alliance. Although the Android system is an open source and free system, in fact, only the AOSP system source code can be used free of charge, and Google's GMS service running on Android is closed source and requires Google authorization to use. According to the GMS, Google gives different degrees of authorization to Android phones, and divides mobile phone manufacturers equipped with Android systems into three levels:
1. Free use of Android operating system, but not embedded GMS; (mostly found in Android phones sold Chinese mainland)
2. Embedded part of the GMS service, but the phone can not be marked with Google's trademark;
3. All GMS services are embedded and can also use Google trademarks. If there is a Google GMS service built into the Android phone, it is equivalent to a product that has been officially certified by Google.
Almost all Android phones currently sold abroad rely on GMS to provide push notifications, cloud storage of user data and other services. However, domestic users do not rely on GMS services, GMS services are not available in China, and the services provided by GMS have corresponding domestic software substitutions in China.
A summary of ecological comparisons for Linux and Android
Both Android and Linux are mature operating systems that run off-the-shelf middleware and packaged applications, even in specialized embedded and mobile application environments. However, the two open source operating systems vary from the bottom of the software stack to the top layer of development, integration, and hosting, and these affect how and where to find the best deployment solution.
The operating system can be subdivided into mobile operating systems, Internet of Things operating systems, embedded operating systems, desktop operating systems, server operating systems, cloud operating systems and other fields, and each segment has its corresponding representative enterprises.
Today to introduce you to an operating system based on the Linux kernel - cloud needle cloudneedle operating system.
Microkernel
Cloud needle OS is based on the Linux kernel self-developed operating system, rich hardware product line, currently has a cloud product server, terminal products computer, tablet, TV and mobile phone and Internet of Things end product advertising machine and industrial computer, to achieve from the cloud to the terminal, terminal to the Internet of Things of the full ecological equipment through.
advantage
Cloud Needle OS is an operating system based on the Linux kernel that is built from scratch from scratch through LFS (Linux from Scratch, the installation method of compiling LINUX from scratch), and the technology is completely autonomous and controllable.
Cloud Needle OS has a self-developed application ecosystem, which is not affected by the "card neck" of the United States, and can experience various applications with the least amount of traffic without downloading, and the user experience is better.
Market trends
Cloud Needle OS benchmarks Chrome Os in the United States and Kai OS in India. According to the 2020 IDC statistics report, Chromebooks equipped with Chrome OS are twice the sales of Mac boo equipped with IOS, and Kai OS is the second largest operating system in India after Android. According to the market cases of Chrome OS and Kai OS, it can be seen that the market share of cloud needle OS can be expected in the future.
China's operating system is facing urgent problems to be solved
1) The kernel is not uniform, the software and hardware cannot be freely matched, the application adaptation is difficult, and the engineering ability is not high.
2) The overall performance is not good, the operation - fragmentation ‖ - homogenization ‖, the lack of upstream and downstream linkage.
3) The industrial foundation is weak, there are peripheral drivers in the supply of the industrial chain, and the lack of key software such as commonly used tool software and industry application software.
4) The innovation ability of new technologies such as cloud computing, industrial control, and intelligent manufacturing is insufficient, and long-term sustainable development cannot be guaranteed.
5) Operating system manufacturers have relatively few employees, scattered forces, and insufficient level of specialization.
Fortunately, in such an external environment, we have Chinese developed a completely independent fully ecological operability system, truly achieve the core unification, software and hardware can be freely matched, the application adaptation problem has been solved, then can drive the upstream and downstream industrial chain, for cloud computing, industrial control, intelligent manufacturing and other new technologies innovation ability is vigorously from the heart, optimize and upgrade the industrial structure, to ensure long-term sustainable development.
Cloud needle cloudneedle - domestic operating system is not only directly benchmarked Winows, Android, Apple (IOS, MAC), but also adopts a completely different idea and concept from them, fully direct and compatible with most of the terminal equipment (including chips) and software in the current international and domestic markets, truly solving China's current "pinch neck" project! The ecological environment is extremely adaptable and user-friendly.