Mike Gancarz
1.Unix Development based on Multics Time- sharing operating system
2.NIH ( Not invented here , not invented by me)
3.GPL : GUN a Public License agreement that applies to the legal agreement for the software. Open Source
4.Unix Philosophy:
1 Small is beauty: easy to understand, maintain, low consumption system resources, easy to combine other tools
2 let each program make a good thing
3 build prototypes as soon as possible ( Prototyping ): " a third system " Concept
4 ) to take portability efficiently
5 use plain text files to store data: binary strictly forbidden
6 Take advantage of the software's leverage effect : Borrowing code modules ; Automate everything
7 ) using Shell scripts to improve leverage and portability
8 ) Avoid a mandatory user interface
9 ) make each program a filter
5.Unix Creed
1 allows the user to set up the environment: The program should only be a mechanism to solve the problem, not a qualifying standard
2 try to make the OS kernel small and lightweight
3 use lowercase letters and keep them short
4 ) protect trees: Online storage
5 Silence is gold: When you need to provide an error message, Unix Command not prompt
6 Parallel thinking: Most tasks can be broken down into smaller sub-tasks, run in parallel ---- symmetric processing (SMP) Design
7 Each part value is bigger than the whole: can assemble the small procedure to replace the big procedure, flexible and practical
8 ) to find 90% the solution: Complete 90% will be more effective cost savings, perfect difficult
9 worse is better: containment
Ten ) Hierarchical thinking: directory structure
6.MIPS metrics: Execute tens of thousands of instructions per minute to measure CPU the popular method of performance
7.IDE ( Interactive development Environment ) Interactive development environment
8. Micro-optimization (micro-optimizations):Prof and other attacks to locate the most frequent sub-program optimizations used C language under Unix
9.Unix description of common tools and features in ---- each command is actually a tool function:
1 ) awk : Manipulating text that is organized in a field
2 ) Expand : Convert tabs to Spaces
3 ) WC : Calculates the number of lines, words, and bytes of a file
4 ) sed : Non-interactive form of text editor
5 ) Roff : Comprehensive text formatting and typesetting setup tools
6 ) Tset : Compares two strings, checks the modal of the file to see if they are writable
Unix stores data as text and then uses a small tool of different polygon-like text to
The Shell script consists of one or more statements that perform tasks by invoking local programs, interpreters, and other shell scripts. Each command is loaded into memory execution, and these production programs are called indirectly.
Shell scripting integrates the efforts of others to full their goals.
Shell explanatory language, thinking --- Edit --- Test
shell Scripts cannot be used in the kernel .
One of the advantages of Unix philosophy is that it attaches great importance to a large number of small commands, andshell scripts are a way of unifying them together as a powerful overall medium
13.CUI : A pattern that interacts with an application, on top of the system's highest command interpreter. Once you invoke a program in the command interpreter, you will no longer be able to interact with the command interpreter until you exit. The real effect is that you are completely involved in the user interface of the application until you exit to be free.
Unix Features: Simplicity, correctness, consistency, integrity
15.VMS : Closed source proprietary operating system, DEC Company. Basic belief: The user is afraid of the computer
16.VMS the system is indeed Unix the opposite.
VMS usually only gives the user the single solution path, Unix will provide more than 10 or more solutions. ;
VMS the system likes to adopt the single program with multiple options and large scale to meet the needs of many users . Unix Small is beauty, each performs a single function and has only a few options;
VMS originally in assembly language and BLISS-32 , which is highly correlated with the underlying hardware structure, Unix Adopt C languages, and can be ported to many CPU Architecture
17.ms-dos : An operating system designed for the public, easy to use. Simple and effective command language. does not provide a true multitasking feature, no matter how many commands are entered on the command line, it can only execute one
18.Windows : Design ideas are easier for beginners to use
Windows 's graphical user interface is tightly integrated with the underlying operating system, and the X Windows system inLinux Windows There is an essential difference: It's just an application running on the action
Almost all Perl (Practical and report Language utility extracts and reporting languages ) Programs can act as filters: they are very good at interacting with other software, obscure, extensible, and open source scripting tools.
This article is from the "Linux operation and Maintenance" blog, reproduced please contact the author!
Linux/unix Design Ideas