Системното програмиране е престижно, но и изискващо

Съвременни информационни технологии са далеч от машинния код. Съвременна система Програмирането не е свързано с подаване на команди към процесора или управление на работата му. Историята на езиците за програмиране е развитието на смисъла и синтаксиса, но концептуалните основи на информатиката през нашия век не се различават от тези в миналото: данни и оператори. Същите конструкции за цикъл, условие и избор.

Системното програмиране е натрупаният опит в една съвременна ретроспекция: хардуерният и софтуерният компонент на информационната система трябва да работят стабилно и непрекъснато, а всеки потребител трябва да бъде третиран по подходящ и индивидуален начин.

Програмиране и системи

Езикът за програмиране е синтаксисът и семантиката, както ги разбира разработчикът. Асемблерът е уникален език за програмиране, Прост конвейер за серийни команди. Синтаксисът му се определя от процесора и логиката дънна платка може да бъде, но е по-лесно да се определи: системното програмиране и програмирането на асемблер са началото на.

Компютърни науки

Системите имат много определения, но в най-елементарния смисъл, който е трудно да се опровергае: системата е данните и тяхната функционалност като цяло. Една система може да се състои от елементи и да бъде част от структура от по-висок порядък.

Системното програмиране не е писане на системи (буквално). През миналия век системните програмисти се фокусираха повече върху процесора, програмирайки на машинни езици. През този век те се фокусират повече върху потребителите на информационни системи и техните приложения.

Програмирането на приложения е свързано с решаването на реални проблеми, които не включват елементи от управлението на софтуера и хардуера. В този контекст системното програмиране е предшественик и спътник на системното администриране.

Системното програмиране се отнася в еднаква степен до всички варианти на програмиране, сред които могат да се разграничат много области: хипертекст, парсинг, разпознаване, миграция на данни, виртуализация, търсене и анализ, ... Изграждането на модели и програмирането е непрекъснат процес на систематизиране на знанията за решавания проблем, при който почти винаги е възможно да се разграничи системен и приложен компонент.

Престиж и отговорност

Характерна особеност на програмирането през миналия век е, че системното програмиране и програмирането на приложения са преди всичко различни езици. Съществува класификация на по-ниско и по-високо ниво. Fortran, Cobol или PL/1 се различават значително от кода операционни системи, компилатори и интерпретатори. Но дори и на езиците от високо ниво беше позволено да се пише машинен код (C/C++, Pascal).

Фактът, че езиците от високо ниво позволяват вмъкване на асемблери, говори, че не всичко е предвидено от разработчика на компилатора (интерпретатора). Фактът, че в съвременните езици е възможно да се създаде и изпълни команда по време на изпълнение, е наследство от миналото на по-високо ниво на.

Престиж и отговорност

Престиж на професията системен администратор или системен програмист се определя от изискването за стабилност на компютъра, операционната система или приложението. Отговорността е "минимална". Днес капацитетът на данните и функционалността на приложните софтуер са толкова обширни, че нивото на отговорност обективно се е повишило до значително по-високо ниво.

Центърът на тежестта се измества към разпределената обработка на информация чрез уеб ресурси. Конвенционално програмиране (C/C++, C#, Pascal), ...) запазва стойността си. Съществуват и местни предизвикателства, които остават. По-голямата част от задачите обаче са "отишли" в интернет и системното програмиране е преминало на следващо ниво: инсталиране на сървъри, конфигуриране на мрежи и комуникационни протоколи, оптимизиране на уеб хостинг, поддръжка на виртуални машини.

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

Функционалността на информационните системи се е увеличила значително, обемът на обработваните данни е нараснал, на един компютър вече могат да работят едновременно десетина виртуални машини. Цената на грешката на системния програмист е животът на компанията, която използва информационната система.

Системни езици

Системните езици за програмиране в съвременния свят са абстрактна концепция. Преди беше просто: асемблер или машинен код. Език от високо ниво: синтактични конструкции в думи от естествения език. Днес езикът на системното програмиране може да се счита за две или три команди за зареждане и не всеки системен администратор ще може да конфигурира правилно инсталирането на сложен софтуер и хардуер.

Езици за програмиране

Пример:. Инсталиране на Дебиан & Proxmox VE - не е само Извършване на контролен списък с конкретни действия. Има реална необходимост да се "подпрограмира" нещо в конкретна ситуация. На първо място това са протоколите за конфигуриране на мрежата, а след това в зависимост от предназначението на всяка виртуална машина, нейната функционалност и правилата за взаимодействие.

Специална категория системни езици са конфигурационните файлове. По същество те са обикновени текстови файлове. По правило е необходимо да се правилно писане Два или три елемента в един дизайн, но може да има няколко от първите и много варианти на вторите.

Един квалифициран системен програмист може да конфигурира класическата триада: Apache, PHP и MySQL за 30 минути. Обикновеният програмист ще търси грешки и няма да може да получи работещ резултат за цял ден. Цената на знанията определя изразходваното време, но много от тях идват с опита. На пръв поглед това не е програмиране, но всеки конфигурационен файл управлява конкретен продукт на системно ниво.

Всъщност системният софтуер вече е специфична област от системните задачи. Начинът на изпълнение на конкретната задача е без значение. Няма значение, че програмата не трябва да бъде написана, но задачата трябва да бъде решена, информационната система трябва да работи стабилно и непрекъснато върху определена основа на системата.

Стил на системния програмист

Да знаеш и да знаеш не е достатъчно - трябва да изясниш нещата. Коментарите в областта на системното програмиране се промениха драстично. В миналото беше нормално да се обясни какво прави дадена команда с една или две думи. Днес една команда може да бъде обяснена в цяла страница текст.

Стил на работа на системния програмист

Разработчикът на съвременна операционна система или на инструмент за управление на приложен софтуер добавя много коментари и насоки. В дадена ситуация това не е достатъчно. В редки случаи системен продукт като Proxmox VE ще се справи с първия опит и няма да застраши работата на мрежата. В повечето случаи ще трябва да потърсите допълнителна информация и да разберете свързаните с програмирането и управлението на системата въпроси: файлова система, комуникационни протоколи, мониторинг, регистриране, политики за сигурност и др.

Квалифицираният системен програмист (администратор) задължително записва действията си, като описва използваните команди и следи всички събития. Идеалният стил на работа за специалиста е, когато колега може да го замени по всяко време.

Програмиране на системата и потребители

Системното програмиране се занимаваше с процесора, а днес - с потребителя. Управлението на потребителите е системно програмиране от висок порядък, значителна отговорност и престиж по отношение на заплащането.

Програмист на системата и потребители

Специалистът, който управлява достъпа до информационните ресурси, е системен програмист, "оборудван" с познания по психология, социология и правни аспекти на конкретната компания. Няма асемблерен код, няма машинен код. Има няколко команди и възможност за писане на специални скриптове за достъп.

Грешка в сценария на потребителя - нарушаване на периметъра на сигурност, проникване от нарушител и срив на системата или кражба на информация.

Работата с процесора е много по-лесна: той просто изпълнява поредица от команди. Трудно е да се работи с човек: той може да променя алгоритъма на поведението си, да действа в няколко посоки и да разпределя действията си във времето.

системни и приложни

Съвременната информационна система рядко се пише от нулата. Системният програмист (администратор) най-често получава инструкция, какво е необходимо поставяне и които следва да да бъде основният елемент.

Работата на системния програмист (администратор) води до създаването на софтуерен и хардуерен дизайн, в който приложенията (приложен софтуер) и потребителите могат да.

Комбинация от система и приложение

Добре построената сграда и добре настроената услуга са идеалното решение за всички нюанси в компаниите от всякакъв тип. Не е важно да не се налага да пишете команди на асемблер, важното е написаните команди да осигуряват стабилна и непрекъсната работа.

Статии по темата