Работа в командной строке Windows

В принципе в командной строке Windows всё просто. Любой, кто умеет печатать, сможет без труда работать в ней. Но для человека непосвященного командная строка может показаться сложной. Чтобы без проблем освоиться, надо знать основные команды и общие правила работы.

Запуск командной строки

Наиболее часто встречающиеся рекомендации по запуску звучат так: Пуск, выполнить, cmd.

В меню пуск присутствует пункт Выполнить. Он запускает программу, которая позволяет передавать единичные команды системе Windows. В данном случае команда cmd запускает исполняемый файл cmd.exe, находящийся в папке system32.

Вот полный путь к командной строке:

C:\Windows\System32\cmd.exe

На некоторых версиях Windows пункт меню Выполнить по умолчанию убран. В этом случае жмёте WIN + R, вводите cmd, далее нажимаем Enter.

Команда «Выполнить»

Также можно запустить командную строку непосредственно из папки system32, сделав ярлык для запуска на рабочем столе (кликаем на cmd.exe правой клавишей мыши и в меню выбираем пункт Отправить / Рабочий стол) или же через диспетчер задач (кнопка Запустить новую задачу > cmd > OK).

Создание задачи из диспетчера задач

По умолчанию в командной строке нельзя работать мышью (перемещать курсор или выделять текст). Это неудобно вообще и новичкам в особенности. К тому же чёрный экран выглядит как-то слишком мрачно и уныло. Поэтому после запуска командной строки нужно будет изменить её настройки. Жмём правой клавишей на окне cmd и выбираем Значения по умолчанию. Стоит сразу отметить, что настройки умолчаний относятся к cmd.exe в целом, а свойства к конкретному открытому окну.

В появившемся окне свойств командной строки видим четыре вкладки:

На вкладке Параметры стоит отметить пункты отбрасывать повторения (чтобы снизить заполнение буфера команд) и выделение мышью (чтобы можно было использовать мышь в работе).

На вкладках Шрифты и Цвета всё просто: выбираете размер, тип и цвет шрифта, а также фоновый цвет окна. Отмечу только, что размер шрифта влияет на размеры окна командной строки, поэтому его надо выставлять до размеров окна, а не после.

Во вкладке Расположение задаются размеры окна и его начальное расположение при запуске. Я так до конца и не понял в каких единицах представлены величины, поэтому размер советую выставлять, руководствуясь окном предпросмотра слева.

Команды командной строки

Для вывода полного списка командщ достаточно набрать команду help и нажать Enter.

help — вывод справки по командам
help CD или CD /? — вывод справки по одной команде (для команды CD)

cd \ — переход в корневой каталог
cd ../ — переход в родительский каталог
D: — переход на диск D.

dir — вывод всего содержимого папки
dir *.exe — вывод списка exe-файлов папки
cls —очистить экран командной строки

Командная строка запоминает команды, которые вы вводите. Листать их можно клавишами ⇑ и ⇓. Можно просматривать содержимое папки при помощи клавиши Tab (Shift+Tab листает в обратном порядке). Можно пролистать файлы на конкретную букву или буквы. Например, напечатав букву s и нажимая Tab, можно пролистать только файлы и папки, начинающиеся на эту букву (system, system32, system.ini и т.д.).

Например, вам надо перейти из корня диска C в папку system32, найти и запустить в ней контрольную панель. Можно просто напечатать:

C:\windows\system32\control.exe

Но это не всегда быстро и удобно, к тому же не всегда знаешь — что конкретно надо набирать. Поэтому можно набрать команду cd, затем после пробела набрать wi, пролистать клавишей Tab до папки windows, поставить после неё слэш, набрать буквы sy, пролистать клавишей Tab до папки system32, затем опять слэш и то же самое с control.exe.

C:\cd windows\system32\control.exe

Этот способ с табом куда быстрее в большинстве случаев, чем простой набор, так как названия файлов и папок могут быть длинными.

При включении поддержки мыши копировать информацию из командной строки можно выделив участок текста мышью и нажав Enter. Правая клавиша мыши, напротив, вставляет информацию из буфера обмена в командную строку.

На этом пока закончим. Спасибо за прочтение статьи.

Сетевая модель OSI

Сетевая модель OSI (англ. open systems interconnection basic reference model — базовая эталонная модель взаимодействия открытых систем) — сетевая модель стека сетевых протоколов OSI/ISO.

В связи с затянувшейся разработкой протоколов OSI, в настоящее время основным используемым стеком протоколов является TCP/IP, он был разработан ещё до принятия модели OSI и вне связи с ней.

Уровни модели OSI

Тип данныхУровень (layer) Функции
Данные 7. Прикладной (application) Доступ к сетевым службам
Поток 6. Представительский (presentation) Представление и шифрование данных
Сеансы 5. Сеансовый (session) Управление сеансом связи
Сегменты / Дейтаграммы 4. Транспортный (transport) Прямая связь между конечными пунктами и надежность
Пакеты 3. Сетевой (network) Определение маршрута и логическая адресация
Кадры 2. Канальный (data link) Физическая адресация
Биты 1. Физический (physical) Работа со средой передачи, сигналами и двоичными данными

Любой протокол модели OSI должен взаимодействовать либо с протоколами своего уровня, либо с протоколами на единицу выше и/или ниже своего уровня. Взаимодействия с протоколами своего уровня называются горизонтальными, а с уровнями на единицу выше или ниже — вертикальными. Любой протокол модели OSI может выполнять только функции своего уровня и не может выполнять функций другого уровня, что не выполняется в протоколах альтернативных моделей.

Прикладной уровень

Прикладной уровень (уровень приложений; англ. application layer) — верхний уровень модели, обеспечивающий взаимодействие пользовательских приложений с сетью.

Позволяет приложениям использовать сетевые службы:

  • удалённый доступ к файлам и базам данных,
  • пересылка электронной почты;
  • отвечает за передачу служебной информации;
  • предоставляет приложениям информацию об ошибках;
  • формирует запросы к уровню представления.

Протоколы прикладного уровня: RDP (Remote Desktop Protocol), HTTP (HyperText Transfer Protocol), SMTP (Simple Mail Transfer Protocol), SNMP (Simple Network Management Protocol), POP3 (Post Office Protocol Version 3), FTP (File Transfer Protocol) и другие.

Представительский уровень

Представительский уровень (уровень представления; англ. presentation layer) обеспечивает преобразование протоколов и шифрование/дешифрование данных. Запросы приложений, полученные с прикладного уровня, на уровне представления преобразуются в формат для передачи по сети, а полученные из сети данные преобразуются в формат приложений. На этом уровне может осуществляться сжатие/распаковка или кодирование/декодирование данных, а также перенаправление запросов другому сетевому ресурсу, если они не могут быть обработаны локально.

