Comparison between Linux and windows from the programmer's perspective

Source: Internet
Author: User
Tags network function
Article Title: Comparison between Linux and windows from the programmer's perspective. Linux is a technology channel of the IT lab in China. Includes basic categories such as desktop applications, Linux system management, kernel research, embedded systems, and open source.

I have written programs on Unix SYS5, DOS, Windows3.x, windows9.x/NT, and Linux OS that are popular in different periods. in comparison between Linux and windows, I mainly look at it from a programmer's perspective.

1. Comparison of System Architecture

  1 Kernel

(1) kernel Elasticity

The Linux kernel is highly configurable and independent, mainly including completing the I/O driver settings.

Backup management, TCP/IP, and task scheduling. The standard Linux kernel version has been released from 40 ~ 50 MB while I

Embedded Linux systems tested on some evaluation boards (using arm or M68K series CPUs)

With only 2 MB, the network function and complete task scheduling are also realized, which makes Linux suitable.

It is used on computing platforms of various levels from high-end servers to embedded applications. Compared with windows, there is no clear Kernel Concept. windows is only suitable for desktops. NT has never really penetrated into high-end servers, and WinCE has encountered some structural difficulties.

(2) kernel Task Management

An important indicator to measure a kernel is the security and task scheduling efficiency in a multi-task environment.

Linux inherits the advantages of Unix in this respect. win9.x (including winme) never implemented a secure multi-task environment. NT/2 K barely achieved security, but the efficiency was not flattering, I used to rewrite a multi-serial-port Concurrent-driven application into a multi-thread method. I originally wanted to increase the processing speed by two to three times. this makes it easy to understand why enterprise-level applications run faster than NT/2 k in hardware configurations on low-hardware machines.

 2. System value-added and historical compatibility

A well-designed operating system should have a simplified and consistent structure. When new features are added, the original structure does not have to be damaged, and consistency can be maintained in subsequent development. because of the scientific nature of the original design, Unix did not make too many changes in design ideas within more than 20 years. although there are many versions of Unix, these systems are highly compatible with the source code through the Posix standard.

Compared with windows, the Framework Design of almost every operating system is very casual, and there is almost no question about the hardware development. the operating system in the windown16-bit and 32-bit periods has an obvious "generation gap". As a good OS, this hardware difference should be taken into consideration by itself, instead of handing over the issue to secondary developers, for example, defining a bunch of PSZ and LPSZ pointers. In the 64-bit era, LLPSZ will probably appear in the future :)

 3. GUI

Linux GUI is built on the basis of X-WINDOWS, which is completely different from windows GUI. windows GUI directly calls winows underlying GUI functions through applications. or this is a vertical relationship. while the Linux GUI is implemented by applications sending requests to the X-WINDOW server through socket, only X server in the real write screen. or this is a parallel relationship. the latter method brings higher system stability, because the graphic display system crashes. For Linux, it is only a process that has died, but for windows, it will cause the entire system to crash. of course, the overhead of X-window is larger than that of windows. However, due to the development of hardware, the advantages of X-window in stability will make up for the insignificant difference in speed.

[1] [2] Next page

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.