[{{mminutes}}:{{sseconds}}] X
Пользователь приглашает вас присоединиться к открытой игре игре с друзьями .
OSDEV
(0)       Используют 7 человек

Комментарии

Ни одного комментария.
Написать тут
Описание:
OS Development - Entrance
Автор:
xsy
Создан:
3 апреля 2013 в 10:46 (текущая версия от 4 апреля 2013 в 22:54)
Публичный:
Да
Тип словаря:
Книга
Последовательные отрывки из загруженного файла.
Содержание:
284 отрывка, 138469 символов
1 Welcome
2 Welcome to Operating System development ; the great frontier. Not all "make it" in this field, many don't even pass the "Hello World" of OSDev, but perhaps you will go further and create the next Linux? Or Windows? Or are your goals lower - MenuetOS? Or even CPM?
Whatever your goals, OSDev'ing is the great pinnacle of programming. But, you're not alone. In fact, this entire website, including the forums and this Wiki, are dedicated to OSDev'ing.This is not only about great programming skills, but is about community and developing friendships. Be those friendships between fellow forum members or IRQs and processes.
What do you need to succeed in OSDeving?
3 You should read the Getting Started article. If you are going to use CC++ as your language of choice, we generally recommend building a GCC Cross-Compiler first thing. Do you want to read a step-by-step tutorial to writing a basic kernel you can build upon?You should read Bran's Kernel Development Tutorial, and the article about Bran's Known Bugs. There is also the Assembler-based BabyStep Tutorial or, if you don't want that much hand-holding but still want a kickstart, Bare Bones tutorials for several languages. Once you know the basics, you will find even more Tutorials on various things.
Good luck! :)
What is an Operating System?
An operating system is a software controlling the operation of a computer system and its resources.
4 Major functions of operating systems may include:
Managing memory and other system resources.
Imposing security and access policies.
Scheduling and multiplexing processes and threads.
Launching and closing user programs, and providing basic system services for them.
Providing a basic user interface and application programmer interface.
Not all operating systems provide all of these functions. Single-tasking systems like MS-DOS would not schedule processes, while embedded systems like eCOS may not have a user interface.
5 An operating system is *not*:
The computer hardware.
A specific application such as a word processor, web browser or game.
A suite of utilities (like the GNU tools, which are used in many Unix-derived systems).
A development environment (though some OSes, such as UCSD Pascal or Smalltalk-80, incorporate an interpreter and IDE).
A Graphical User interface (though many modern operating systems incorporate a GUI as part of the OS).
6 While most operating systems are distributed with such tools, they are not themselves a necessary part of the OS. Some operating systems, such as Linux, may come in several different packaged forms, called _distributions_, which may have different suites of applications and utilities, and may organize some aspects of the system differently. Nonetheless, they are all versions of the same basic OS, and should not be considered to be separate types of operating systems.
7 Current (2013) operating systems include:
Windows
OS X
Linux
FreeBSD
Plan 9
There have been many other operating systems in the past, and many others currently which are not listed here. At any given time there are several projects to develop new operating systems in the works.
What is a kernel?
The kernel of an operating system is something you will never see. It basically enables any other programs to execute.
8 It handles events generated by hardware (called interrupts) and software (called system calls), and manages access to resources.
The hardware event handlers (interrupt handlers) will for instance get the number of the key you just pressed, and convert it to the corresponding character stored in a buffer so some program can retrieve it.
The system calls are initiated by user-level programs, for opening files, starting other programs, etc.
9 Each system call handler will have to check whether the arguments passed are valid, then perform the internal operation to complete the request.
Most user programs do not directly issue system calls (except for ASM programs, for instance), but instead use a standard library which does the ugly job of formatting arguments as required by the kernel and generating the system call. (For example, the C function fopen() eventually calls a kernel function that actually opens the file.)
The kernel usually defines a few abstractions like files, processes, sockets, directories, etc.
10 which correspond to an internal state it remembers about last operations, so that a program may issue a session of operation more efficiently.
What is a shell?
A shell is a special program that is usually integrated in an OS distribution, and which offers humans an interface with the computer. The way it appears to users may vary from system to system (command line, file explorer, etc), but the concept is always the same:
Allow the user to select a program to be started, and optionally give it session-specific arguments.
 

Связаться
Выделить
Выделите фрагменты страницы, относящиеся к вашему сообщению
Скрыть сведения
Скрыть всю личную информацию
Отмена