Уровень представлений обычно представляет собой промежуточный протокол для преобразования информации из соседних уровней. Это позволяет осуществлять обмен между приложениями на разнородных компьютерных системах прозрачным для приложений образом. Уровень представлений обеспечивает форматирование и преобразование кода. Форматирование кода используется для того, чтобы гарантировать приложению поступление информации для обработки, которая имела бы для него смысл. При необходимости этот уровень может выполнять перевод из одного формата данных в другой.

Уровень представлений имеет дело не только с форматами и представлением данных, он также занимается структурами данных, которые используются программами. Таким образом, уровень 6 обеспечивает организацию данных при их пересылке.

Сеансовый уровень

Сеансовый уровень (англ. session layer) модели обеспечивает поддержание сеанса связи, позволяя приложениям взаимодействовать между собой длительное время. Уровень управляет созданием/завершением сеанса, обменом информацией, синхронизацией задач, определением права на передачу данных и поддержанием сеанса в периоды неактивности приложений.

Протоколы сеансового уровня: ADSP (AppleTalk Data Stream Protocol), ASP (AppleTalk Session Protocol), H.245 (Call Control Protocol for Multimedia Communication) и другие.

Транспортный уровень

Транспортный уровень (англ. transport layer) модели предназначен для обеспечения надёжной передачи данных от отправителя к получателю. При этом уровень надёжности может варьироваться в широких пределах. Существует множество классов протоколов транспортного уровня, начиная от протоколов, предоставляющих только основные транспортные функции (например, функции передачи данных без подтверждения приема), и заканчивая протоколами, которые гарантируют доставку в пункт назначения нескольких пакетов данных в надлежащей последовательности, мультиплексируют несколько потоков данных, обеспечивают механизм управления потоками данных и гарантируют достоверность принятых данных. Например, UDP ограничивается контролем целостности данных в рамках одной датаграммы и не исключает возможности потери пакета целиком или дублирования пакетов, нарушения порядка получения пакетов данных; TCP обеспечивает надёжную непрерывную передачу данных, исключающую потерю данных или нарушение порядка их поступления или дублирования, может перераспределять данные, разбивая большие порции данных на фрагменты и, наоборот, склеивая фрагменты в один пакет.

Протоколы транспортного уровня: ATP (AppleTalk Transaction Protocol), CUDP (Cyclic UDP), DCCP (Datagram Congestion Control Protocol), FCP (Fiber Channel Protocol) и другие.

Сетевой уровень

Сетевой уровень (англ. network layer) модели предназначен для определения пути передачи данных. Отвечает за трансляцию логических адресов и имён в физические, определение кратчайших маршрутов, коммутацию и маршрутизацию, отслеживание неполадок и «заторов» в сети.

Протоколы сетевого уровня маршрутизируют данные от источника к получателю. Работающие на этом уровне устройства (маршрутизаторы) условно называют устройствами третьего уровня (по номеру уровня в модели OSI).

Протоколы сетевого уровня: IP/IPv4/IPv6 (Internet Protocol), IPX (Internetwork Packet Exchange, протокол межсетевого обмена), X.25 (частично этот протокол реализован на уровне 2), CLNP (сетевой протокол без организации соединений), IPsec (Internet Protocol Security). Протоколы маршрутизации — RIP (Routing Information Protocol), OSPF (Open Shortest Path First).

Канальный уровень

Канальный уровень (англ. data link layer) предназначен для обеспечения взаимодействия сетей по физическому уровню и контролем над ошибками, которые могут возникнуть. Полученные с физического уровня данные, представленные в битах, он упаковывает в кадры, проверяет их на целостность и, если нужно, исправляет ошибки (формирует повторный запрос поврежденного кадра) и отправляет на сетевой уровень. Канальный уровень может взаимодействовать с одним или несколькими физическими уровнями, контролируя и управляя этим взаимодействием.

Спецификация IEEE 802 разделяет этот уровень на два подуровня: MAC (англ. media access control) регулирует доступ к разделяемой физической среде, LLC (англ. logical link control) обеспечивает обслуживание сетевого уровня.

На этом уровне работают коммутаторы, мосты и другие устройства. Эти устройства используют адресацию второго уровня (по номеру уровня в модели OSI).

В программировании этот уровень представляет драйвер сетевой платы, в операционных системах имеется программный интерфейс взаимодействия канального и сетевого уровней между собой. Это не новый уровень, а просто реализация модели для конкретной ОС.

Примеры таких интерфейсов: ODI, NDIS, UDI.

Физический уровень

Физический уровень (англ. physical layer) — нижний уровень модели, который определяет метод передачи данных, представленных в двоичном виде, от одного устройства (компьютера) к другому. Составлением таких методов занимаются разные организации, в том числе: Институт инженеров по электротехнике и электронике, Альянс электронной промышленности, Европейский институт телекоммуникационных стандартов и другие. Осуществляют передачу электрических или оптических сигналов в кабель или в радиоэфир и, соответственно, их приём и преобразование в биты данных в соответствии с методами кодирования цифровых сигналов.

На этом уровне также работают концентраторы, повторители сигнала и медиаконвертеры.

Функции физического уровня реализуются на всех устройствах, подключенных к сети. Со стороны компьютера функции физического уровня выполняются сетевым адаптером или последовательным портом. К физическому уровню относятся физические, электрические и механические интерфейсы между двумя системами. Физический уровень определяет такие виды сред передачи данных как оптоволокно, витая пара, коаксиальный кабель, спутниковый канал передач данных и т. п.

Протоколы физического уровня: IEEE 802.15 (Bluetooth), IRDA, EIA и другие.

Критика

В конце 90-х годов семиуровневая модель OSI критиковалась отдельными авторами. В частности, в книге «UNIX. Руководство системного администратора» Эви Немет (англ. Evi Nemeth) писала:

Пока комитеты ISO спорили о своих стандартах, за их спиной менялась вся концепция организации сетей и по всему миру внедрялся протокол TCP/IP.

И вот, когда протоколы ISO были наконец реализованы, выявился целый ряд проблем:

  • эти протоколы основывались на концепциях, не имеющих в современных сетях никакого смысла;
  • их спецификации были в некоторых случаях неполными;
  • по своим функциональным возможностям они уступали другим протоколам;
  • наличие многочисленных уровней сделало эти протоколы медлительными и трудными для реализации.

Сейчас даже самые ярые сторонники этих протоколов признают, что OSI постепенно движется к тому, чтобы стать маленькой сноской на страницах истории компьютеров.

Нужна ли математика программисту

Ответ на этот вопрос немножечко двоякий. Можно сказать, и «Да» и «Нет» и быть правдивым и в том и в другом случае.

