89 основных концепций операционной системы, которые должен знать каждый программист

задняя часть Операционная система
  1. 操作系统(Operating System,OS): Система, которая управляет аппаратными и программными ресурсами компьютера.软件, а также компьютерная система内核与基石. Операционная система должна обрабатыватьОсновные задачи, такие как управление памятью и ее настройка, определение приоритетов спроса и предложения системных ресурсов, управление устройствами ввода и вывода, операционными сетями и управлением файловыми системами.. Операционная система также предоставляет интерфейс для взаимодействия пользователя с системой.

  1. shell: это программа, которая берет команды с клавиатуры и передает их операционной системе для выполнения. В прошлом это был единственный пользовательский интерфейс, доступный в Unix-подобных системах. Сегодня у нас есть графический интерфейс пользователя (GUI) в дополнение к интерфейсу командной строки (CLI).

  1. GUI (Graphical User Interface): это用户界面, который позволяет пользователям взаимодействовать с электронными устройствами с помощью графических значков и звуковых индикаторов.

  1. 内核模式(kernel mode): также обычно упоминается как超级模式(supervisor mode), в режиме ядра исполняемый код имеет полный и неограниченный доступ к базовому оборудованию. Он может выполнять любую инструкцию ЦП и обращаться к любому адресу памяти. Режим ядра обычно зарезервирован для наиболее надежных функций операционной системы самого низкого уровня. Сбои в режиме ядра катастрофичны, они останавливают работу всего компьютера. Режим опытного пользователя — это автоматический режим, выбираемый при включении компьютера.

  2. 用户模式(user node): система находится в пользовательском режиме, когда операционная система выполняет пользовательское приложение (например, работает с текстовым редактором). Переход из пользовательского режима в режим ядра происходит, когда приложение запрашивает помощь операционной системы или когда происходит прерывание или системный вызов. В пользовательском режиме бит режима установлен в 1. Он меняется с 1 на 0 при переключении из пользовательского режима в режим ядра.

  3. 计算机架构(computer architecture): В вычислительной технике компьютерная архитектура представляет собой набор правил и методов, описывающих функции, организацию и реализацию компьютерных систем. Он в основном включает в себя набор инструкций, управление памятью, ввод-вывод и структуру шины.

  1. SATA(Serial ATA): Serial ATA (Serial Advanced Technology Attachment), представляющий собой компьютерную шину, отвечающую за передачу данных между материнской платой и запоминающими устройствами (например, жесткими дисками и приводами CD-ROM), в основном используемую в персональных компьютерах.

  2. 复用(multiplexing): Также известный как совместное использование, в основном указывает на управление временем и пространством в операционной системе. При мультиплексировании ресурса разные программы или пользователи по очереди используют его. Первый из них начинает использовать ресурс, затем другой и так далее.

  3. 大型机(mainframes): мейнфрейм — это тип компьютера, известный своими большими размерами, объемом памяти, вычислительной мощностью и высокой надежностью. В основном они используются крупными организациями для критически важных приложений, требующих обработки больших объемов данных.

  1. 批处理(batch system): пользователь пакетной операционной системы напрямую не взаимодействует с компьютером. Каждый пользователь готовит работу на автономном устройстве, таком как перфокарта, и отправляет ее оператору компьютера. Чтобы ускорить обработку, задания с одинаковыми потребностями объединяются в пакеты и выполняются группами. Программист оставляет программу оператору, который затем группирует программы с аналогичными требованиями.

  2. OS/360: OS/360, официально известная как операционная система IBM System/360, была снята с производства пакетной операционной системой, разработанной IBM для ее нового мейнфрейма System/360, выпущенного в 1964 году.

  3. 多处理系统(Computer multitasking): Относится к способности компьютера запускать несколько программ одновременно. Общий метод многозадачности заключается в том, чтобы запустить кусок кода первой программы и сохранить рабочую среду; затем запустить кусок кода второй программы для сохранения среды; ... восстановить рабочую среду первой программы и выполнить следующая программа первой программы кусок кода.

  4. 分时系统(Time-sharing): В вычислительной технике разделение времени - это система, в которой вычислительные ресурсы совместно используются многими пользователями одновременно посредством мультипрограммирования и многозадачности.

  5. 相容分时系统(Compatible Time-Sharing System): Самая ранняя операционная система с разделением времени, разработанная и реализованная Компьютерным центром Массачусетского технологического института.

  6. 云计算(cloud computing): Облачные вычисления — это доступность по требованию ресурсов компьютерной системы (особенно хранилища данных и вычислительной мощности) без непосредственного активного управления пользователями. Этот термин часто используется для описания центра обработки данных в Интернете, который доступен многим пользователям. Крупные облака, которые доминируют сегодня, часто имеют функциональные возможности, распределенные по нескольким местоположениям с центрального сервера. Если подключение к пользователю относительно близкое, его можно обозначить как пограничный сервер.

  1. UNIX 操作系统: Операционная система UNIX — это мощная многопользовательская, многозадачная операционная система, поддерживающая многопроцессорные архитектуры.По классификации операционных систем это операционная система с разделением времени.

  2. UNIX System V: это ответвление операционной системы UNIX.

  3. BSD(Berkeley Software Distribution): производная от UNIX.

  4. POSIX: Интерфейс переносимой операционной системы — это общий термин для ряда взаимосвязанных стандартов, определяющих API-интерфейсы IEEE для запуска программного обеспечения в различных операционных системах UNIX.

  5. MINIX: Minix — это мини-версия UNIX-подобной операционной системы.

  6. Linux: Наконец-то добрались до знаменитой операционной системы Linux, она слишком мощная, чтобы ее объяснять, ее все понимают.

  1. DOS (Disk Operating System): Дисковая операционная система (сокращенно DOS) — это компьютерная операционная система, которая может использовать устройства хранения на магнитных дисках, такие как дискеты, жесткие диски или оптические диски.

  2. MS-DOS(MicroSoft Disk Operating System): операционная система, разработанная корпорацией Microsoft в США и работающая на персональных компьютерах Intel x86. Это самая известная операционная система семейства DOS.До Windows 95 DOS была самым основным оборудованием в IBM PC и совместимых машинах, в то время как MS-DOS была наиболее часто используемой операционной системой DOS на персональных компьютерах.

  1. MacOS X, Как можно потерять операционную систему Apple? macOS — это операционная система с графическим пользовательским интерфейсом, запущенная Apple и являющаяся основной операционной системой для Macintosh.

  1. Windows NT(Windows New Technology): это ядро ​​чистой 32-битной операционной системы, выпущенной Microsoft в 1993 году.

  2. Service Pack(SP): представляет собой набор обновлений, исправлений и/или улучшений программы, выпущенных в виде единого установочного пакета. Многие компании, такие как Microsoft или Autodesk, обычно выпускают пакеты обновлений, когда для программы внесено определенное количество исправлений.

  3. 数字版权管理(DRM): Инструмент или техническая мера защиты (TPM) — это набор технологий контроля доступа, используемых для ограничения использования проприетарного оборудования и работ, защищенных авторским правом.

  4. x86: x86 — это полный набор архитектур набора инструкций, первоначально разработанный Intel на основе микропроцессора Intel 8086 и его варианта 8088. Используйте сегментацию памяти как решение для обработки большего объема памяти, чем может покрыть обычный 16-битный адрес. 32-битное число битов по умолчанию для x86.Кроме того, существует x86-64-битное, которое является 64-битным расширением архитектуры x86 и обратно совместимо с 16-битной и 32-битной архитектурами x86.

  5. FreeBSD: FreeBSD — это UNIX-подобная операционная система, результат разработки проекта FreeBSD.

  6. X Window System: Система X Window (X11 или сокращенно X) — это оконная система для отображения растровых изображений, распространенная в UNIX-подобных операционных системах.

  1. Gnome: GNOME — это среда рабочего стола, полностью состоящая из бесплатного программного обеспечения. Его целевой операционной системой является Linux, но большинство систем BSD также поддерживают GNOME.

  1. 网络操作系统(network operating systems): сетевая операционная система — это специализированная операционная система для сетевых устройств, таких как маршрутизаторы, коммутаторы или брандмауэры.

  1. 分布式网络系统(distributed operating systems): Распределенная операционная система — это программное обеспечение на наборе независимых, объединенных в сеть, взаимодействующих и физически независимых вычислительных узлов. Они обрабатывают задания, которые обслуживаются несколькими процессорами. Каждый отдельный узел владеет программным обеспечением, специфичным для глобальной коллективной операционной системы.

  1. 程序计数器(Program counter): Счетчик программ — это ЦП.寄存器, который инструктирует компьютер в его программной последовательности位置.

  2. 堆栈寄存器(stack pointer): Регистр стека — это регистр в ЦП компьютера, предназначенный для跟踪调用堆栈.

  3. 程序状态字(Program Status Word): это набор данных длиной 8 байт (или 64 бита), поддерживаемых операционной системой. Он отслеживает текущее состояние системы.

  4. 流水线(Pipeline): В вычислительном мире конвейер — это набор элементов обработки данных, соединенных последовательно, где выход одного элемента является входом следующего элемента. Элементы конвейера обычно выполняются параллельно или с разделением по времени. Обычно между элементами вставляется некоторый объем буферной памяти.

  1. 超标量(superscalar): Архитектура суперскалярного ЦП относится к типу параллельных операций, реализующих параллелизм на уровне инструкций в ядре процессора. Эта технология может обеспечить более высокий трафик ЦП при той же частоте ЦП.
  2. 系统调用(system call): Относится к программе, работающей в пространстве пользователя, запрашивающей службу, которая требует более высоких привилегий для запуска из ядра операционной системы. Системные вызовы обеспечивают интерфейс между пользовательской программой и операционной системой. Большинство системных взаимодействий требуют работы в режиме ядра. Например, операции ввода-вывода устройства или межпроцессное взаимодействие.
  3. 多线程(multithreading): это относится к технологии, которая реализует одновременное выполнение нескольких потоков из программного или аппаратного обеспечения. Компьютер с возможностью многопоточности может выполнять несколько потоков одновременно благодаря аппаратной поддержке, тем самым повышая общую производительность обработки.
  4. CPU 核心(core): это мозг ЦП, он получает инструкции и выполняет вычисления или операции для выполнения этих инструкций. Процессор может иметь несколько ядер.
  5. 图形处理器(Graphics Processing Unit): также известный как ядро ​​дисплея, визуальный процессор, чип дисплея или графический чип; это микропроцессор, который выполняет графические операции на персональных компьютерах, рабочих станциях, игровых консолях и некоторых мобильных устройствах (таких как планшеты, смартфоны и т. д.).

  1. Архитектура хранения: Память верхнего уровня имеет самую высокую скорость, но наименьшую емкость, и стоимость очень высока.Чем ниже иерархическая структура, тем медленнее эффективность доступа и больше емкость, но дешевле стоимость.

  1. 高速缓存行(cache lines): Фактически кэш разделен на блоки фиксированного размера, размер которых зависит от размера цикла пакетного чтения или пакетной записи.
  2. 缓存命中(cache hit): попадание в кэш происходит первым, когда приложение или программа запрашивает данные. Сначала центральный процессор (ЦП) ищет данные в ближайшем к нему месте памяти (обычно в основном кэше). Если запрошенные данные найдены в кеше, это считается попаданием в кеш.

  1. L1 cache: Кэш-память 1-го уровня — это банк памяти, встроенный в микросхему ЦП. Кэш L1, также известный как主缓存, находится в компьютере最快памяти и ближайший к процессору.

  2. L2 cache: репозиторий кэш-памяти L2, встроенный в микросхему ЦП, упакованный в тот же модуль или встроенный в материнскую плату. Кэш L2 питает кеш L1, который питает процессор. Память L2 медленнее, чем память L1.

  3. L3 cache: Кэш L3 встроен в банк памяти на материнской плате или внутри модуля ЦП. Кэш L3 передает данные в кеш L2, память которого обычно медленнее, чем память L2, но быстрее, чем основная память. Кэш L3 питает кеш L2, который, в свою очередь, питает кеш L1, который питает процессор.

  4. RAM((Random Access Memory): Оперативная память, также называемая основной памятью, связана с ЦП.直接交换数据внутренней памяти. Он может быть прочитан и записан в любое время и очень быстр, как правило, благодаря операционной системе или другой запущенной программе.临时носитель хранения данных. Когда работает оперативная память, информация может быть записана (сохранена) или считана (извлечена) с любого указанного адреса в любое время. Самая большая разница между ним и ПЗУ - это данные易失性, то есть сохраненные данные будут потеряны после отключения питания. Оперативная память используется в компьютерах и цифровых системах для временного хранения программ, данных и промежуточных результатов.

  5. ROM (Read Only Memory): Постоянная память — это полупроводниковая память, характеристики которойПосле того, как сохраненные данные не могут быть изменены или удалены, и содержимое не будет изменено при отключении питания消失. В электронных или компьютерных системах он обычно используется для хранения программ или данных, которые не нужно часто изменять.

  6. EEPROM (Electrically Erasable PROM): электрически стираемое программируемое постоянное запоминающее устройство представляет собой полупроводниковое запоминающее устройство, которое может многократно перезаписываться электронным способом.

  7. 闪存(flash memory): форма электронно-стираемой программируемой постоянной памяти, которая позволяет выполнять многократное стирание или запись во время работы. Эта технология в основном используется для общего хранения данных, а также для обмена и передачи данных между компьютерами и другими цифровыми продуктами, такими как карты памяти и USB-накопители.

  8. SSD(Solid State Disks): твердотельный накопитель — это компьютерное запоминающее устройство, которое в основном использует флэш-память в качестве постоянного хранилища.

  1. 虚拟地址(virtual memory): виртуальная память - это компьютерная система内存管理механизм. Это заставляет приложение думать, что у него есть непрерывная доступная память (непрерывное полное адресное пространство), когда на самом деле оно обычно разделено на несколько фрагментов физической памяти, а некоторые временно хранятся на внешнем дисковом хранилище, когда требуется обмен данными. Системы, использующие технологию виртуальной памяти, упрощают написание больших программ и более эффективно используют реальную физическую память (такую ​​как ОЗУ), чем системы без технологии виртуальной памяти.

  2. MMU (Memory Management Unit): Блок управления памятью, иногда называемый блоком управления страничной памятью. Это тип компьютерного оборудования, отвечающего за обработку запросов доступа к памяти от центрального процессора (ЦП). Его особенности включаютПреобразование виртуальных адресов в физические (т. е. управление виртуальной памятью), защита памяти, управление кешем ЦП и т. д..

  1. context switch: переключение контекста, также известное как переключение среды. это механизм для хранения и восстановления состояния ЦП. Если вы хотите поменять местами процессы на ЦП, вы должны сначала сохранить состояние текущего процесса, а затем прочитать состояние процесса обратно в ЦП.

  2. 驱动程序(device driver): Драйвер устройства, именуемый драйвером (драйвером), представляет собой программу, позволяющую компьютерному программному обеспечению высокого уровня взаимодействовать с оборудованием.Эта программа создает интерфейс между оборудованием и оборудованием или оборудованием и программным обеспечением через шину на материнской плате или другом устройстве. Механизм, с помощью которого подсистема связи формирует соединение с аппаратным обеспечением, что позволяет обмениваться данными на аппаратном устройстве.

  1. 忙等(busy waiting): В программной инженерии занятое ожидание也称自旋, — это состояние, при котором процесс неоднократно проверяет, верно ли условие, возможно, проверяя ввод с клавиатуры или доступность блокировки.

  2. 中断(Interrupt): Обычно после получения асинхронного сигнала от периферийного оборудования (относительно центрального процессора и памяти) или синхронного сигнала от программного обеспечения процессор выполняет соответствующую аппаратно-программную обработку. Посылка такого сигнала называется проведением中断请求(interrupt request,IRQ). Аппаратное прерывание заставляет процессор пройти运行信息切换(context switch)Для сохранения состояния выполнения (главным образом зарегистрируйте информацию, такую ​​как счетчик программы и слово состояния программы);软件中断则Обычно как инструкция в наборе инструкций ЦП, она непосредственно инструктирует этот переключатель операционной информации программируемым способом и направляет обработку в блок кода обработки прерывания. Прерывания особенно полезны при многозадачности компьютеров, особенно в системах реального времени.

  3. 中断向量(interrupt vector): Вектор прерывания находится в таблице векторов прерываний.中断向量表(IVT)представляет собой структуру данных, которая связывает список обработчиков прерываний со списком запросов на прерывание в таблице векторов прерываний. Каждая запись в таблице векторов прерываний (называемая вектором прерывания) является адресом обработчика прерывания.

  1. DMA (Direct Memory Access): Прямой доступ к памяти, прямой доступ к памяти — это метод доступа к памяти в информатике. Это позволяет некоторым аппаратным подсистемам (периферийным устройствам компьютера) внутри компьютера читать и записывать системную память независимо и напрямую без вмешательства центрального процессора (ЦП).

  2. 总线(Bus): Шина (Bus) относится к стандартизированному способу обмена данными между компьютерными компонентами, то есть обеспечивает передачу данных и логику управления для каждого компонента общим способом.

  3. PCIe (Peripheral Component Interconnect Express): Официально именуемая PCIe, это важная ветвь компьютерной шины, которая следует существующим концепциям программирования PCI и стандартам сигналов и создает стандарт высокоскоростной последовательной системы связи.

  4. DMI (Direct Media Interface): Прямой медиа-интерфейс, выделенная шина для Intel, используемая для соединения между микросхемой южного моста и микросхемой северного моста на материнской плате компьютера.

  5. USB(Universal Serial Bus): это своего рода связь между компьютерной системой и внешним устройством.串口总线Стандарт также является технической спецификацией для интерфейсов ввода и вывода.Он широко используется в информационных и коммуникационных продуктах, таких как персональные компьютеры и мобильные устройства, и распространяется на другие смежные области, такие как фотографическое оборудование, цифровое телевидение (приставки). и игровые приставки.

  1. BIOS(Basic Input Output System): микропрограмма, которая запускает аппаратную инициализацию на этапе загрузки при включении питания и предоставляет операционной системе службы во время выполнения. Это первое программное обеспечение, которое запускается при загрузке.

  1. 硬实时系统(hard real-time system): Жесткий режим реального времени означает, что вы должны уложиться в любой срок. Немногие системы имеют это требование. Например, ядерные системы, некоторые медицинские приложения (например, кардиостимуляторы), многочисленные оборонные приложения, авионика и т. д.

  2. 软实时系统(soft real-time system): Система мягкого реального времени может пропустить некоторые дедлайны, но если вы пропустите слишком много, вы получите снижение производительности. Хорошим примером является звуковая система в компьютере.

  3. 进程(Process): Сама программа — это только описание инструкций, данных и их организации, а процесс — реальный запущенный экземпляр программы (этих инструкций и данных). Если процессы могут быть связаны с одной и той же программой, и каждый процесс может выполняться независимо синхронным (последовательным) или асинхронным образом.

  4. 地址空间(address space): адресное пространство — это диапазон действительных адресов в памяти, доступных для программы или процесса. То есть это память, к которой может обращаться программа или процесс. Память может быть физической или виртуальной и используется для выполнения инструкций и хранения данных.

  5. 进程表(process table): Таблица процессов поддерживается операционной системой.数据结构, каждая запись в этой таблице (часто называемая блоком контекста) содержит информацию о进程такая информация, как имя и состояние процесса, приоритет, регистры и семафоры, которые он может ожидать.

  6. 命令行界面(command-line interpreter): Это наиболее широко используемый пользовательский интерфейс до популяризации графического пользовательского интерфейса. Обычно он не поддерживает мышь. Пользователь вводит команду через клавиатуру, а компьютер выполняет команду после получения команды.

  1. 进程间通信(interprocess communication): Относится к некоторым приемам или методам передачи данных или сигналов как минимум между двумя процессами или потоками.
  2. 超级用户(superuser): Также известный как учетная запись администратора, в области компьютерных операционных систем он относится к специальному пользователю, используемому для управления системой, и его фактическое имя в системе также варьируется от системы к системе, например, root, администратор и супервизор.
  3. 目录(directory): На компьютере или связанном с ним устройстве каталог или папка является виртуальным容器. Внутри он содержит набор файлов и других каталогов.
  4. 路径(path name): Путь — это общее представление имени компьютерного файла или каталога, указывающее на уникальное место в файловой системе.
  5. 根目录(root directory): корневой каталог относится к каталогу верхнего уровня в компьютерной системе, например к диску C и диску D в Windows, а/.
  6. 工作目录(Working directory): это компьютерный термин. Каталог, в котором находится пользователь в операционной системе, в этом каталоге пользователь может получить доступ к файлам с относительными именами файлов.
  7. 文件描述符(file descriptor): файловый дескриптор — это термин в информатике, абстракция, используемая для обозначения ссылки на файл.
  8. inode: сокращение от inode. Инод — это информация, содержащаяся в системах UNIX, которая содержит подробную информацию о каждом файле, такую ​​как узел, владелец, файл, расположение файла и т. д.
  9. 共享库(shared library): Общая библиотека — это файл, содержащий объектный код, который может использоваться несколькими файлами a.out во время выполнения.
  10. DLLs (Dynamic-Link Libraries): Динамическая библиотека, реализованная Microsoft в операционной системе.共享函数库Реализация концепции. Расширениями для этих библиотечных функций являются .DLL, .OCX (библиотеки, содержащие элементы управления ActiveX) или .DRV (устаревшие системные драйверы).
  11. 客户端(clients): клиент — это компьютерное оборудование или программное обеспечение, которое обращается к службе, предоставляемой сервером.
  12. 服务端(servers): В вычислительной технике сервер — это компьютерная программа или устройство, которое обеспечивает функциональность для других программ или устройств, называемых服务端
  13. 主从架构(client-server): Архитектура master-slave также называется客户端/服务器архитектура,C/SАрхитектура — это сетевая архитектура, которая отделяет клиент от сервера. Каждый экземпляр клиентского программного обеспечения может делать запросы к серверу или серверу приложений. Существует множество различных типов серверов, таких как файловые серверы, игровые серверы и т. д.

  1. 虚拟机(Virtual Machines): В архитектуре компьютерных наук это относится к специальному программному обеспечению, которое может создавать среду между компьютерной платформой и конечным пользователем, а конечный пользователь управляет другим программным обеспечением на основе среды, созданной виртуальной машиной.

  1. Java 虚拟机(Java virtual Machines): Виртуальная машина Java имеет собственную полную аппаратную архитектуру, такую ​​как процессоры, стеки, регистры и т. д., а также соответствующую систему инструкций. JVM скрывает информацию, связанную с конкретной платформой операционной системы, так что программе Java нужно только генерировать объектный код (байт-код), работающий на виртуальной машине Java, и она может работать на различных платформах без изменений.
  2. 目标文件(object file): Целевой файл — это тот, который содержит目标代码файл, что означает машинный код в перемещаемом формате, который обычно нельзя выполнить напрямую. Объектные файлы бывают разных форматов, и один и тот же объектный код может быть упакован в разные объектные файлы. Объектные файлы также работают как разделяемые библиотеки.
  3. C preprocessor: Препроцессор C — это препроцессор языка C и языка C++. Он используется для предварительного сканирования исходного кода перед тем, как компилятор обработает программу, завершит такие операции, как включение заголовочного файла, раскрытие макроса, условная компиляция, управление строкой и т. д.

Ссылка на статью:

blog.CSDN.net/Zhangjiagang_No...

Woohoo. Настоящим Hopewai.com/definition/…

Итак, Wikipedia.org/wiki/direct…

En. Wikipedia.org/wiki/bus_(От…

En. Wikipedia.org/wiki/inter R…

Хорошо. Wikipedia.org/wiki/busy_i…

En.wikipedia.org/wiki/con TeX…

Ну... Wikipedia.org/wiki/read - о...

Woohoo. Настоящим Hopewai.com/definition/…

zhuanlan.zhihu.com/p/37749443

Итак, Wikipedia.org/wiki/pipe…

Хорошо. Wikipedia.org/wiki/stack_…

En. Wikipedia.org/wiki/расстояние…

Ну... Wikipedia.org/wiki/time - это...

zh.wikipedia.org/wiki/UNIX

This.Wikipedia.org/wiki/Unix_S…

En. Wikipedia.org/wiki/net Я Р…

zh.wikipedia.org/zh/X86-64

zh.wikipedia.org/zh/X86

Хорошо. Wikipedia.org/wiki/cloud_…

Woohoo. Настоящим Hopewai.com/definition/…

zh.wikipedia.org/wiki/SATA

blog.coding horror.com/understand i…

Хорошо. Wikipedia.org/wiki/pro Специальность…