Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Введение
Скриптовый язык программирования
Scripting programming language
TACL (Tandem Advanced Command Language) — это скриптовый язык программирования, который выполняет роль командной оболочки в компьютерах Tandem Computers/NonStop. В 2022 году платформы HPE NonStop поддерживают работу многих крупнейших банков, казино, розничных сетей, телекоммуникационных компаний, систем электронной почты и фондовых бирж по всему миру. TACL по-прежнему используется в качестве скриптового языка на серверах NonStop.
TACL (Tandem Advanced Command Language) is the scripting programming language which acts as the shell in Tandem Computers/NonStop computers. In 2022, HPE NonStop platforms underpin many of the largest banks, casinos, retailers, telephone companies, email systems, and stock exchanges worldwide. TACL continues to be the scripting language used on NonStop Servers.
Философия дизайна
Многие высоконадежные компьютерные системы, созданные после платформы Tandem NonStop, используют пару одновременно работающих, параллельных, но независимых процессов. Схема "отказоустойчивости" гарантирует, что вторичный процесс (или горячая резервная копия) продолжит работу в случае сбоя первичного процесса, тем самым обеспечивая, чтобы любой сбой в первичном процессе не приводил к полному отказу функции, сети или системы, которую он поддерживает. Философия проектирования Tandem NonStop отличается тем, что каждый процессор выполняет свою работу и может содержать спящий "резервный" процесс в другом процессоре. Каждая пара процессоров совместно владеет аппаратными средствами контроллеров и дисковых накопителей. Запись на зеркальную пару дисков выполняется как на основной, так и на резервный диск. Однако диски не являются полностью избыточными, поскольку чтение будет выполняться только с того диска, который может быстрее получить доступ к данным, а не с обоих. Если один из процессоров в паре выходит из строя, другой берет на себя полное владение дисковыми накопителями и задачами, которые выполнял вышедший из строя процессор, обеспечивая непрерывную доступность данных и непрерывную работу системы, включая повторный ввод-вывод дисков. Работающему первичному процессу может быть назначен резервный процесс в другом процессоре, который получает информацию о контрольной точке. Если первичный процесс терпит неудачу, резервный процесс возобновляет транзакцию, используя информацию контрольной точки. Резервный процесс также может создать собственную резервную копию, чтобы избежать потери данных в случае дальнейших сбоев. Название "NonStop" отражает эту отказоустойчивую конструкцию. Системы HPE NonStop могут поддерживать операции с высокой пропускной способностью транзакций в секунду и поэтому используются в критически важных приложениях, таких как банковское дело, торговые платформы для акций и телекоммуникационные системы. На платформе NonStop OS есть как минимум два языка программирования: TAL (Transaction Application Language) как компилируемый язык и TACL как интерпретируемый язык. Программное обеспечение NonStop OS включает компиляторы для других языков (включая Java, C, C++, COBOL, SCOBOL и т.д.), которые могут использоваться для поддержки функций на языках, отличных от TAL/TACL, при необходимости. TACL остается языком сценариев по умолчанию на этих машинах. HPE позже представила интерфейс командной строки на основе ksh, однако он не содержит всех возможностей, предлагаемых TACL, таких как команда netstat. Встроенные функции TACL отражают многопроцессорную природу NSK. Инструкции TACL могут храниться в простом текстовом файле в виде MACROS, ROUTINES или DEFINES, которые интерпретатор TACL может выполнять как сценарии. Такие сценарии часто используются для хранения сложных инструкций по конфигурации, таких как последовательности запуска и конфигурации оборудования. TACL также используется как язык управления заданиями для пакетных заданий. Язык TACL имеет большое количество встроенных утилит, которые позволяют пользователю захватывать и анализировать вывод из различных системных утилит. Это позволяет пользователям создавать программы TACL, которые могут отслеживать события системы с помощью фильтров, контролирующих журналы событий системы и приложений.
Many high uptime computer systems that were produced after the Tandem NonStop platform rely on a pair of concurrently running, parallel but independent processes. A "failover" scheme ensures that the secondary process (or hot backup) continues operating in the event of a failure in the primary process, thereby ensuring that any failure in the primary process does not result in a total failure of the function, network or system it supports. The Tandem NonStop design philosophy differs as each CPU performs its own work and may contain a dormant "backup" process in another CPU. Each pair of CPUs share hardware ownership of controllers and disk drives. Writes to the mirrored disk pair are performed on both the primary and backup drives. However, the drives are not truly redundant as reads will only be performed by the drive that can most quickly access the data, not both. If one CPU in the pair fails, the other will take full ownership of the disk drives and tasks it was undertaking, providing continuous availability to that data and continuous operation of the system, including re driving disk I/Os. A running primary process may be given a backup process in another CPU, which receives checkpoint information. If the primary process fails, the backup process resumes the transaction using the checkpoint information. The backup process may also spawn its own backup to avoid data loss in case there are further failures. The name "NonStop" refers to this fault tolerant design. HPE NonStop systems can support operations involving high transactions per second and are therefore used in critical applications such as banking, stock trading platforms and telecommunications systems. Upon the NonStop OS platform there are at least two programming languages—TAL (Transaction Application Language) as the compiled language, and TACL as the interpreted language. NonStop OS software includes compilers for other languages (including Java, C, C++, COBOL, SCOBOL, etc. ), which may be used to support functions in languages other than TAL/TACL if required. TACL remains as the default scripting language on these machines. HPE later introduced a ksh based shell command interface, however this does not contain every capability offered by TACL such as the netstat command. TACL built ins reflect the multi CPU nature of NSK. TACL instructions can be stored in a simple text file as MACROS, ROUTINES, or DEFINES which the TACL interpreter can execute as scripts. Such scripts are often used to store complex configuration instructions such as start up and hardware configuration sequences. TACL is also used as a job control language for batch jobs. The TACL language has a large number of built in utilities which allow the user to capture and parse output from various system utilities. This allows users to build TACL programs that can monitor system events through the use of filters that monitor the system and application event logs.