Давайте посмотрим почему люди верят, что математика нужна всем программистам и нужна им всегда. Дело в том, что компьютерная наука как таковая весьма молодая наука. Поэтому исторически так получилось, что когда университеты создавали кафедры компьютерной науки или кафедры для инженера-программиста, компьютерные инженерии и так далее, то они создавали их на базе одной из двух кафедр. Это было либо – кафедра математики, либо – кафедра инженерии.

У первых математика вообще является очевидным: математика – это то, что они изучают. Естественно, получилось так, что большинство преподавателей преподавали программирование исходя из математики. Они говорили про математические модели, они выстраивали математические формулы, даже подходили к разработке программного обеспечения с точки зрения математика, а не с точки зрения программиста. С другой стороны, если они делали их на базе инженерии, то там математика все равно была везде, потому что инженерия как вы понимаете для математика – теоретическая, прикладная и так далее. Но всем математика была нужна и если спросить: «Нужна ли математика инженеру?» звучало весьма странно. Естественно нужна. Даже посмотрите на само слово «Инженер-программист». То есть по какой-то причине исторически так получилось, что программистов приписали к инженерам.

Но ведь это не совсем правильно. Если мы подумаем об этом, то можно было бы приписать их ко многим другим. К примеру, я могу сказать, что лингвистика очень сильно помогает программисту. Именно в этом есть ключ. Нужна ли программисту математика? Да, она нужна, если мы говорим о том, что, если она поможет программисту в решении определенных задач. Какие задачи вам поможет решить математика? В основном задачи, которые решены за вас какими-то библиотеками. Например, вы хотите написать на ассемблере для самого процессора какую ту библиотеку, к примеру библиотеку, которая будет высчитывать вам что-то. Естественно, вам нужна математика. В процессоре ограниченное количество операций и вам нужно все остальные операции суметь выразить теми операциями, которые делает процессор. У процессора нет квадратного корня и многих других задач. Вам нужно выразить одну вещь которую вы уже знаете, к который вы привыкли, как например на калькуляторе, она занимает всего лишь одну кнопку. Здесь вам придется ее выражать другими какими-то возможностями этого процессора. Поэтому вам нужна математика и какие-то ее знания. Или, например, вам надо занимать чем-либо, что связанно с 3D-графикой. Это проекция 3D-мира из одно геометрии в другую. Геометрия – это часть математики. Таким образом в этом случае вам нужна математика. В том случае, если вы не находитесь в первых рядах тех людей, которые делают что-то, что еще не было решено конкретными библиотеками, то в этом случае математика вам не нужна. Ведь все, что вы будете делать – это вызывать уже готовые библиотеки.

Возьмем, например, процедуры шифрования. Вам не стоит их реализовывать, потому что скорее всего вы программисты, вы не математики. Вы не знаете всех нюансов математических функций. Намного лучше вызвать уже написанную функцию за вас, а потом использовать результат того, что вы получаете обратно. Математика вам будет не нужна. Вам нужно будет знать, как программисту то, какие функции использовать, в какой последовательности. Вам нужно просто знать, что что-то там есть в этой библиотеке. Вам нужно знать, что шифрование без одностороннего ключа обратить нельзя. Вам нужно понимать, что есть слабое, сильное шифрование. Вы знаете, эти вещи, но реализовывать вы их не будете, потому что, математика вам не нужна. Таким образом, нужна ли математика программисту? Да, математика вам может помочь. Нет, математика вам не обязательна.

Тем не менее есть одна вещь, где математика помогает всем программистам. Это, например, математика, которая связана со сложностью алгоритма. Но что происходит там? Она там настолько простая, что если вы закончили шесть классов школы, то вы уже должны понять ее. Зачем вам изучать всю математику, если она вам не нужна? Естественно, ее понимание вам поможет. Если сказать, что вы знаете всю математику, то она вам поможет. Это тоже самое, если вы знаете лингвистику, то она вам поможет в программировании. Если вы знаете что-нибудь, например, о строении человеческого глаза и вы делаете обработки рисунков, то вам это поможет. Естественно это вам поможет. Любые знания вам помогут. Любые знания — это хорошо, но это не обязательные знания. Вы сможете построить, не зная всей математики, модель перевода из одной координаты в другую и создание проекции. В любом случае, если вы можете, вам стоит продвигаться вперед. Каким-то образом изучать математику. Каким-то образом изучать другие науки, если это вам интересно, оно вам поможет. Если вы считаете, например, что вам нужно знать всю математику, чтобы программировать обычные веб-приложения скорее всего вы сами себя обманываете. Вам намного лучше потратить немножечко времени на изучение парадигм программирования, разных способов программирования, разных способов создания прототипов и так далее. Вам это поможет лучше.

Сравнительный анализ Windows и Linux

ВВЕДЕНИЕ

Среди всех компьютерных программ, с которыми работают пользователи ПК, особое место занимают операционные системы. От выбора ОС зависит производительность Вашей работы, степень защиты данных, необходимые аппаратные средства и т.д. Однако, выбор операционной системы также зависит от технических характеристик (конфигурации) компьютера. Чем более современнее операционная система, тем она не только предоставляет больше возможностей и более наглядна, но также тем больше она предъявляет требований к компьютеру (тактовая частота процессора, оперативная и дисковая память, наличие и разрядность дополнительных карт и устройств).

Операционная система, ОС (англ. operating system) — базовый комплекс компьютерных программ своего рода, передатчик между компьютерным железом и остальными программами.

ОС позволяет абстрагироваться от деталей реализации аппаратного обеспечения, предоставляя разработчикам программного обеспечения минимально необходимый набор функций. С точки зрения обывателей, обычных пользователей компьютерной техники, ОС включает в себя и программы пользовательского интерфейса.

Таким образом, выбор операционной системы очень важен, так как от этого выбора будет зависеть вся дальнейшая работа ПК: производительность, степень защищенности данных и т.д. Поэтому целью нашей работы стало представление и сравнение с разных сторон наиболее распространенных операционных систем.

Под Windows обычно подразумевается последняя на момент обсуждения версия Microsoft Windows для настольных компьютеров/ноутбуков, под Linux — наиболее популярный на момент обсуждения дистрибутив GNU/Linux. Подобные дискуссии в основном сводятся к сравнению внешних признаков ОС (таких как графический интерфейс и юзабилити со стороны пользователей, привыкших к Windows) и технических характеристик (таких как архитектура, API и безопасность со стороны пользователей альтернативных ОС). Здесь стоит отметить, что такое сравние «в лоб» по сути некорректно, потому как «Windows» и поставляемый с ней набор программ — это ПО, предназначенное для решения строго определённой задачи, в то время как «Linux» — это ядро, на базе которого могут быть построены самые разнообразные конфигурации ОС, от пользовательских (например, UBUNTU для настольных компьютеров или Android для мобильных устройств) до серверных решений и встраиваемых ОС.

