|
Программирование >> Структурное программирование
обеспечения, которые могут снизить его стоимость - структурное программирование, нисходящую пошаговую детализацию, функционализацию и объектно-ориентированное программирование. 1.3. Организация компьютера Независимо от различий в способах физической реализации каждый компьютер фактически можно разделить на шесть логических блоков или частей: 1. Входной блок. Это воспринимающая часть компьютера. Она получает информацию (данные и компьютерные программы) от различных устройств ввода и размещает ее в других устройствах для последующей обработки. Большая часть информации поступает сегодня в компьютер через клавиатуру, подобную пишущей машинке, и устройство, называемое мышью . В будущем, возможно, большая часть информации будет вводиться в компьютер с голоса. 2. Выходной блок. Эта часть компьютера выполняет роль перевозчика . Она забирает информацию, которая была обработана компьютером, и размещает ее в различных выходных устройствах, чтобы сделать пригодной для использования вне компьютера. Большая часть выходной информации компьютера отображается сегодня на экране, печатается на бумаге или используется для управления другими устройствами. 3. Блок памяти. Это быстродоступная и относительно малоемкая часть компьютера, выполняющая роль склада . Она хранит информацию, которая была введена через входной блок, и эта информация может стать доступной для обработки, как только это потребуется. Блок памяти хранит также информацию, которая уже обработана, до тех пор пока она не окажется размещенной в других устройствах выходным блоком. Блок памяти часто называют либо памятью, либо первичной памятью. 4.Арифметико-логическое устройство (АЛУ). Это обрабатывающая часть компьютера. Она отвечает за выполнение вычислений, таких, как сложение, вычитание, умножение и деление. Она содержит решающие механизмы, которые позволяют компьютеру, например, сравнивать два элемента из блока памяти, чтобы определить, равны они или нет. 5. Центральное процессорное устройство (ЦПУ). Это административная часть компьютера. Она координирует работу компьютера и осуществляет надзор за работой всех других частей. ЦПУ указывает входному блоку, когда информация должна быть считана в блок памяти, указывает АЛУ, когда информация из памяти должна быть использована в вычислениях, и указывает выходному блоку, когда послать информацию из блока памяти на определенное выходное устройство. 6. Блок вспомогательных запоминающих устройств. Эта часть является складом высокой емкости для долгосрочного хранения информации. Программы или данные, не используемые активно другими блоками, обычно размещаются во вспомогательных запоминающих устройствах (таких, как диски) до тех пор, пока они снова не потребуются, возможно, спустя дни, месяцы или даже годы. Доступ к этой информации гораздо более медленный, чем к информации в первичной памяти. В то же время стоимость единицы памяти во вспомогательных запоминающих устройствах много меньше, чем в первичной памяти. 1.4. Эволюция операционных систем Ранние компьютеры могли выполнять одновременно только одно задание или задачу. Такая форма компьютерной работы часто называется однопользовательской пакетной обработкой. Компьютер выполняет в каждый отрезок времени единственную программу, а обрабатываемые данные находятся в группах или пакетах. В этих ранних системах пользователи обычно представляли свои задачи в вычислительный центр в виде пакетов перфокарт. Пользователи часто были вынуждены ждать часами или даже днями, чтобы получить распечатки своих задач. Системы программного обеспечения, называемые операционными системами, были разработаны для того, чтобы сделать использование компьютеров более удобным. Ранние операционные системы управляли плавным переходом от одной задачи к другой. Это минимизировало время, затрачиваемое операторами компьютеров на переключение между заданиями, и, следовательно, возрастало количество работ, которое компьютер мог обработать. По мере возрастания мощности компьютеров становилось очевидным, что однопользовательский режим пакетной обработки редко позволял эффективно использовать компьютерные ресурсы. Было задумано сделать так, чтобы множество заданий или задач имели возможность совместно использовать ресурсы компьютера для повышения эффективности их использования. Это так называемые мультипрограммные системы. Мультипрограммная система подразумевает одновременное выполнение на компьютере многих задач - компьютер разделяет свои ресурсы между задачами, претендующими на его внимание. В ранних мультипрограммных операционных системах пользователи все еще представляли свои работы в виде пакетов перфокарт и вынуждены были ждать результатов часы или дни. В бО-х годах несколько групп в промышленности и университетах проложили путь операционным системам с разделением времени. Разделение времени - это специальный случай мультипрограммной системы, когда пользователи имеют доступ к компьютеру через терминалы - обычно устройства с клавиатурами и экранами. В типовых компьютерных системах с разделением времени десятки или даже сотни пользователей работают на компьютере одновременно. На самом деле компьютер не работает со всеми пользователями одновременно. В действительности он выполняет лишь маленькую порцию работы для одного пользователя, а затем переходит к обслуживанию следующего пользователя. Компьютер делает это так быстро, что он может обеспечить обслуживание каждого пользователя несколько раз в секунду. Тем самым создается видимость одновременного выполнения программ пользователей. Преимущество разделения времени состоит в том, что пользователь получает почти немедленные ответы на запросы по сравнению с длительными периодами ожидания в предыдущих системах организации вычислений. 1.5. Персональные вычисления, распределенные вычисления и вычисления на платформе клиент/сервер в 1977 году фирма Apple Computer объявила о возможностях персональных вычислений. Первоначально это была мечта любителей. Компьютеры стали экономически достаточно доступными для приобретения их людьми в личных или деловых целях. В 1981 году компания IBM - самый крупный в мире продавец компьютеров, представила персональный компьютер IBM PC. Буквально на следующий день вычисления на персональных компьютерах получили прописку в бизнесе, промышленности и организации управления. Но эти компьютеры были изолированными - люди выполняли свои работы на своих собственных вычислительных машинах, а потом переносили дискеты туда и обратно для обмена информации. Хотя ранние персональные компьютеры еще не были достаточно мощными для режима разделения времени между несколькими пользователями, тем не менее они могли быть связаны вместе в компьютерную сеть, иногда посредством телефонных линий, а иногда в локальные сети (LAN - local area network) внутри организации. Это привело к феномену распределенных вычислений, когда необходимые для данной организации вычисления выполняются не строго по месту установки некоторого центрального компьютера, а распределены путем подключения сети к местам, где выполняется реальная работа. Персональные компьютеры были достаточно мощными, чтобы электронным способом управлять как вычислительными запросами отдельных пользователей, так и основными коммуникационными задачами передачи информации. Сегодняшние наиболее мощные персональные компьютеры имеют такие же мощности как и вычислительные машины, стоившие десятилетие назад миллионы долларов. Наиболее мощные настольные вычислительные машины, называемые рабочими станциями, обеспечивают индивидуальных пользователей немыслимыми возможностями. Информация легко распределяется посредством компьютерных сетей: в них одни компьютеры, называемые файл-серверами, обеспечивают хранение программ и данных, которые могут быть использованы другими компьютерами типа клиент, распределенными по сети - отсюда термин вычисления на платформе клиент/сервер. С и С-Ь-1-стали языками программирования, допускающими написание программ и для операционных систем, и для компьютерных сетей, и для распределенных приложений по технологии клиент/сервер. Сегодняшние популярные операционные системы, такие, как UNIX, OS/2 и Windows NT, обеспечивают все типы возможностей, рассмотренные в данном разделе. 1.6. Машинные языки, языки ассемблера и языки высокого уровня Программисты пишут свои программы на разных языках программирования, некоторые из них непосредственно понятны компьютеру, другие требуют промежуточных шагов трансляции. На сегодня существуют сотни языков программирования. Их можно разделить на три основных типа:
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |