Давайте начнем рассмотрение основных компонентов компьютерных систем. И начнем мы с аппаратных средств.
В общем и целом, есть два основных компонента в компьютере, а именно аппаратные и программные компоненты.
В 1946 году, первый, общего назначения, электронный компьютер в мире был построен Пенном.
Он назывался ENIAC. ENIAC означает электронный цифровой интегратор и компьютер.
Как вы можете видеть на этом слайде, ENIAC был большой машиной, которая весила более 30 тонн, содержала приблизительно 18000 вакуумных трубок, и размещалась в большой комнате 180 квадратных метров.
Если сравнивать с сегодняшним компьютером, вы увидите, что компьютерный чип, который используется в вашем мобильном телефоне, во много-много раз более мощный, чем ENIAC.
Существует важное наблюдение, сделанное Гордоном Муром, сооснователем Intel, он предсказал в 1965 году, что мощность компьютерного чипа удваивается примерно каждые 18 месяцев.
Это наблюдение еще работает и сегодня.
Это имеет некоторые очень важные последствия, потому что задача, которая требует одну минуту времени обработки, используя сегодняшнюю машину, потребовала бы более 40 лет времени обработки с помощью компьютера, разработанного 40 лет назад, то есть, машина все равно бы не выполнила задачу после 40 лет.
В общем и целом, компьютер представляет собой электронное устройство, которое работает под управлением команд (или программ), хранящихся в запоминающем устройстве.
Диаграмма здесь иллюстрирует поток данных с помощью различных аппаратных компонентов.
Сначала принимаются данные с устройств ввода, далее данные обрабатываются арифметически и логически с помощью получения инструкций и данных из основной памяти, иногда необходимо получить больше данных и файлов из устройств хранения.
Затем программа будет выдавать результаты на устройства вывода, иногда она может передавать результаты обратно к устройствам хранения данных для использования в будущем.
Эту модель вычислений часто называют хранимой программой компьютера.
Основным компонентом компьютера является центральный процессор, который считается мозгом компьютера.
Процессоры можно найти во многих современных устройствах, включая ПК, ноутбуки и мобильные устройства, такие как смартфоны и планшеты.
Центральный процессор получает инструкции из памяти и выполняет вычисление данных.
И ЦП, как правило, состоит из двух частей, а именно, это арифметико-логическое устройство и блок управления.
Арифметико-логическое устройство ALU отвечает за вычисления, в том числе основных арифметических операций, таких как сложение, вычитание, умножение и деление, и логической оценки данных, в том числе логических сравнений, таких как "равно", "больше чем" или "меньше чем".
Блок управления контролирует и координирует общие операции внутри компьютера.
Основные функции блока управления включают в себя:
Управление доступом к главной памяти хранения.
Управление последовательностью, в которой команды выполняются.
Регулирование времени всех операций, осуществляемых в CPU.
Отправка и прием сигналов управления в и из периферийных устройств, таких как клавиатура и принтер.
Управление потоком данных между АЛУ и основной памятью.
Существует три вида памяти для работы компьютера.
Это память, которая находится внутри процессора, и которая известна как «регистр».
Регистры, это быстрая память для хранения данных, которые процессор в настоящее время обрабатывает.
Все данные должны быть сохранены в регистре, прежде чем они могут быть обработаны.
Например, в сложении двух чисел, оба числа должны быть в регистрах, а результат также будет помещен в регистр.
Это основная память, которая также известна как оперативное запоминающее устройство (ОЗУ), которая содержит инструкции программы и данные для программы.
В современных компьютерах, процессоры снабжены также кэш-памятью, которая хранит часто используемые данные для того, чтобы сократить время доступа к оперативной памяти.
Устройства ввода несут ответственность за получение информации от пользователей.
Самым распространенным устройством ввода является клавиатура, которая стала стандартным устройством для большинства компьютеров.
Кроме того, существуют и другие устройства ввода, которые помогают улучшить пользовательский интерфейс, например, мышь.
Некоторые устройства ввода разработаны с конкретной целью.
Например, микрофон для записи звука, считыватель штрих-кода для считывания штрих-кодов, сканер для сканирования документов и цифровой фотоаппарат для съемки.
Я уверен, что вы можете придумать и другие примеры.
Устройства вывода отвечают за представление информации для пользователей.
Два основные типы устройств вывода, это мониторы и принтеры.
Мониторы отображают информацию на экране.
Тем не менее, информация, представленная таким образом, является энергозависимой и не-портативный.
Принтеры часто используются, чтобы вывести информацию на внешний носитель, который можно хранить отдельно и переносить.
Существуют и другие устройства вывода, например, динамики для вывода звука, плоттеры для построения графиков, и некоторые специально разработанные устройства вывода, такие как дисплей Брайля, который можно использовать в качестве устройства для тактильного зрения.
В настоящее время, так как мобильные устройства набирают популярность, сенсорные экраны используются в качестве устройств ввода и вывода.
Опять же, вы можете придумать и другие примеры.
Кроме того, существуют внешние запоминающие устройства, такие как CD, DVD и жесткие диски.
Емкость жесткого диска в настоящее время может легко держать несколько сотен гигабайт данных.
Запоминающие устройства являются энергонезависимыми носителями данных, то есть, они могут хранить данные постоянно, даже когда питание отключено.
В общем и целом, они медленнее и менее эффективны, чем основная память.
В течение последних 10 лет, такой вид носителей, становится очень популярным, как USB или карты памяти.
USB накопители в настоящее время могут легко хранить 10-ки и даже более 100 Гбайт данных.
Одним из последних направлений является развитие облачных систем хранения данных, которые позволяют хранить большое количество данных, которые хранятся в центрах обработки данных, доступных через Интернет.
Давайте продолжим обсуждение основных компонентов компьютерных систем и рассмотрим программное обеспечение компьютера.
Компьютерная техника сама по себе не была бы очень полезна.
Это как после строительства здания для библиотеки. До того, как книги помещаются на книжные полки, здание не будет являться библиотекой.
Нужно предоставить компьютеру четкие инструкции для того, чтобы выполнить что-то полезное.
Этот вид инструкций можно назвать программным обеспечением.
Программное обеспечение представляет собой набор инструкций, которые даются компьютеру для выполнения определенных задач.
В общем и целом, программное обеспечение, используемое в компьютере, может быть классифицировано на две основные категории, а именно, системное программное обеспечение и прикладное программное обеспечение.
Прикладное программное обеспечение представляет собой программы, которые предназначены для выполнения конкретных задач и может легко использоваться пользователями.
В центре внимания этого курса – разработка прикладного программного обеспечения.
Системное программное обеспечение, это программы, которые поддерживают выполнение и разработку других программ.
Некоторые примеры системного программного обеспечения, это операционные системы и компиляторы для языков программирования, таких как Java, Python и C + +.
Другой тип системного программного обеспечения называется утилитами.
Некоторые примеры утилит включают в себя антивирусную программу и драйверы для подключения различных устройств к компьютерам.
Вот схема, которая иллюстрирует взаимодействие между железом и различными типами программного обеспечения.
На схеме видно, что системное программное обеспечение может с одной стороны взаимодействовать с оборудованием и с другой стороны взаимодействует с прикладным программным обеспечением.
Например, прикладному программному обеспечению, возможно, придется выдавать команды оборудованию, подключенному к компьютеру через системное программное обеспечение, например, сказать, когда программа хочет распечатать некоторые результаты на принтере.
Диаграмма также показывает, что существует взаимодействие между пользователями и прикладным программным обеспечением.
Эти пользователи могут быть прикладными программистами, которые разрабатывают программы, или пользователями приложений.
Существует также прямой интерфейс между пользователями и системным программным обеспечением, и таких пользователей обычно называют системными программистами.
Давайте также взглянем на то, что мы подразумеваем под пользовательским интерфейсом.
В общем и целом, пользовательский интерфейс обеспечивает взаимодействие между человеком и компьютером.
Общая цель обеспечения взаимодействия между человеком и компьютером заключается в создании пользовательского интерфейса, который прост в использовании и легко изучается, другими словами, мы хотим удобный интерфейс.
Важной частью ОС является обеспечение пользовательского интерфейса между операционной системой и пользователем.
Например, файловая система является частью операционной системы.
Хороший интерфейс для системы управления файлами позволит пользователям поддерживать и манипулировать своими файлами эффективно и результативно.
В существующих компьютерах есть в основном два вида пользовательских интерфейсов, а именно интерфейс командной строки и графический интерфейс пользователя (или GUI).
С интерфейсом командной строки можно ввести определенные ключевые слова или команды, чтобы инструктировать ОС для выполнения определенных действий.
Примером командной строки является программа cmd, которую вы найдете в системе Microsoft Windows.
Для этого вида интерфейса необходимо помнить набор команд для того, чтобы взаимодействовать с системой.
Например, команда "cd ..", чтобы изменить текущий рабочий каталог на один уровень вверх, и "dir", чтобы вывести список файлов в текущем каталоге.
Из этого простого примера, можно понять, почему такие системы стали настолько непопулярны и редко используются, за исключением системных программистов или системных администраторов.
Я уверен, что все из вас знакомы с каким-нибудь графическим интерфейсом пользователя (GUI). В GUI вы можете найти на экране графические объекты, такие как значки, выпадающие меню и окна.
Пользователь может навести на точку и нажать на нее с помощью указывающего устройства, такого как мышь, чтобы активировать необходимые операции.
Одним из основных преимуществ, для такого рода интерфейса, является то, что вам не придется запоминать различные команды, как в интерфейсе командной строки.
Например, в окне каталога файловой системы, вы можете легко манипулировать файлами с помощью перетаскивания.
Я не думаю, что здесь необходимы дополнительные объяснения, так как вы все должны быть знакомы с такими операциями.
Мы часто используем графический пользовательский интерфейс, разработанный другими.
И в этой книге вы также узнаете, как разрабатывать свой собственный графический интерфейс пользователя с помощью Event Driven программирования.
Давайте теперь обсудим прикладное программное обеспечение.
Компьютеры совершили революцию в нашей жизни, потому что они могут выполнять различные задачи эффективным и надежным способом.
Задачи, которые компьютер может выполнять, включают в себя многие бизнес-операции и повседневные приложения.
И цель состоит в том, чтобы увеличить производительность труда и качество нашей жизни.
Например, компании используют информационные системы учета людских ресурсов, чтобы выплачивать заработную платой, и университеты используют информационные системы учета студентов, чтобы отслеживать прогресс обучения студентов.
В настоящее время, есть программы, с помощью которых вы контролируете приборы дома (их часто называют смарт-устройства) с помощью мобильных устройств, так что, например, еда будет готова для вас, прежде чем вы вернетесь домой.
Некоторое широко используемое программное обеспечение может быть сгруппировано в следующие категории.
Первая категория, это производительное программное обеспечение, например, MS Word для подготовки документов, Excel Access для создания баз данных и PPT для подготовки презентаций.
Легко видеть, что обработка программным обеспечением документа отличается, если сравнить усилия, необходимые для создания отчета с использованием в настоящее время компьютера и пишущей машинки 30 или 40 лет назад.
Я думаю, большинство из вас, вероятно, никогда использовали или даже не видели пишущую машинку раньше.
Другой вид прикладного программного обеспечения, с которым я уверен, многие из вас знакомы, является коммуникационным программным обеспечением, особенно то, которое вы используете для общения через Интернет.
Здесь вы можете использовать интернет-браузеры, такие как Internet Explorer, Safari, Chrome или Firefox для поиска информации в WWW.
Многие из вас общаются с друзьями по электронной почте или через социальные сети.
В прошлом, большинство книг и документов состояли в основном из текста, так как было не легко и часто дорогостояще включать в них изображения, но с достижениями в области мультимедийных средств, таких как Photoshop, можно легко создавать документы с красивой графикой и изображениями или даже видео.
На самом деле, много бумажных носителей были заменены на электронные средства массовой информации, включая газеты и журналы.
В последнее время из-за достижений в области технологий мобильной связи, в том числе мобильных сетей и мобильных устройств, таких как смартфоны и планшеты, очень быстро увеличилось использование и доступность мобильных приложений.
Есть мобильные приложения для игр и для общения с другими людьми, развлекательные приложения для прослушивания музыки или просмотра фильмов, навигационные приложения, такие как Google Maps для путешествий, и многое другое.
Хорошая новость состоит в том, что многие из этих приложений написаны на Java, так что вы можете применить свои навыки программирования на Java после этой книги.
Давайте теперь посмотрим на операционные системы.
ОС, это в основном системное программное обеспечение для контроля и управления компьютерными ресурсами, включая устройства ввода или вывода, такие как жесткие диски, монитор, клавиатура и принтер. Некоторые из них могут совместно использоваться сразу несколькими пользователями.
Некоторые популярные ОС предназначены для компьютеров, например Apple, это Mac OS, другие для мобильных устройств, например IOS для iPhone и IPad.
О проекте
О подписке