ТРУДНОСТИ В СРАВНЕНИИ

  • Исторически слово «Linux» означает ядро операционной системы. Операционные системы на основе ядра Linux, утилит проекта GNU исторически называют GNU/Linux, но в последнее время имя упрощают до «Linux», что не везде приветствуется.
  • Linux — это не определённая ОС, их более 600, среди них есть те, которые отличаются друг от друга значительно, а некоторые совсем немного.
  • И Windows, и Linux поставляются в различных конфигурациях. Особенно Linux, для которой существует огромное количество вариантов, некоторые из них предназначены для узкого круга задач.
  • Цена и широта технической поддержки различаются у разных поставщиков, а также в зависимости от версии и дистрибутива.
  • Производители оборудования могут устанавливать дополнительное ПО с операционной системой, которое делает доступные функции системы разнообразнее. Иногда они даже спонсируют продавца, снижая цену продукта для пользователя.
  • Данные, полученные от маркетинговых подразделений, и результаты тестирования могут расходиться.
  • Microsoft распространяет Windows под разными лицензиями (закрытыми). Дистрибутивы Linux, со своей стороны, могут содержать проприетарные компоненты.

ПО ПОПУЛЯРНОСТИ НА НАСТОЛЬНЫХ КОМПЬЮТЕРАХ

Точно подсчитать количество пользователей затруднительно, так как почти все копии Linux не требуют регистрации, а Windows NT существует во множестве не авторизованных или незарегистрированных копий. Приведенные данные основаны на идентификационных откликах веь-браузеров, поэтому цифры весьма приблизительны: разные сайты привлекают разные аудитории, а браузеры не всегда точно передают данные об операционной системе.

WINDOWS LINUX
Доля при продаже компьютеров Предустанавливается без возможности выбора на 99% персональных компьютеров, начиная с первой версии MS-DOS Предустанавливается на небольшое количество продаваемых систем. В последнее время появилось несколько моделей ноутбуков, поставляющихся с Linux. Также на смартфоны, планшетные компьютеры, электронные книги, цифровые проигрыватели и другие устройства устанавливают операционную систему Android — основанную на ядре Linux
Оконные менеджеры/графическая среда Графическая оболочка необходима для работы подавляющего большинства программ, и её отказ ведет к нарушению их функционирования. Существует ряд программ, которые работают без использования графической оболочки, но служат они преимущественно для технического обслуживания системы (например, восстановления работоспособности). Графическая оболочка не критична для работы операционной системы, система может переключаться в текстовый режим. Используются «виртуальные терминалы», что позволяет избежать перезагрузки системы в случае отказа одного из терминалов.
Системная консоль/командная строка Командная строка существует, но обладает ограниченной функциональностью. Базируется на MS-DOS, наследуя её скромные возможности, мало изменившиеся с 1990-х годов. Разработан также мощный командный процессор Windows PowerShell, реализующий некоторые возможности командной строки UNIX, основанный на .NET. Командная строка также является неотъемлемой частью системы. Во многих ОС функции настройки системы реализованы при помощи графического интерфейса (иногда — работающего незаметно для пользователя с системой с помощью командной строки), но из‑за различия между вариантами не знакомые с конкретным дистрибутивом пользователи часто дают новичкам инструкции, ориентированные на командную строку. Командная строка позволяет опытному пользователю полностью перенастроить все функции ОС.

ПО УДОБСТВУ ИСПОЛЬЗОВАНИЯ

Установка Linux когда-то была затруднительной для среднего пользователя. В настоящее время почти все дистрибутивы содержат упрощённую процедуру установки и демонстрационный диск (Live CD), который дает возможность загрузить систему прямо с CD или DVD и пользоваться ей, не устанавливая на жёсткий диск.

Установщик Windows тоже включает в себя программу-помощника (wizard), как и дистрибутивы Linux.

  WINDOWS LINUX
Размер инсталлятора Представляет стандартизированный набор программных средств и размер вариируется от нескольких десятков дискет (Windows 3.11) до DVD-диска (Windows Vista/7/8). Существуют как официальные так и не официальные инструменты по созданию своих дистрибутивов Windows. Возможна установка через сеть. От одной дискеты до нескольких DVD дисков. Например, дистрибутив DSL занимает всего 50 МБ, предоставляя браузеры, офисные приложения и т. д. Многие дистрибутивы распространяются в нескольких вариантах (как правило, DVD с большим набором программ и выбором графической среды или Live CD для каждой графической среды (KDE, GNOME, Xfce) с набором программ для неё). Возможна установка через сеть, при которой всё необходимое программное обеспечение будет получено со специального сервера.
Простота установки Windows 7, довольно проста в установке, если предполагается установка на машину без присутствующих операционных систем. Установка Windows XP, может быть затруднена в случае, если установленное оборудование использует новые технологии. Очень просты в установке (SuSE, Mandriva, Ubuntu, Fedora и др.), в процессе позволяет менять множество настроек, легко устанавливается к существующим операционным системам.
Наличие драйверов устройств Драйверы некоторых устройств, использованных в системе, устанавливаются отдельно. Многие драйверы устанавливается системой из набора драйверов на установочном носителе, некоторые недостающие драйверы можно получить через интернет с помощью средств системы. Процесс установки большинства драйверов автоматизирован. Оборудование, считающееся по каким-либо причинам устаревшим, не поддерживается разработчиками этого оборудования, в результате чего для него отсутствуют драйверы, поскольку для разных ОС Windows требуются различные драйверы устройств. На практике, для неинтегрированых устройств почти всегда приходится устанавливать драйверы отдельно. Это требует времени и дополнительных перезагрузок. Большинство драйверов устанавливается автоматически при инсталляции операционной системы или доступно для загрузки через интернет. Множество драйверов уже включено в ядро. Производители некоторых устройств (ТВ-тюнеров и др.) иногда не выпускают драйверы для Linux, поэтому устройства могут оказаться неработоспособными (в этом случае могут помочь драйверы открытого сообщества для систем на одном чипе SoC). Возможно использование Windows-драйверов для некоторых из устройств.
Инсталляция с помощью ознакомительного CD (Live CD) Официальных свободно-распространяемых ознакомительных CD не существует. Но можно специально создать работающую систему в облегченном варианте на диске (WinPE) с диска или флеш-накопителя или с помощью специально созданного загрузочного диска (BartPE). Многие полноценные дистрибутивы (Knoppix, openSUSE, Ubuntu) имеют ознакомительный диск (live CD). С помощью таких дисков можно осуществлять восстановление работоспособности системы, в том числе с другой операционной системой. Также многие live-CD предоставляют возможность установки ОС на компьютер с этого же диска.
Поставляемое программное обеспечение Несколько программ для работы с мультимедиа и сетью интернет (браузер Internet Explorer, проигрыватель Windows Media Player, текстовые редакторы Notepad, WordPad, графический редактор Paint), почтовый клиент Outlook Express. Дополнительное ПО может быть включено производителем оборудования.  На практике без установки дополнительных компонентов Windows Media Player не может воспроизводить видео, а встроенная в Windows XP (SP1) программа записи дисков не может записывать DVD и сильно ограничена в функционале. Кроме того, в системе отсутствуют средства работы с различными архивами. Во всех основных дистрибутивах присутствует множество программ для самых разных задач: мультимедиа, графики, интернета, офисной работы, игр, а также системные утилиты и дополнительные визуальные оболочки. Однако из-за недостаточной открытости форматов файлов собственнических продуктов для Microsoft Windows существует ряд проблем с совместимостью форматов файлов между такими продуктами и свободными приложениями. Например, сложный текст, созданный в OpenOffice.org, и сохранённый в собственническом формате Microsoft Office, не всегда корректно читается в Microsoft Office; и наоборот.
Программы, которые можно установить дополнительно Огромный выбор собственнических и свободно распространяемых программ (Однако нет централизованного хранилища необходимого для работы свободного программного обеспечения, поддерживаемого производителем ОС). Как правило, они поставляются со всеми необходимыми библиотеками, устанавливаются с помощью специальной программы-инсталлятора. Хотя в Windows есть собственная система установки/удаления программ, многие программы устанавливаются уникальными инсталляторами. Деинсталляция тоже проста, хотя программы удаления зачастую оставляют глобальные пометки (например, для ограничения срока работы), а иногда — и бинарные файлы (например, библиотеки). Имеется возможность установки некоторых простых программ путём простого копирования файлов в системную директорию (бинарный формат файлов). Некоторые программы могут работать только на определённых версиях ОС. Большой выбор свободно распространяемых программ и небольшой выбор коммерческих. Однако для ряда задач приложений гораздо меньше, чем для Windows, или они отсутствуют. Созданы версии некоторых Win32-программ для Linux. Некоторые программы должны устанавливаться пользователем самостоятельно, либо из исходных кодов, иногда с применением командной строки. При инсталляции ПО в пакете часто может требоваться инсталляция других пакетов, которые устанавливаются автоматически, либо их можно скачать из Интернета. Это используется для того, чтобы избежать конфликта библиотек (dll hell): две программы могут использовать один и тот же пакет, а операционная система самостоятельно заботится о том, чтобы поддерживать актуальность его версии.
Подготовка диска По умолчанию устанавливает только себя, затирая возможность запуска других ОС, кроме других инсталляций Windows. Разделы с «родной» файловой системой NTFS легко могут быть расширены и уменьшены (под Vista/7 уменьшить размер раздела можно системными средствами, под XP — только с помощью программ сторонних производителей). При этом графическая программа для этой задачи обладает меньшим функционалом, чем утилита командной строки. Возможно динамическое разделение диска (Dynamic Disks). Возможна установка нескольких операционных систем. В большинстве дистрибутивов есть возможность запуска полноценной системы с компакт диска, а значит работать со всеми функциями, включая мощную графическую утилиту переразметки GPartEd, работающую с большим набором файловых систем, включая NTFS. Динамические диски поддерживаются с использованием LVM или EVMS, часто поставляемых вместе с дистрибутивом.
Программа-загрузчик При установке автоматически настраивается для загрузки других имеющихся на компьютере инсталляций систем семейства Windows NT/9x (NTLDR), для загрузки Linux и других подобных систем необходимо ручное редактирование файла BOOT.INI. Также возможно применение сторонних загрузчиков, таких как GRUB. Может загружать операционные системы по выбору пользователя с помощью встроенных менеджеров GRUB или LILO. Также имеются средства безопасности (например запрос пароля), которых нет в загрузчике Windows.
Доступность исходного кода Исходный код может быть приобретён для строго ограниченных целей, а, кроме того, программы сторонних разработчиков могут изменять системные настройки. Другими словами, возможно случайное нарушение лицензионного соглашения. Весь код системы доступен для модификации. Большая часть сторонних программ также предоставляет исходный код.

Из‑за отсутствия поддержки Linux в загрузчике Windows в случае установки Windows и Linux на одной машине проще сначала установить Windows, а затем Linux. Существуют дополнительные загрузчики операционных систем по выбору. В случае переустановки Windows загрузчик можно восстановить при помощи Live CD.

Особенности Linux, а именно: открытость, изначальное предпочтение открытых программных компонентов закрытым, нестандартность поставки (огромное количество дистрибутивов со своими особенностями), центральные безопасные источники программ, наличие бита выполнения, исходный запрет на работу под пользователем root, наличие средств ограничения прав (SELinux, AppArmor) — делают возможным только точечное, намеренное заражение и исключают возможность масштабной жизнедеятельности вредоносных программных кодов. Только под Linux количество вирусов исчисляется несколькими десятками (обычно разработанными в учебных целях), так как открытость ядра позволила закрыть большинство уязвимостей в ядре системы.

Для Microsoft Windows создано очень большое число вирусов и деструктивных программ (их количество исчисляется десятками миллионов (по данным лаборатории Касперского (отчет) )). Для борьбы с ними используется специальное программное обеспечение — антивирусы. Вирусы бывают разных видов: от сравнительно безобидных не приносящих особого вреда пользователю, до деструктивных, которые изменяют настройки системы, уничтожают важные данные пользователя или похищают банковские данные. В линейке Windows NT всегда присутствовало чёткое разделение пользовательских прав. Тем не менее, большинство пользователей домашних компьютеров всегда использует права администратора, что негативно сказывается на защищённости системы. В настоящее Windows в явном виде запрашивает подтверждение действий, требующих прав администратора, даже если пользователь является администратором.

В Linux (как и во всех других UNIX-подобных системах) всегда присутствовало чёткое разделение пользовательских прав. Имеется только одна учётная запись системного администратора («суперпользователя») — root. Этот пользователь может выполнять ничем не ограниченные действия над системой: изменять настройки, устанавливать и удалять программы, изменять системные файлы, останавливать отдельные компоненты или всю систему, и даже полностью удалить её одной командой. Также имеются учётные записи обычных пользователей: они могут только изменять личные настройки (внешний вид, настройки программ), и выполнять операции с файлами только в пределах своего домашнего каталога (или в других каталогах, если разрешит root). Обычному пользователю разрешено устанавливать программы только в свой домашний каталог или в те каталоги, где у него есть разрешение на запись данных. В большинстве современных дистрибутивов Linux работа непосредственно из-под учётной записи root невозможна; пользователь всегда работает с ограниченными правами, запуск же учётной записи root производится только для выполнения отдельных действий, и для каждого такого запуска требуется ввод пароля root (su) или текущего пользователя (sudo) для подтверждения полномочий.

5 лет насмарку или немного о высшем образовании

Я долго держал это в себе, пока не наступил предел, особенно, после того как прочитал письмо одной из выпускниц, ректору Питерского университета пару дней назад со страниц интернета.

Письмо выпускницы:


Здравствуйте, Ректор Санкт-Петербургского Университета Экономики и Финансов — одного из лучших экономических вузов страны, в который мечтают поступить тысячи школьников из провинции и Петербурга.

Я закончила ваше замечательное заведение 1 год назад. На днях мне понадобилось создать ИП, и юрист меня спрашивает: вы какую систему налогообложения выберете, упрощенную или единый налог на вмененный доход. И тут я понимаю, что понятия не имею, о чем идет речь! Слова конечно знакомые, но что за этим скрывается без понятия. Как такое может быть, что человек, отучившийся 5 лет в лучшем ЭКОНОМИЧЕСКОМ университете Питера, ни разу не слышал о таких определениях?

Как можно ходить на все пары, сдать экзамены на 4 и 5, защитить диплом по специальности экономист-математик и не знать, чем отличается ИП от ПБОЮЛ или это одно и то же? Почему маркетинг, страхование, бух учет, менеджмент — нам читали преподаватели, которые были старше 60 лет по книгам 20-летней давности? А экономику фирмы вел дедуля, которому было лет 75, и он умер от старости прямо перед зачетом.

Зачем вы меня учили про кривую Хикса, эластичность по цене, свот-анализ и градиент? Если я все это знаю, почему я себестоимость своего продукта рассчитываю, просто складывая в Excel все затраты в расчете на единицу, а розничную цену определяю интуитивно, т.к. не совсем понимаю, как эту формулу, которую мы проходили, применить в реальной жизни.

Зачем мне 2 семестра рассказывали про теорию экономических отношений?

Любой человек понимает, что есть спрос, а есть предложение и они взаимосвязаны. Каждый знает, что монополия — одна фирма, олигополия — несколько, конкуренция — много.

Зачем об этом целый год говорить и как знание биографии Маркса поможет мне выбрать правильную рекламу своего товара, создать сайт в WordPress, сделать макет листовок, найти поставщиков, провести презентацию товара, привлечь людей в группу ВКонтакте?

Я не знаю, как выписывать чек покупателю, я не знаю, где взять кассовый аппарат, нужен ли он мне, и как им пользоваться, я не умею учитывать расходы и доходы (но знаю статьи дебета-кредита бухгалтерского баланса — на 3м курсе проходили, на пятерку сдала), и самое неприятное, даже, если я буду нарушать закон, я даже не узнаю об этом, т.к. я понятия не имею, что можно делать, а что нельзя (правоведение и налогообложение — тоже на 5 сданы). Почему мои одногруппники работают агентами по продажам и раздают листовки в торговых центрах, а некоторые вообще до сих пор работу найти не могут? Может быть потому, что они НИЧЕГО не знают и не умеют? Короче, уважаемый ректор СПбГУЭФ, некогда мне тут разглагольствовать, т.к. надо сейчас весь интернет перерыть, чтобы почитать информацию про налоговую отчетность и организацию ИП — простейшую единицу рыночных отношений, про которые мы 5 лет, 6 дней в неделю слушали, записывали, зубрили, сдавали экзамены и защищали дипломы, и о которых я ничего не знаю, как оказалось.

П.С.: 5 лет в вашем вузе — самое бездарное времяпрепровождение, какое только может быть. Хорошо хоть я после 1го курса работать начала, иначе совсем бы отупела. Из десятков дисциплин, которые у нас были, пригодились только английский, физкультура и теория вероятностей. Из преподавателей — реально чему-то научили 1-2 человека.

Кроме 4 лучших друзей эти годы ничего мне не дали абсолютно. За 1 год жизни в Китае, сменив десяток работ, я узнала в сто раз больше и увидела, что такое экономика на самом деле.

Если вы думаете, что она описывается пересечением кривых IS-LM, то могу сказать, что вы неправы. Ставьте двойку. Диплом в помойку, тем у кого красный — тем более.

ВУЗ ваш отстой, лучше сразу ребенка дворником отправить работать, чем 5 лет по 200 тыс. в год платить за обучение. Чем продолжать так учить детей, лучше закройтесь вообще и устройте в здании музей, исторический объект как-никак, бывшее здание ассигнационного Банка России.

С уважением, Давыдова Екатерина!


Так и хочется сказать выпускникам школ и студентам: «Хватит лелеять надежды о том, что, потратив 5 лет (а в некоторых случаях и 6) на высшее образование Вы будете зарабатывать ОГРОМНЫЕ ДЕНЬГИ и Вас везде будут ждать с распростертыми объятиями! Перестаньте тратить деньги на университетские дипломы. Направьте свои силы, время, энергию — на практическое образование — которое спустя 5 лет принесет Вам в сотни раз больше плодов, чем только что получившему свой диплом выпускнику!»

Хочу рассказать Вам одну интересную притчу…

Давным-давно, когда не было еще ничего, Бог решил что-нибудь сотворить. И создал наш мир. Сначала свет, потом земля, вода и так далее дошел до человека, который был задуман, как известно по его (Бога) образу и подобию. Чтоб Адаму было не столь печально, и было с кем плодиться и размножаться, через денек создал Бог ему Еву.

— Всё есть что Вам нужно и о чем Вы только можете пожелать у Вас уже здесь есть, пользуйтесь на здоровье — предупредил Бог, — а вот там в дали Университеты, в них не суйтесь. А если пойдете, жизнь ваша испортится. Не ешьте университетского яблока! — и ушел.

Вскоре объявился змей.

— Как живется? — спросило исчадье ада.

— Все отлично, наслаждаемся жизнью, все есть, все можем — ответила парочка

— Как это, а дипломы?

Узнав, что у Адама с Евой нет дипломов, змей очень удивился и сообщил, что дипломы обязательно должны быть, без них нельзя радоваться жизни и жить красиво. Необходимо провести в университете 5 лет и только тогда можно в жизни устроиться.

Вняли Адам и Ева змею и пошли поступать. Готовились долго, зубрили математику, русский язык, сдавали экзамены, конкурс проходили. Поступили, обрадовались, 5 лет учились, сессии сдавали, лекции и семинары посещали. Закончили. Получили дипломы и… сидят в саду никому не нужные, ничего не делают, на приличную работу почему-то не берут, тонна полученных бестолковых знаний никому не нужна, как и дипломы оказывается, да и не очень-то их знаний осталось, большинство сразу после экзаменов выветривались навсегда. Появляется Бог:

— Где же вы были, дети мои? Как вы поживаете?

— Плохо. Дипломы есть, а на работу почему-то не берут. Либо предлагают совсем уж недостойные нашего высшего образования деньги. Они не понимают насколько мы ценные специалисты, мы ведь выпускники университета! Кругом несправедливость, нормально зарабатывают только нечестные люди.

— И где же вы такой чуши наслышались?

— От профессоров и преподавателей в университете.

— И как те преподаватели, хорошо ли живут?

— Да нет, тоже плохо и бедно.

Посмотрел на них Бог с прищуром и упрекнул, что слушали они людей, у которых нет денег, карьеры, признания, уважения и т.д., а Его не слушали, хотя могли все взять в любой момент в любом количестве.

В каждой сказке есть только доля сказки.

Мое мнение — если ты хочешь просто быть как все и идти общей дорогой, или вообще понятия не имеешь куда идти, тогда как крайний вариант — можно идти за высшим образованием.

Но если цели хоть немного более высокие — высшее образование лишний балласт из неработающих стереотипов, который к тому же крадет 5 лет жизни. Только подумайте — 5 лет жизни посвятить обучению тому, что тебе совершенно не нужно! Вместо того, чтобы изучать реально нужные полезные вещи, одновременно работая и набираясь практического опыта — мы тратим время на не понятно что и для кого! Встает законный вопрос — если высшее образование совершенно не дает необходимых знаний, откуда же их брать?

Могу предложить 2 самых эффективных, на мой взгляд, способа:

  • Посетите десяток семинаров и тренингов по тому направлению, которое хотите освоить. Это сразу даст вам во много раз больше практической информации, чем любой ВУЗ (хотя, конечно, тренера тоже надо выбирать — идите только на практика — кто сам делает то, чему учит).
  • Устройтесь на работу в компанию, работающую в интересующей вас области, либо на актуальную вам должность. Там вы действительно сможете получить необходимый опыт. Работайте прежде всего ради опыта и знаний, а не ради денег. Если потребуется — даже бесплатно.

Если страшно, можно продолжать учиться по минимуму (фактически числиться) где-нибудь, чтобы получить диплом. Но одновременно обязательно работать и учиться реальным навыкам.

Я не пропагандирую отказ от высшего образование для всех — для масс в масштабах государства, разумеется высшее образование некоторым нужно, но если говорить о конкретном человеке, который хочет РЕАЛЬНО добиться успеха в практически любой профессии высшее образование — это совершенно неразумная растрата времени, 5 лет которые можно потратить на порядок более эффективно осваивая практические навыки плюс добирая НЕОБХОДИМЫЕ (а не все подряд как в университетах) теоретические знания на отдельных семинарах или курсах.

Я прекрасно понимаю, что множество читателей скажет, что высшее образование учит мыслить — но не 5 же лет! Тем более что большую часть этого времени студенты НЕ учатся, большинство же учатся работать и усваивать массивы информации только во время сессий. Это все равно, что сесть в тюрьму на несколько лет, чтобы научиться дисциплине.

Предвижу вопрос — кому же необходимо высшее образование? Высшее образование нужно тем, кто хочет, жаждет, мечтает стать врачом, физиком, биологом и т.п. Кто реально «кайфует» от этого, тогда и будет больше настоящих врачей, физиков, химиков! А научиться мыслить, анализировать и находить информацию можно и в более короткие сроки. Благо сейчас столько источников на любой вкус и кошелек! Некоторым, высшее образование приносит огромную пользу. Но только если это действительно Высшее Образование, а не так — ради «корочки» …, но статистика такова, что 80% выпускников ВУЗов НЕ работают по профессии! Конечно, везде есть исключения, но они крайне редки. Например, есть некоторые профессии, которым высшее образование необходимо (физики, химики, врачи, архитекторы, машинисты, таможенники и т.д.), в которых то, что дадут в ВУЗе на несколько порядков больше, объемнее, быстрее и разнообразнее, чем ты выкопаешь за всю жизнь самостоятельно, не зная, что и где копать. Если посмотреть вокруг, то вроде союзные здания до сих пор стоят, машины и поезда ездят. Вполне возможно, что образование идет не совсем в правильном направлении и мы отстаём во многом на десятки лет. Но это достаточно хорошая база для дальнейшего развития. А как человек ею воспользовался — это уже его выбор.

Для тех, кто думает, что «если идти наниматься на работу, диплом обязательно спросят, какие бы умения у тебя ни были, мол, диплом тут как красивая визитная карточка», отвечу: «Вы что действительно считаете, что для бизнесмена нанимающего человека на работу имеет значение диплом?» В подавляющем большинстве случаев — никакого значения не имеет диплом какого ВУЗа у тебя, тем более всем всё равно, как ты там учился (и так все знают, что там всё можно купить), а вот реальный опыт работы — это ОЧЕНЬ БОЛЬШОЙ ПЛЮС, сразу перевешивающий любые бумажки и пластики.
С другой стороны, высшее образование необходимо, чтобы сформировать общее мировоззрение, но для этого достаточно заочного или даже дистанционного обучения.

Высшее образование — это стереотип и все, это не знания, которые можно применить и получить результат.

Другое дело, что глобально образование действительно не успевает за скоростью жизни сейчас. Все меняется так быстро, что учебные программы не успевают реагировать, и тут уже как повезет с преподавателями — если это реальные практики, которые и сами стараются быть в тренде и ориентироваться в новых технологиях — студентам повезло! Если же Вы попали к консервативным «педагогам», то от них Вы можете получить только исторические знания, которые тоже бывают полезны.

В преподавателях меня вообще поражает как же они без практики, а только с теорией своей дисциплины учат нас как ее применять в реальных условиях! Когда сами даже не представляют, что это такое вести свой бизнес.

У нас сам принцип подачи знаний в ВУЗах очень устарел. Естественно, стоило бы пересмотреть программы обучения и убрать из них всё лишнее и сделать побольше практики по основному предмету, но это уже дело будущего. Надеюсь, ближайшего. Вообще же, систему высшего образования нужно сделать более «недоступной» чтобы не плодить громадное количество совершенно не нужных «специалистов». Да и само количество ВУЗов нужно сократить процентов на 50. Особенно экономических. И их стало так много именно потому, что очень многие хотят заработать — выдача «корочек» стала прибыльным бизнесом. Но, господа, почитайте объявления — у нас уже и на должность «уборщица» требуют диплом о высшем образовании! По сути, нужна серьёзная реформа высшего образования. Другое дело, кто этим будет заниматься, а кроме того, дадут ли это сделать те, кто сделал высшее образование своим бизнесом?

После окончания ВУЗа, устроившись на работу по специальности (что в наше время редкость) — молодежь убеждается в том, что-то что часто говорят преподаватели — полный бред! Представления, которые дают о малом бизнесе, его создании, процветании, или что многие стандартные теории и т.д. вообще ничего общего не имеют с реальностью. Студент имеет (если имеет) огромную кучу никому не нужной теории, мало либо полное отсутствие жизненной практики и придя на работу, вынужден учиться с нуля (всему приходится переучиваться на уже реальной практике)! Выпускающиеся студенты как минимум не могут найти себе достойную работу. Разве это результат? Разве это то — на что нужно тратить 5 лет жизни? Проблема в том, что все понимают это когда уже будет поздно. Мало кто в 16, 17 лет понимает, что даст ему ВУЗ.

В наше время в ВУЗ идут те, кто после окончания школы не знает, чем же заняться. Тем, кто уже в этом возрасте видит свою цель диплом не нужен.
Вы спросите, что же делать молодым выпускникам 9-х и 11-х классов?

  1. ВЫБРАТЬ ПРОФЕССИЮ (дело, сферу деятельности) которой они хотят себя посвятить, а не на ту, на которую поступают по желанию родителей. Знания от этого у них не усваиваются, т.к. принцип вызубрил для оценки вышел и забыл — будет именно для родителей. Кроме того, дети не должны жить чужой жизнью и исправлять промашки своих родителей.
  2. Если для этой сферы важно высшее образование — тогда и учиться, И ИДЕАЛЬНО ЕЩЕ ВО ВРЕМЯ ОБУЧЕНИЯ РАБОТАТЬ ПО СВОЕЙ БУДУЮЩЕЙ СПЕЦИАЛЬНОСТИ (ПУСТЬ И БЕСПЛАТНО), набираясь практического опыта. Ключевое слово во всем этом «мотивация» стать специалистом. Тогда и 5 лет не станут «вырванными» из вашей жизни.
  3. НЕОБХОДИМО УЧИТЬСЯ И ПОСЛЕ ВУЗА, повышая свою квалификацию, т.к. время не стоит на месте! Если Вы не двигаетесь с новым прогрессом и тенденциями в вашей области, то вы как мамонт уходите со временем в небытие — уступая новым поколениям и технологиям. В любой сфере крайне важно быстрота освоения и внедрения нового, а соответственно выбор самообразования более продуктивный, потому что ни один ВУЗ сейчас не успевает за жизнью.

Обратите внимание, что больше успешных людей без высшего образования. А если уже на то пошло, то Абрамович, Гейтс, Джобс, Брэнсон, Хонда, Форд и многие другие очень богатые и знаменитые личности не имели высшего образования.

Разумеется, не всем дано свой бизнес открыть. Многим так и придется на кого-то работать. Так ведь удобнее, привычнее, проще, легче. Понятно, что простора поменьше и самореализация не та совсем, но каждый сам выбирает, как ему идти.

А для системы государственных структур, где официальное оформление, предоставляют соцпакеты, да еще на должность нормальную — этот диплом и надо. А бывает еще и очное требуют. Хорошо, что в оценки не смотрят.

Шифрование

Общие сведения

Шифрование — это обратимое преобразование информации в целях сокрытия от неавторизованных лиц, с предоставлением в то же время, авторизованным пользователям доступ к ней.

Шифрование применяется для хранения важной информации в ненадёжных источниках и её передачи по незащищённым каналам связи.

Шифрование обеспечивает:

  • Конфиденцальность. Сокрытие информации от неавторизованных пользователей;
  • Целостность – предотвращение изменения информации;
  • Идентифицируемость – аутентификация источника информации.

Важной особенностью шифрования любого алгоритма является использование ключа. Он необходим чтобы прочитать шифротекст.

Ключ — это секретная информация, используемая криптографическим алгоритмом при зашифровании или расшифровании сообщений.

Авторизация — предоставление определённому лицу прав на выполнение определённых действий (т.е. авторизованные пользователи обладают определённым аутентичным ключом).

Аутентификация — процедура проверки подлинности (например, пароль в базе данных, электронного письма, контрольной суммы).

Шифрование представляет собой два шага: зашифрование и расшифрование.

Методы шифрования

  • Симметричное (используется один и тот же ключ для шифрования и расшифрования);
  • Ассиметричное (используются два ключа).

Симметричное шифрование

Для шифрования и расшифрования используется один и тот же ключ. Алгоритм и ключ выбираются заранее и известны обоим сторонам.

  1. Пользователь_1 выбирает ключ шифрования, и алгоритм, затем посылает это Пользователю_2;
  2. Пользователь_2 шифрует полученным ключом информацию и передаёт Пользователю_1 зашифрованный документ (шифротекст);
  3. Пользователь_1 с помощью этого ключа расшифровывает его.

Проблемой этого метода является передача этого ключа на первом шаге.

Ассиметричное шифрование

В системах с открытым ключом используются два ключа — открытый и закрытый, которые связаны между собой математическим образом.

Открытый ключ передаётся по открытому доступному каналу. Открытый ключ может шифровать, но не расшифровывать информацию.

  1. Пользователь_1 выбирает открытый и закрытый ключи и посылает Пользователю_2 открытый ключ по открытому каналу;
  2. Пользователь_2 шифрует информацию при помощи открытого ключа Пользователя_1 и передаёт зашифрованный документ (шифротекст) Пользователю_1;
  3. Пользователь_1 с помощью закрытого ключа расшифровывает текст.

Хеш-сумма

Хеш-сумма — это результат обработки неких данных хеш-функцией (преобразование информации).

Используется для проверки целостности данных.

Основные виды: TTH, SHA-1, ED2K, AICH, MD5, CRC-32.

Отрицательные числа в дополнительном коде

В этой статье попробую вкратце изложить идею понимания дополнительного кода в компьютере как понимаю её я. Что же, приступим.

Идея дополнительного кода — не усложнять аппаратную реализацию операций сложения и вычитания. При дополнительном коде используется та же реализация операций сложения и вычитания что и для целых беззнаковых чисел.

Чтобы дополнительный код работал, используется трюк с переполнением значения регистра. Допустим, у нас есть 8-битный регистр. Если в нём содержится 111111112, то при прибавлении 12 происходит переполнение и в регистре оказывается 000000002. Это похоже на то, как если бы мы сложили -1 и 1 и получили 0.

Предположим, что 111111112 это и есть представление -110 в нашем «магическом» дополнительном коде. Возникает вопрос — как преобразовывать положительные целые числа в отрицательные в дополнительном коде?

Итак, необходимо получить 111111112 исходя из 000000012. Инвертируем биты — получаем 111111102. Остаётся добавить к этому числу 12, чтобы получить требуемое. Добавляем бит. Не это ли искомый алгоритм? Проверяем для других чисел и убеждаемся что всё работает правильно.

Строгое доказательство, наверняка, есть в умных книгах, мне же этого пока достаточно.