Softwarebegrebet, softwareklassificering. Konceptet med pc-software. Kort beskrivelse af softwaren Den software, der tjener til

Hvad er de vigtigste tendenser i udviklingen af ​​5. generations computere?

Beskriv princippet for drift af laserprintere.

Hvad er et bundkort? Hvilke pc-komponenter er der på den?

Hvilke programmer er inkluderet i BIOS?

Hvad er funktionen af ​​random access memory i en computer?

Hvad er de vigtigste parametre for processoren? Hvad kendetegner clockfrekvensen og i hvilke enheder måles den?

Hvad er meningen med hoved-modulprincippet om at bygge en pc-arkitektur?

Hvilke typer busser findes i en computer, og hvad er de til?

Hvilken elementbase var grundlaget for skabelsen af ​​tredje generations computere?

Hvilke principper for computerkonstruktion udviklede John von Neumann?

Hvad er C. Babbages bidrag til udviklingen af ​​computerteknologi?


KAPITEL 3

SOFTWARE TIL PERSONLIGE COMPUTERE

SØGEORD:program, systemsoftware, applikationssoftware, fil, mappe, filhandlinger, filsystem, Windows XP OS, hovedmenu, standardprogrammer, genvej, skrivebord, vinduer, kontrolpanel, Stifinder, Papirkurv, formatering, søgemaskine , Microsoft Office-pakke , piratkopiering af software, licensaftale.

Den effektive brug af de nyeste informationsteknologier afhænger af det kompetente og korrekte valg af ikke kun en computer med den passende konfiguration, men også programmer, der giver behandling af computeroplysninger.

Valget af passende software afhænger af typen af ​​information, der behandles, formen for dens præsentation, de udførte operationer, formerne for informationsoutput osv. Dette indebærer viden om tilstanden af ​​moderne software (SW).

Program er et sæt operatører, der som helhed bruges til at styre driften af ​​en computer. Ethvert program er placeret i computerens hukommelse og aktiveres, når det hentes fra hukommelsen i form af en række kommandoer.

Under software henviser til et sæt softwareværktøjer til oprettelse og drift af databehandlingssystemer ved hjælp af computerteknologi. Afhængigt af de funktioner, softwaren udfører, kan den opdeles i typer (fig. 3.1).

En vigtig plads i software er optaget af systemsoftware (SPO). Begrebet systemsoftware betyder programmer og softwarepakker, der er fælles for alle brugere og bruges både til at automatisere oprettelsen af ​​nye programmer og til at sikre implementeringen af ​​eksisterende.

Det tilsvarende driftsmiljø kan organiseres i operativsystemet som en separat virtuel maskine. Klassen af ​​systemsoftware inkluderer også emulatorer, der giver dig mulighed for at simulere et andet OS i OS. En række operativsystemer kan implementere programmer, der er oprettet til andre operativsystemer.



Kernen i enhver open source-software er OS, så de vil blive diskuteret mere detaljeret nedenfor.

Programmeringssystemer for det meste designet til at skabe nye programmer. Disse systemer omfatter normalt programmeringssprog, som som regel er beregnet til professionelle programmører. Ethvert programmeringssystem fungerer kun i det tilsvarende OS, som det blev oprettet til, men det kan give dig mulighed for at udvikle programmer til andre OS'er. For nylig er kraftfulde programmeringssystemer dukket op i Java, Delphi, C++, Visual Basic.

Vigtige klasser af systemprogrammer er også hjælpeprogrammer - hjælpeprogrammer (lat. utilitas - fordel).

Hjælpeprogrammer kaldet specielle systemprogrammer, der kan bruges til at servicere både selve OS og programmer relateret til vedligeholdelse af et computersystem. De enten udvider og komplementerer de tilsvarende funktioner i operativsystemet eller løser uafhængige problemer.

Der er følgende typer hjælpeprogrammer:

— styreprogrammer,test og diagnostik, som bruges til at kontrollere den korrekte funktion af computerenheder og til at opdage fejlfunktioner under drift og angive årsagerne til og placeringen af ​​fejlen;

— programmer - drivere, som udvider operativsystemets evne til at administrere input/output-enheder, RAM osv. Ved hjælp af drivere er det muligt at tilslutte nye enheder til computeren eller ikke-standard brug af eksisterende;

— programmer - pakkerier(arkivere), som giver dig mulighed for at skrive information på diske mere tæt, samt kombinere kopier af flere filer til en arkivfil;

— antivirus programmer designet til at forhindre infektion med computervirus og eliminere konsekvenserne af en sådan infektion;

— diskpladsoptimering og kvalitetskontrolprogrammer;

— datagendannelse, formatering, databeskyttelsesprogrammer;

— kommunikationsprogrammer organisering af udveksling af information mellem computere, når de kombineres i computernetværk;

— hukommelsesstyringssoftware, giver mere fleksibel brug af RAM;

— programmer til at brænde CD - ROM, CD - RW, DVD og mange andre.

Nogle af hjælpeprogrammerne er en del af OS, mens andre fungerer selvstændigt.

Filhåndteringssystemer er designet til nem adgang til data gemt i computerens hukommelse i form af filer.

Fil er et navngivet sæt af data organiseret som en samling af poster med samme struktur. For at administrere disse data oprettes filhåndteringssystemer. Som regel har alle moderne operativsystemer filhåndteringssystemer. Der er operativsystemer, der understøtter flere filsystemer. Nogle simple operativsystemer kan fungere uden filsystemer.

Ifølge måderne at navngive filer på, er der "korte" og "lange" navne. Før fremkomsten af ​​Windows 95 var konvention 8.3 den almindelige måde at navngive filer på. Ifølge denne konvention, der blev vedtaget i MS - DOS, bestod filnavnet af to dele: det faktiske navn og udvidelsen. Filnavnet er på 8 tegn, og filtypenavnet er på 3 tegn. Navnet er adskilt fra udvidelsen med en prik. Både navnet og udvidelsen kan kun indeholde alfanumeriske tegn i det latinske alfabet.

Den største ulempe ved "korte" navne er deres lave indhold. Det er langt fra altid muligt at udtrykke karakteristika for en fil med nogle få tegn, så med fremkomsten af ​​Windows 95 blev konceptet med et "langt" navn introduceret. Dette navn kan indeholde op til 256 tegn. Dette er tilstrækkeligt til at skabe meningsfulde filnavne. Mellemrum og flere punktum er tilladt i navnet. Store og små bogstaver skelnes ikke af OS, men blandede store og små bogstaver vises af OS. Navneudvidelsen er alle tegn efter den sidste prik, for eksempel:


I moderne operativsystemer kan enhver filtypenavn indeholde oplysninger om OS. Windows tilbyder værktøjer til registrering af filtypeegenskaber baseret på deres navneudvidelse. Derfor er valget af filtypenavn i mange tilfælde ikke et privat anliggende for brugeren. Anvendelser af disse systemer tilbyder kun at vælge hoveddelen af ​​navnet og angive filtypen, og den tilsvarende navneudvidelse skrives automatisk:

— .xls- MS Excel regneark;

— .doc– tekstfil af MS Word-editor;

— .mdb– MS Access-databasefil;

— .zip - pakket fil;

— .bmp– grafisk fil osv.

Ud over navnet og udvidelsen af ​​filnavnet gemmer operativsystemet for hver fil datoen for dens oprettelse (ændring), størrelse og flere flagværdier, kaldet filattributter.

Egenskaber er yderligere parametre, der definerer filegenskaber. OS tillader dem at blive kontrolleret og ændret. Attributværdier tages i betragtning, når du udfører filhandlinger.

Der er fire hovedegenskaber:

— Kun til læsning (Read only);

- Skjult (Skjult);

- System (System);

- Arkiv (Arkiv).

Attribut" Kun til læsning» begrænser muligheden for at arbejde med filen. Indstilling betyder, at filen ikke er beregnet til at blive ændret.

Attribut" Skjult” angiver for OS, at denne fil ikke skal vises på skærmen under filhandlinger. Dette er en beskyttelsesforanstaltning mod forsætlig eller utilsigtet filkorruption.

Attribut" Systemisk» markerer filer, der har vigtige funktioner i driften af ​​selve OS. Et karakteristisk træk ved denne attribut er, at den ikke kan ændres ved hjælp af OS-værktøjer. Typisk har de fleste filer, der har System-attributsættet, også Hidden-attributsættet.

Attribut" Arkiver' blev brugt tidligere til at køre backup-programmer. Ethvert program, der ændrer filen, skulle automatisk indstille denne egenskab. Moderne sikkerhedskopieringsprogrammer bruger andre midler til at afgøre, om en fil er blevet ændret, og denne egenskab tages ikke i betragtning. At ændre det manuelt ved hjælp af OS-værktøjer er ikke af stor praktisk betydning.

Folder(mappe) er et særligt sted på disken, hvor alle oplysninger om filer (navn, størrelse, egenskaber, oprettelsesdato og -tidspunkt osv.) er registreret.

Før fremkomsten af ​​Windows 95 blev udtrykket "mappe" brugt til at beskrive den hierarkiske filstruktur. Med fremkomsten af ​​Windows-familien af ​​operativsystemer blev et nyt udtryk introduceret - "mappe". Disse udtryk er ækvivalente: hver filmappe på disken svarer til system OS-mappen af ​​samme navn.

Mapper er vigtige elementer i en hierarkisk struktur, som er nødvendige for at give nem adgang til filer, hvis der er for mange filer på mediet. Filer kombineres til mapper i overensstemmelse med enhver fælles funktion, der er indstillet af deres skaber (efter type, ejerskab, formål, oprettelsestidspunkt osv.). Mapper på lavere niveauer er indlejret i mapper på højere niveauer og er indlejret for dem. Det øverste niveau af indlejring af den hierarkiske struktur er rodmappen på disken.

Reglerne for navngivning af en mappe adskiller sig ikke fra reglerne for navngivning af en fil, selvom det ikke er sædvanligt at give mappenavne bag kulisserne.

I hierarkiske datastrukturer er adressen på et objekt givet af en rute (adgangssti), der fører fra toppen af ​​strukturen til objektet. Når du skriver en sti til en fil, der går gennem et system af indlejrede mapper, er alle mellemliggende mapper adskilt fra hinanden af ​​et bestemt tegn. Mange operativsystemer bruger "\" (omvendt skråstreg) som sådan et tegn, for eksempel:


Et filhåndteringssystem er skabt til at fungere i et specifikt OS og med et specifikt filsystem. Det er nødvendigt klart at skelne mellem begreberne "filsystem" og "filhåndteringssystem". Det betyder, at for at kunne arbejde med filer, der er organiseret efter et bestemt filsystem, skal der udvikles et passende filhåndteringssystem for hvert OS.

Gennem brugen af ​​et filhåndteringssystem får brugerne følgende muligheder: oprettelse, sletning, omdøbning af filer, mapper og navngivning af dem; kopiering og flytning af filer; navigation gennem filstrukturen for at få adgang til en given fil, mappe; håndtering af filattributter; beskyttelse af filer mod uautoriseret adgang mv.

For at starte selve OS og organisere arbejdet i et bestemt filhåndteringssystem, blev der vedtaget særlige aftaler om strukturen af ​​harddisken Princippet om at organisere et filsystem afhænger af OS. Harddisken er repræsenteret som et sæt overflader. Disketter har kun to af dem (øvre og nedre). Harddiske er faktisk "hylder" bestående af flere plader, så de har flere overflader. Hver skiveoverflade er opdelt i ringspor og hvert spor i sektorer (fig. 3.2). Sektorstørrelser er faste og lig med 512 bytes.

For at finde en bestemt fil på en disk skal du kende dens placering (adresse). Den enkleste måde ville være at skrive filadressen som et overfladenummer, et spornummer og et sektornummer. Hver diskoverflade bruger dog sit eget læse/skrivehoved. Disse hoveder bevæger sig ikke separat, men samtidigt. Hvis for eksempel det femte hoved bringes til det tredivte spor, så bringes alle andre hoveder til deres tredivte spor. Derfor anvendes i stedet for begrebet et spor begrebet en cylinder.

Cylinder- dette er et sæt af alle spor, der har de samme numre, det vil sige lige langt fra rotationsaksen. Derfor er den reelle placering af filen på harddisken bestemt af cylindernummeret, overfladenummeret og sektornummeret.

Sektor- dette er den mindste enhed for datalagring, men ikke alle filsystemer bruger den til adressering på grund af dens lille størrelse. OS'er som MS-DOS, Windows, OS/2 bruger en større lagerenhed kaldet en klynge til adressering. En klynge er en gruppe af nabosektorer. Klyngestørrelsen afhænger af størrelsen på harddisken. Jo større disken er, jo større er klyngestørrelsen tildelt. Typiske værdier for størrelsen af ​​en klynge: 8, 16, 32 eller 64 sektorer.

Oplysninger om diskklyngen, hvori en bestemt fil starter, gemmes i systemområdet på disken i specielle filallokeringstabeller (FAT-tabeller). Da overtrædelsen af ​​FAT-tabellen fører til manglende evne til at bruge de data, der er optaget på disken, stilles der særlige krav til den med hensyn til pålidelighed. FAT - tabellen oprettes i to kopier, hvis identitet regelmæssigt overvåges af OS-værktøjer.

Tabel 3.1. viser de typer filsystemer og versioner af Windows-operativsystemer, der bruger dem.

Filsystemerne, der bruges af Windows er:

— FAT16- det ældste filsystem, der kan bruges af næsten alle På grund af eksisterende begrænsninger kan det ikke bruge diske, der er større end 4096 MB. FAT16-systemet anses for at være forældet, selvom det nogle gange bruges med succes den dag i dag. Den maksimalt mulige filstørrelse er 4 GB.

— FAT32- et nyere filsystem, som alle nye operativsystemer udgivet efter 1998 kan arbejde med. FAT32-drev kan være op til 127 GB i størrelse. Den maksimalt mulige filstørrelse er 4 GB.

— NTFS- et gammelt, men omhyggeligt designet filsystem, der adskiller sig fra FAT16 og FAT32 i sin pålidelighed og evne til at yde beskyttelse mod uautoriseret adgang. Ikke alle operativsystemer "forstår" dette filsystem.

— CDFS er det filsystem, der bruges til cd-rom-diske. Det gælder ikke for harddiske. Anvendes af alle moderne operativsystemer.

Grundlæggende softwarekoncepter

COMPUTER SOFTWARE

Kontrolspørgsmål

1. Hvad er computerarkitektur?

2. Hvad er principperne for at bygge en computer, formuleret af von Neumann.

3. Hvilke enheder er inkluderet i von Neumann-computeren?

4. Hvilke elektroniske elementer er placeret på bundkortet?

5. Hvad er mikroprocessorens hovedfunktioner?

6. Hvad er clockfrekvensen?

7. Hvad er kapaciteten af ​​en mikroprocessor?

8. Hvilke modeller af mikroprocessorer kender du?

9. Hvad er formålet med hukommelsesenheder?

10. Hvad er RAM og ROM?

11. Hvad forkortes RAM?

12. Hvad er den mindste del af information i hukommelsesenheder til pc?

13. Hvad er formålet med systembussen?

14. Navngiv hovedgrupperne af taster på et standardtastatur.

15. Hvilken port er musen tilsluttet?

16. Hvad er formålet med monitoren?

17. Beskriv hvordan matrix-, inkjet- og laserprintere fungerer?

18. Hvad er spor og sektorer på en magnetisk disk?

19. Hvorfor formatere diske?

20. Hvad er en laserskive?

21. Hvad er en chauffør?

22. Hvilke typer porte er der?

En computer er en programstyret automatisk enhed til at arbejde med information. Uden programmer er enhver computer "dødt jern" En computers muligheder som det tekniske grundlag for et databehandlingssystem er forbundet med den anvendte software (programmer).

Program (program, rutine) er en ordnet sekvens af computerkommandoer (instruktioner) til at løse et problem.

Software- et sæt databehandlingsprogrammer.

opgave (problem, opgave)- et problem, der skal løses.

Ansøgning- softwareimplementering på en computer for at løse problemet.

Software Softwaren kan opdeles i tre grupper:

– systemprogrammer;

– applikationsprogrammer;

- programmeringssystemer.

Systemisk kaldet programmer, der organiserer beregningsprocessen og administrerer computerressourcer.

De er designet til at styre driften af ​​enheder, der udgør en computer, organisere kommunikation med brugeren (brugergrænseflade) og arbejde med filsystemet.

Systemprogrammer består af:

– operativsystemer (OS),

- operationsskaller,

– særlige programmer.

Operativsystem (OS)- et sæt programmer, der understøtter driften af ​​computerhardware, netværk og alle programmer.

Når du tænder for strømmen til computeren, indlæses operativsystemet først og fremmest i RAM'en, hvorunder sundhedstjekket og al efterfølgende drift af computeren finder sted. Arbejdet udføres også under OS kontrol.



OS

Operativsystemer er klassificeret efter:

- antal samtidige brugere singleplayer og multiplayer OS;

– antallet af opgaver, der udføres samtidigt under OS kontrol, pr enkelt-opgave og multitasking;

- antallet af processorer i brug enprocessor og multiprocessor;

- bit dybde processor til 8-bit, 16-bit, 32-bit, 64-bit;

- brugergrænsefladetype kommando(tekst) og objektorienteret(grafisk);

– måden hvorpå delte hardware- og softwareressourcer bruges på netværk og lokal.

Den vigtigste forskel flerbruger systemer fra enkeltbruger er tilgængeligheden af ​​midler til at beskytte hver brugers oplysninger mod uautoriseret adgang fra andre brugere.

V multitasking hver opgave (program, applikation) tildeles en del af processortiden på skift. Da omskiftningsprocessen er meget hurtig, og andelen af ​​processortid, der er allokeret til opgaver, er ret lille, får brugeren det indtryk, at flere opgaver udføres samtidigt.

Operativsystem MS-DOS er et kommando (tekst) OS til 16-bit computere baseret på 8086...80486 mikroprocessorer. Alle MS-DOS-programmer er gemt på magnetiske diske, hvorfor det kaldes disk operativsystem(Disk operativsystem). Bogstaverne MS er en forkortelse for Microsoft. Adskillige ændringer af dette OS blev frigivet, så vi kan tale om det hele familie af operativsystemer MS DOS.

Operativsystemer i Windows-familien

Ved oprettelse af operativsystemet til Windows-familien brugte Microsoft objektorienteret tilgang.

På brugerniveau kommer en objektorienteret tilgang til udtryk i, at grænsefladen er et skin af den virkelige verden, og arbejdet med en computer reduceres til handlinger med almindelige objekter. Så mapper kan åbnes, lukkes, flyttes, lægges væk i en mappe. Dokumenter kan ses, rettes, flyttes fra et sted til et andet, destrueres eller smides i skraldespanden.

Principperne for Windows OS er:

– WYSIWYG(Hvad du ser Er What You Get - what you see is what you get), på grund af hvilket det samme billede dannes på printeren som på displayet. Når du arbejder i DOS, kan udseendet af tekst på monitorskærmen og udskrevet på printeren vise sig at være anderledes. Det afhænger af den valgte skrifttype på printeren.

- Tilslut og brug(plug and play, mere præcist, plug and play) giver dig mulighed for at tilslutte nye enheder til din computer, såsom en printer eller en laserafspiller, uden manuel konfiguration. Det engelske udtryk Plug and Play på russisk udtales plug and play. Et OS, der understøtter dette princip, vælger automatisk den driver, der er nødvendig for driften af ​​en ny enhed, der er tilsluttet computeren.

- teknologi Træk og slip(Træk og slip). Takket være Drag and Drop-teknologien er det nemt at ændre placeringen af ​​ethvert vindue og dets størrelse.

I Windows kan du sammensætte dokumenter fra dele, der er forberedt i forskellige applikationer. Teknologi bruges til at linke og integrere dokumenter OLE(Object Linking and Embedding), hvilket betyder "sammenkædning og indlejring af objekter."

Når du arbejder i Windows-operativsystemet, kaldes programmer normalt applikationer.

Fordelen ved operativsystemer i Windows-familien er samlet brugergrænseflade(shell), takket være hvilken de samme principper for styring af deres arbejde bevares i forskellige programmer. Dette giver mulighed for at udføre flere opgaver på samme tid.

I dette tilfælde er brugergrænsefladen for hvert program placeret i et separat rektangulært område, som kaldes vindue.

Driftsskaller–– grafiske tilføjelser designet til at lette arbejdet med operativsystemet. De mest populære i Rusland er Norton Commander, DOS Navigator, Windows Commander osv.

Særlige programmer –– udføre nogle yderligere systemiske tjenester. Disse programmer er opdelt i hjælpeprogrammer og drivere.

Hjælpeprogrammer- designet til at udføre hyppigt gentagne operationer, såsom formatering af magnetiske diske, defragmentering af diske, arkivering af filer, gendannelse af utilsigtet slettede filer, søgning efter og fjernelse af virus osv.

Chauffører- systemprogrammer, der sikrer driften af ​​printere, diskdrev, skærme, tastaturer osv. Ordet "driver" kommer af det engelske ord driver - driver, driver.

Applikationssoftwarepakker (APP'er)

En applikationsprogrampakke er et kompleks af indbyrdes forbundne programmer til løsning af problemer i en bestemt klasse af et specifikt fagområde.

Ansøgningsprogrammer, sætte brugeren i stand til direkte at løse deres informationsopgaver.

Applikationssoftwaren er til gengæld opdelt i to dele:

– applikationer til generelle formål ,

- fagligt orienterede uddannelser.

TIL applikationer til generelle formål inkludere programmer, som de fleste brugere har brug for, uanset deres professionelle interesser. De omfatter:

– tekstbehandlingssystemer (tekstbehandlere);

– computergrafiksystemer (grafiske redaktører);

– tabelberegningssystemer - regneark (regnearkbehandlere);

– brugerorienterede databasestyringssystemer;

- præsentationsudviklingsværktøjer;

- programmer, der giver arbejde med e-mail og arbejde med internettet.

Karriereorienterede programmer sammensætte specialiserede programmer til specialister med en snæver vifte af opgaver.

Programmeringssystemer - værktøj til professionelle programmører.

Hvert sådant system er fokuseret på et specifikt programmeringssprog: Pascal, BASIC, Fortran, C, Assembler osv. Programmeringssystemer giver dig mulighed for at oprette programtekster, fejlsøge og udføre programmer. Alle de ovennævnte typer software er skabt af programmører, der bruger specielt oprettede programmeringssystemer.

1.6.1. Grundlæggende begreber i informationsprocessoftware

Basale koncepter

En computers muligheder som teknisk grundlag for informationsprocesser og databehandlingsteknologier er forbundet med den anvendte software (programmer).

Program - en ordnet sekvens af computerkommandoer (instruktioner) til at løse et problem.

Software (software) - et sæt databehandlingsprogrammer og dokumenter, der er nødvendige for deres drift.

Ved implementering af informationsprocesser ved hjælp af computere er begreberne "opgave" og « Bilag".

Opgave (problem, opgave) - et problem, der skal løses.

Applikation (applikation) - en løsning på et problem implementeret ved hjælp af informationsteknologi.

En opgave betyder således et problem, der skal implementeres ved hjælp af informationsteknologiske værktøjer, og en applikation betyder en implementeret løsning til en opgave, selvom disse termer i nogle tilfælde kan betragtes som synonyme.

Fra synspunktet om udviklingens specifikationer og typen af ​​software, vil vi skelne to klasser af problemer- teknologisk og funktionel.

Teknologiske udfordringer sættes og løses under den teknologiske proces med informationsbehandling på en computer. Teknologiske udfordringer er grundlaget for udviklingen servicesoftwareværktøjer som hjælpeprogrammer, serviceprogrammer, procedurebiblioteker og osv. , bruges til at sikre computerens sundhed, udvikling af andre programmer eller behandling af datafunktionelle opgaver.

Funktionelle opgaver dukke op og kræve en løsning i implementeringen af ​​ledelsesfunktioner inden for fagområdernes informationssystemer. For eksempel styring af en kommerciel virksomheds aktiviteter, planlægning af frigivelse af produkter, styring af transport af varer, informationssøgning i en database osv. Funktionelle opgaver danner tilsammen et fagområde og bestemmer fuldstændigt dets detaljer.

Emne (anvendt) område (applikationsdomæne) - et sæt af indbyrdes forbundne funktioner, ledelsesopgaver, ved hjælp af hvilke opfyldelsen af ​​de opstillede mål opnås.

For at løse problemer kan der anvendes algoritmer, typiske modeller og metoder til løsning af problemer præsenteret i færdige softwareprodukter. I dette tilfælde er softwareproduktet tilpasset betingelserne for en bestemt applikation. I alle andre tilfælde udvikles originale algoritmer og programmer til implementering af et sæt opgaver.

Programmering (programmering)- teoretiske og praktiske aktiviteter i forbindelse med oprettelse af programmer.

Programmering er et samlet begreb og kan betragtes både som en "videnskab" og som en "kunst", en videnskabelig og praktisk tilgang til udvikling af programmer er baseret på dette.

Uddannelsen er resultatet af et intellektuelt arbejde, som er præget af kreativitet. I ethvert program er der individualiteten hos dets udvikler, programmet afspejler en vis grad af programmørens færdigheder. Samtidig involverer programmering også rutinearbejde, som kan og bør have strenge udførelsesregler og overholde standarder.

Programmering er baseret på et kompleks af videnskabelige discipliner rettet mod forskning, udvikling og anvendelse af specialiserede værktøjer til at skabe programmer. Ved udvikling af programmer, ressourcekrævende og videnskabsintensive teknologier, anvendes højt kvalificeret intellektuel arbejdskraft, hvilket også bestemmer det specifikke ved dette aktivitetsområde.

Programmering er en udviklet gren af ​​økonomisk aktivitet forbundet med betydelige omkostninger til materiale, arbejdskraft og finansielle ressourcer. Den samlede omsætning inden for softwareudvikling når op på flere hundrede milliarder dollars om året.

I forbindelse med det stigende behov for en række forskellige databehandlingsprogrammer er spørgsmålet om anvendelse af effektive programmeringsteknologier og deres overførsel til et industrielt grundlag meget relevant. Det betyder:

  • standardisering, replikerbarhed og reproduktion af forskellige udviklere af programmeringsmetoder,
  • introduktion af progressive softwareudviklingsværktøjer,
  • brug af særlige metoder og teknikker til at organisere og udføre arbejde med udvikling af programmer (projektledelsesmetodologi).

Konceptet med et softwareprodukt

Alle programmer i henhold til typen af ​​deres brugere kan opdeles i to klasser (fig. 1) - hjælpeprogrammer og softwareprodukter (produkter).

Dette træk ved klassifikationen er afgørende. Det giver dig mulighed for at ændre programmets status, i stedet for "hjælpe" databehandlingsværktøjer bliver det til et "hovedværktøj". Således, afhængigt af typen af ​​"forbruger", programmer af "intern" anvendelse og softwareprodukter (produkter) til "udenfor" distribution.

Hjælpeprogrammer("programmer til dig selv") designet til at imødekomme deres udvikleres behov. Oftest spiller hjælpeprogrammer rollen som en tjeneste inden for databehandlingsteknologi, eller er et program til at løse et funktionelt problem, der ikke er beregnet til bred distribution.

Software produkter (Produkter) designet til at imødekomme brugernes behov, bredt distribueret og solgt, såvel som andre produkter, der er genstand for et salg eller bytte .

Softwareproduktet skal være korrekt forberedt til drift, have den nødvendige tekniske dokumentation, yde en service og garantere pålidelig drift af programmet, have et producentens varemærke, og det er også ønskeligt at have en tilstandsklassificeringskode. Kun under sådanne forhold kan det skabte softwarekompleks kaldes et softwareprodukt.

Vejen til "programmer for dig selv" til softwareprodukter er ret lang, den er forbundet med ændringer i det tekniske og softwaremiljø til udvikling og drift af programmer, med fremkomsten og udviklingen af ​​en uafhængig industri af folk - informationsvirksomhed, som er karakteriseret ved arbejdsdelingen af ​​softwareudviklingsfirmaer, deres videre specialisering, dannelsen markedet for software og informationstjenester. Dette er en global proces.

Softwareprodukter kan oprettes som:

  • individuel udvikling i henhold til ordren;
  • udvikling til massedistribution blandt brugere.

individuel udvikling udviklerfirmaet opretter et originalt softwareprodukt, der tager højde for detaljerne i databehandling for en bestemt kunde.

udvikling til massedistribution Udviklervirksomheden skal på den ene side sikre universaliteten af ​​de udførte databehandlingsfunktioner, på den anden side fleksibiliteten og tilpasningen af ​​softwareproduktet til betingelserne for en bestemt applikation. Et karakteristisk træk ved softwareprodukter bør være deres "systematiske" - den funktionelle fuldstændighed og fuldstændighed af de implementerede behandlingsfunktioner, som bruges i kombination. Udvikling og vedligeholdelse af programmer for masseanvendelse er som regel forbundet med store lønomkostninger. - rettelse af opdagede fejl, oprettelse af nye versioner af programmer mv.

Udviklingen af ​​et softwareprodukt udføres på baggrund af industriel teknologi udførelse af designarbejde ved hjælp af moderne programmeringsværktøjer. Specificiteten ligger i unikhed processen med at udvikle algoritmer og programmer, afhængigt af arten af ​​informationsbehandling og de anvendte værktøjer. Der bruges betydelige ressourcer på at skabe softwareprodukter - arbejdskraft, materiale, økonomisk; højt kvalificerede udviklere er påkrævet.

Softwareprodukter kræver eskortere, som som regel udføres af specialiserede virksomheder, der distribuerer programmer (distributører, forhandlere), sjældnere af softwareudviklere.

Vedligeholdelse af et softwareprodukt - understøttelse af et softwareprodukts funktionalitet, overgang til dets nye versioner, foretage ændringer, korrigere opdagede fejl mv.

Softwareprodukter har, i modsætning til traditionelle produkter, ikke et strengt reguleret sæt kvalitetsegenskaber, der indstilles ved oprettelse af programmer, eller disse karakteristika kan ikke specificeres eller evalueres nøjagtigt på forhånd, da de samme behandlingsfunktioner, som leveres af et softwareværktøj, har en anden dybde. af studiet. Selv tiden og omkostningerne ved at udvikle softwareprodukter kan ikke bestemmes på forhånd med en stor grad af nøjagtighed.

De vigtigste karakteristika ved programmerne er:

  • algoritmisk kompleksitet (logik ir),
  • sammensætning og dybde af udarbejdelse af de implementerede behandlingsfunktioner,
  • fuldstændighed og konsistens af behandlingsfunktioner,
  • tekniske specifikationer:
  • størrelsen af ​​programfiler,
  • krav til operativsystemet og behandlingshardware fra siden af ​​softwaren: mængden af ​​diskhukommelse, størrelsen af ​​RAM til at køre programmer, typen af ​​processor, versionen af ​​operativsystemet, tilgængeligheden af ​​et computernetværk osv. .

1.6.2. Software klassificering

Klassificering efter anvendelsesområde

Softwareprodukter kan klassificeres efter forskellige kriterier. Overvej en klassifikation, hvor det grundlæggende træk er anvendelsesomfanget (området). software produkter:

  • hardware til computere og computernetværk;
  • funktionelle opgaver for informationssystemer og teknologier inden for fagområder;
  • softwareudviklingsteknologi.

For at understøtte informationsteknologi på disse områder udpeger vi henholdsvis tre klasser af softwareprodukter præsenteret i fig. 2:

  • applikations software;
  • værktøjssæt til programmeringsteknologi.

Systemsoftware

Softwareprodukter af denne klasse er af generel karakter, uanset emneområdets specifikationer. De er underlagt høje krav til pålidelighed og fremstillingsevne af arbejdet, bekvemmelighed og effektivitet ved brug.

Ris. 2. Softwareklassificering

Systemsoftware sendt til:

  • at skabe et driftsmiljø for andre programmers funktion,
  • at sikre pålidelig og effektiv drift af selve computeren og computernetværket,
  • til diagnostik og forebyggelse af computerudstyr og computernetværk,
  • at udføre hjælpeteknologiske processer (kopiering, arkivering, gendannelse af programmer og databaser osv.).

Denne klasse af softwareprodukter er tæt forbundet med typen af ​​computer og er en integreret del af den. Softwareprodukter er hovedsageligt rettet mod kvalificerede brugere - fagfolk inden for computerområdet: systemprogrammør, netværksadministrator, applikationsprogrammør, operatør. Kendskab til den grundlæggende teknologi til at arbejde med denne klasse af softwareprodukter er dog også påkrævet af slutbrugerne af en personlig computer, som uafhængigt ikke kun arbejder med deres programmer, men også udfører den nødvendige vedligeholdelse af computeren, programmer og data.

Systemsoftwaren inkluderer operativ system, som normalt leveres med computeren, og service software som kan købes separat.

Operativ system er beregnet til planlægning og styring af computerressourcer, til styring af udførelsen af ​​applikationssoftware. I denne klasse af softwareprodukter er de mest udbredte operativsystemer Windows (Microsoft), OS / 2 (IBM), Unix (gratis).

Servicesoftware makeup-programmer og softwaresystemer, der giver:

  • organisering af computerprocessen for at udvide mulighederne og forbedre effektiviteten af ​​operativsystemet;
  • pålidelig drift af computeren;
  • mere bekvemt brugermiljø.

Hjælpeprogrammer til udvidelse af operativsystemets muligheder omtales ofte som hjælpeprogrammer. Hjælpeprogrammer - programmer, der bruges til at udføre hjælpeoperationer til databehandling eller vedligeholdelse af computere (diagnostik, test af hardware og software, optimering af brugen eller kvalitetskontrol af diskplads, gendannelse af information ødelagt på en magnetisk disk osv.).

Værktøjssæt til programmeringsteknologi

Softwareprodukter af denne klasse leverer softwareudviklingsprocessen og inkluderer specialiserede udviklersoftwareværktøjer. De understøtter alle teknologiske stadier af processen med at designe, programmere (kodning), fejlfinde og teste de programmer, der oprettes. Brugerne af programmeringsteknologiske værktøjer er system- og applikationsprogrammører. I deres arbejde bliver de styret af computerteknologiens software, i hvilket miljø driften af ​​de programmer, de opretter, forventes.

Dette softwareområde gennemgår i øjeblikket et stadie af hurtig udvikling, som skyldes overgangen til industriel teknologi produktion af programmer, ønsket om at reducere tids-, arbejds- og materialeomkostninger til produktion og drift af programmer, for at sikre et garanteret niveau af deres kvalitet.

Programmeringsteknologiværktøjssættet kan opdeles i to underklasser med fokus på:

  • oprettelse af individuelle applikationer eller deres komplekser;
  • automatisering af udvikling og implementering af informationssystemer.

Inden for disse områder er følgende grupper af softwareprodukter blevet dannet:

  • værktøjer til at skabe applikationer, herunder:
  • lokale midler til at udføre individuelt arbejde med at skabe programmer;
  • integrerede værktøjsmiljøer for programudviklere til at udføre et sæt indbyrdes forbundne arbejde med at skabe programmer;
  • CASE - teknologi ( Computer-Aided System Engineering), der repræsenterer metoder til analyse, design og skabelse af softwaresystemer ved hjælp af computerteknologi.

On-premises værktøjer og integrerede arbejdsmiljøer Programudviklere er de mest repræsentative og baseret på en række forskellige programmeringssprog. Dette skyldes historien om deres oprettelse og udvikling, relativ overkommelighed for en bred vifte af udviklere, acceptable krav til det tekniske kompleks i udviklingsprocessen.

Programmeringssprog, hvis vi tager syntaksen for dannelsen af ​​dens konstruktioner som et tegn på klassificering, kan den betinget opdeles i klasser:

  • maskinsprog (computersprog) - programmeringssprog opfattet af computerens hardware (maskinkoder);
  • maskinorienterede sprog (computerorienteret sprog) - programmeringssprog, der afspejler strukturen af ​​en bestemt type computer (assembler);
  • algoritmiske sprog (algoritmisk sprog) - programmeringssprog uafhængigt af computerarkitektur for at afspejle strukturen af ​​algoritmen (PASCAL, FORTRAN, BASIC osv.);
  • problemorienterede sprog (universelt programmeringssprog) - programmeringssprog designet til at løse problemer i en bestemt klasse (LISP, RPG, SIMULA osv.);
  • integrerede programmeringssystemer.

En anden klassificering af programmeringssprog er deres opdeling i sprog med fokus på implementeringen af ​​det grundlæggende. struktureret programmering, og objektorienterede sprog, såsom Visual Basic, Visual C ++, der understøtter begrebet objekter, deres egenskaber og behandlingsmetoder.

Yderligere udvikling af programmeringssystemer, der kombinerer et sæt værktøjer til kompleks anvendelse på alle teknologiske stadier af programoprettelse, er integrerede softwaremiljøer udviklere . Hovedformålet med denne type værktøjssæt er at øge programmørernes produktivitet, automatisere oprettelsen af ​​programkoder, der giver en grafisk brugergrænseflade, og udvikle applikationer til klient-server-arkitekturen.

CASE teknologi er en softwarepakke, der automatiserer hele den teknologiske proces med analyse, design, udvikling og vedligeholdelse af komplekse softwaresystemer. Den største fordel ved CASE-teknologi er støtten til kollektivt arbejde på projektet på grund af muligheden for at arbejde i det lokale netværk af udviklere, eksport/import af eventuelle fragmenter af projektet, organisatorisk projektledelse.

CASE-teknologier er opdelt i to grupper:

  • implementeringer indbygget i systemet - alle design- og implementeringsbeslutninger er knyttet til det valgte databasestyringssystem (DBMS);
  • uafhængigt af implementeringssystemet - alle designløsninger er fokuseret på ensretning af de indledende faser af livscyklussen og midlerne til at dokumentere dem, giver større fleksibilitet i valget af implementeringsmidler.

Nogle CASE-teknologier er kun rettet mod systemdesignere og giver specielle grafiske værktøjer til visning af forskellige typer modeller, for eksempel dataflowdiagrammer (DFD), entity-relationship diagrams (ERD) osv.

En anden klasse af CASE-teknologier understøtter kun softwareudviklings livscyklusstadier, herunder:

  • automatisk generering af programkoder baseret på deres specifikationer;
  • verifikation af rigtigheden af ​​beskrivelsen af ​​datamodeller og datastrømsskemaer;
  • dokumentere programmer i overensstemmelse med accepterede standarder og den aktuelle tilstand af projektet;
  • test- og fejlfindingsprogrammer.

Inden for rammerne af CASE-teknologier støttes projektet i sin helhed. Projektmaterialer udarbejdet i CASE-teknologi tjener som en opgave for programmører, og selve programmeringen er temmelig reduceret til kodning - oversættelse af datastrukturer og metoder til deres behandling til et bestemt sprog, hvis automatisk kodegenerering ikke er tilvejebragt.

De fleste CASE-teknologier bruger også "prototyping"-metoden til hurtigt at skabe programmer i de tidlige udviklingsstadier. Kodegenerering af programmer udføres automatisk.

Applikations software

Softwareprodukter af denne klasse tjener som softwareværktøjer til løsning af funktionelle problemer og er den mest talrige klasse af softwareprodukter. Denne klasse inkluderer softwareprodukter, der behandler information om funktionelle opgaver inden for forskellige fagområder.

Installation af softwareprodukter på en computer udføres af kvalificerede brugere eller specialister, og deres direkte drift udføres som regel af slutbrugere - forbrugere af information, i mange tilfælde, hvis aktiviteter er meget langt fra computerområdet. Denne klasse af softwareprodukter kan være meget specifikke for individuelle computere.

Denne klasse af software er den mest repræsentative, hvilket skyldes den udbredte brug af computerteknologi på alle områder af menneskelig aktivitet, skabelsen af ​​automatiserede informationssystemer inden for forskellige fagområder.

En omtrentlig klassificering af applikationssoftware er vist i figur 3.

Ris. 3. Klassificering af applikationssoftware

Domænespecifik software udgør den mest repræsentative klasse af softwareprodukter, inden for hvilken klassificering udføres efter forskellige kriterier:

  • typer af fagområder,
  • informationssystemer
  • funktioner og opgavekomplekser mv.

For nogle fagområder er det muligt at indtaste datastrukturen og algoritmerne til deres behandling. Dette har ført til skabelsen af ​​et marked for softwareprodukter designet til:

  • automatiseret regnskab;
  • finansielle aktiviteter;
  • personaleledelse (personaleregistre);
  • lagerstyring;
  • Produktionsstyring;
  • bankinformationssystemer mv.

Det vigtigste for denne klasse af softwareprodukter er skabelsen venlig grænseflade for slutbrugere.

De vigtigste tendenser i udviklingen af ​​problemorienterede softwareværktøjer:

  • oprettelse af softwarekomplekser i form arbejdsstationer(AWP) af ledelsespersonale;
  • skabelse af integrerede domænestyringssystemer baseret på computernetværk, der kombinerer arbejdsstationer i en enkelt softwarepakke med en "klient-server"-arkitektur;
  • organisering af informationssystemdata i form af en distribueret database i et computernetværk;
  • opsætning af behandlingsfunktioner af slutbrugere (uden deltagelse af programmører);
  • beskyttelse af programmer og data mod uautoriseret adgang.

For denne klasse af programmer, høj krav til databehandlingens effektivitet(for eksempel bør gennemløbet for banksystemer være flere hundrede transaktioner pr. sekund). Mængderne af lagret information er også store, hvilket fører til øgede krav til dataadministrationsværktøjer (opdatering, kopiering, sikring af databehandlingsydelse).

Computerstøttet designsoftware designet til at støtte designere og teknologers arbejde i forbindelse med udvikling af tegninger, diagrammer, diagrammer, grafisk modellering og design, oprettelse af et bibliotek af standardelementer (skabeloner) af tegninger og deres multiple brug, skabelse af demonstrationsillustrationer og tegneserier .

Et karakteristisk træk ved denne klasse af softwareprodukter er de høje krav til den tekniske del af databehandlingssystemet, tilstedeværelsen af ​​biblioteker med indbyggede funktioner, objekter, grænseflader med grafiske systemer og databaser.

Slutbruger Workbench indeholder en lang række softwareprodukter, der hovedsageligt understøtterr. Ud over slutbrugere kan programmører også bruge disse softwareprodukter til at skabe sofistikerede databehandlingsprogrammer på grund af de indbyggede softwareværktøjer.

metodeorienteretsoftware omfatter softwareprodukter, der giver matematiske, statistiske og andre metoder til at løse problemer for ethvert fagområde.

Den mest almindelige software til metoder til matematisk programmering, løsning af differentialligninger, simuleringsmodellering, operationsforskning. Softwareprodukter i denne klasse kan være selvstændige eller indlejrede. Eksempelvis har et Excel-regneark en indbygget dataanalysepakke, der giver en bred vifte af statistiske metoder, samt en "søg efter en løsning"-pakke, der implementerer en lineær programmeringsmetode. Et eksempel på et selvstændigt softwareprodukt er Microsoft Project, som implementerer en metode til netværksplanlægning og -styring. Dette gav projektledere et ret stærkt værktøj til at planlægge og analysere faglige aktiviteter.

Office-software udarbejde programmer, der giver organisatorisk ledelse af kontoret, herunder:

  • arrangører (planlæggere) - Software til planlægning af arbejdstid, udarbejdelse af referater af møder, tidsplaner, vedligeholdelse af en notesbog og telefonbog;
  • oversættelsesprogrammer;
  • tekstgenkendelse og stavekontrol;
  • integrerede pakker - et sæt af flere softwareprodukter, der funktionelt komplementerer hinanden og understøtter den samme type informationsteknologi på samme driftsplatform.

Integrerede pakker inkluderer følgende typiske komponenter:

  • DBMS;
  • tekst editor;
  • grafik editor;
  • regneark;
  • arrangør;
  • e-mail-supportværktøjer;
  • præsentationsprogram.

Komponenterne i integrerede pakker kan arbejde isoleret fra hinanden, men de vigtigste fordele ved integrerede pakker kommer, når de er fornuftigt kombineret med hinanden. Brugere af integrerede pakker har en samlet grænseflade til forskellige komponenter, hvilket sikrer den relative lethed af processen med at mestre dem.

Integrerede pakker er effektive til gruppearbejde på et netværk af mange brugere. For eksempel kan du fra det applikationsprogram, som brugeren befinder sig i, sende dokumenter og datafiler til en anden bruger, mens du understøtter standarder for overførsel af data i form af objekter over et netværk eller via e-mail.

Desktop publishing systemer omfatter programmer, der leverer informationsteknologi til computerudgivelse:

  • formatering og redigering af tekster;
  • automatisk paginering af tekst;
  • skabe overskrifter;
  • computerlayout af den udskrevne side;
  • montering af grafik;
  • udarbejdelse af illustrationer mv.

Medie software tilsigtet at oprette og bruge lyd- og videooplysninger. Multimediesoftwareprodukter har indtaget en førende position på markedet inden for biblioteksinformationstjenester, læringsprocessen og fritidsaktiviteter. Databaser med computerbilleder af kunstværker, biblioteker med lydoptagelser danner grundlag for anvendte uddannelsessystemer, computerspil, bibliotekskataloger og fonde mv.

Intelligente systemer implementerer individuelle funktioner af det menneskelige intellekt. Hovedkomponenterne i kunstige intelligenssystemer er en vidensbase, en intelligent brugergrænseflade og et program til generering af inferens. Deres udvikling går i følgende retninger:

  • indpakningsprogrammer til at skabe ekspertsystemer ved at udfylde vidensbaser og slutningsregler;
  • færdige ekspertsystemer til beslutningstagning inden for visse fagområder;
  • videnbasestyringssystemer til vedligeholdelse af semantiske modeller (proceduremæssige, semantiske netværk, rammer, produktion osv.);
  • taleanalyse- og genkendelsessystemer mv.

konklusioner

Dette emne diskuterer de grundlæggende begreber og klassificering af softwareinformationsprocesser. Definitioner og forklaringer af sådanne udtryk som: program, software, opgave, applikation, emne (anvendt) område, problemformulering, algoritme og dens egenskaber, programmering, softwareprodukt, softwareproduktvedligeholdelse er givet. En beskrivelse af klassificeringen af ​​software i henhold til anvendelsesomfanget er givet: system, applikation, programmeringsteknologiske værktøjer. I hver klasse skelnes der underklasser, til hvilke formålet og deres funktioner bestemmes.

Spørgsmål til selvransagelse

  1. Hvad er et program?
  2. Hvad er software?
  3. Definer opgaven og anvendelsen.
  4. Hvad er et fagområde?
  5. Hvad ved du om de vigtigste stadier i processen med at oprette programmer?
  6. Hvad er opgavebeskrivelsen?
  7. Hvad er en problemløsningsalgoritme?
  8. Nævn de vigtigste egenskaber ved algoritmer.
  9. Hvad er et softwareprodukt, og hvad er dets funktioner?
  10. Hvad er vedligeholdelse af softwareprodukter?
  11. Hvordan kan software klassificeres?
  12. Hvad er inkluderet i systemsoftwaren?
  13. Hvad er en underklasse af servicesoftware?
  14. Definer et hjælpeprogram. Giv eksempler.
  15. Hvad er et programmeringsteknologiværktøj?
  16. Definer CASE-teknologi, og hvornår den bruges.
  17. Hvilken slags programmeringssprog kender du?
  18. Materiale fra webstedet http://mega.km.ru/pc/srch.asp
Virksomhedsdatabaser Materiale fra webstedet http://mega.km.ru/pc/Encyclop.asp?Topic=pc_918

Software (software, software) er et sæt specielle programmer, der giver dig mulighed for at organisere behandlingen af ​​information ved hjælp af en pc.

Da uden software kan pc'en ikke fungere ii princippet er det en integreret del afenhver pc og leveres med dens hardware(hardware).

Program- en fuldstændig og nøjagtig beskrivelse af rækkefølgen af ​​handlinger (instruktioner) af en computer til behandling af information, skrevet på et sprog, der er forståeligt for computeren.

Software (software) - et sæt specielle programmer, der letter processen med at forberede opgaver til udførelse på en computer og organisere deres passage gennem maskinen, samt procedurer, beskrivelser, instruktioner og regler, sammen med al den dokumentation, der er forbundet med disse komponenter, der anvendes i drift af et computersystem.

Behandle information, administrere computeren programmer, ikke enheder.

Softwareinnovationer har længe domineret ny hardwareudvikling. Softwarepakken er dyrere (nogle gange flere gange) end prisen på en computer af passende klasse.

For effektiv brug af en computer skal der være overensstemmelse mellem udviklingsniveauet for computerteknologi og software. På den ene side bestemmer software funktionaliteten af ​​en computer. På den anden side kan installationen af ​​specifik software være begrænset af computerens designfunktioner.

Formål med software:

  • sikring af computerens sundhed;
  • facilitering af brugerinteraktion med computeren;
  • reduktion af cyklussen fra at sætte opgaven til at opnå resultatet;
  • øge effektiviteten af ​​brugen af ​​computerressourcer.

Softwaren tillader:

  • forbedre tilrettelæggelsen af ​​computersystemet for at maksimere brugen af ​​dets muligheder;
  • øge produktiviteten og kvaliteten af ​​brugerens arbejde;
  • tilpasse brugerprogrammer til ressourcerne i et bestemt computersystem;
  • udvide computersystemets software.

Den maksimale udnyttelse af computersystemets muligheder er opnået, for det første ved at tildele hver bruger eller opgave de mindst nødvendige ressourcer til rettidig og højkvalitets løsning af sine opgaver, For det andet ved at forbinde et stort antal brugere til computersystemets ressourcer (inklusive fjernbetjeninger), tredje, ved at omfordele ressourcer mellem forskellige brugere og opgaver afhængigt af systemets tilstand og behandlingsanmodninger.

Forbedring af produktiviteten og kvaliteten af ​​brugernes arbejde sker på grund af automatiseringen af ​​procedurerne for beregning og design, implementeret ved hjælp af en række programmeringsværktøjer (algoritmisk sprog, applikationssoftwarepakker) og praktiske input-output-enheder.

Brugerprogrammernes tilpasningsevne til et bestemt computersystems ressourcer sikres ved, at operativsystemet indeholder et middel til at servicere en bred vifte af maskinkonfigurationer. Derudover giver operativsystemet dig mulighed for at oprette og nemt tilpasse eksisterende programmer til forskellige I/O-enheder.

Udvidelse af eksisterende software indebærer følgende funktioner:

  • oprettelse af brugeren af ​​sine egne programmer og pakker, der implementerer både specifikke beregningsopgaver og kontrolprocesser for individuelle enheder og hele computersystemet som helhed;
  • at supplere eksisterende software med programmer, der giver dig mulighed for at udvide operativsystemets muligheder, arbejde med nye typer eksterne enheder, nye computersystemer (computere), i nye anvendelsesområder.

Software er fokuseret på brugen af ​​computersystemer inden for forskellige aktivitetsområder og bør give en rettidig og passende løsning på opgaverne. Dette kræver en række krav ved udvikling af softwarekomponenter , de vigtigste er:

  • modularitet;
  • skalerbarhed og udvikling;
  • pålidelighed;
  • forudsigelighed;
  • bekvemmelighed og ergonomi;
  • fleksibilitet;
  • effektivitet;
  • kompatibilitet.

Grundlæggende principper for moderne softwareudvikling:

  • parametrisk alsidighed;
  • funktionel redundans;
  • funktionel selektivitet.

Programmer kan installeres på en computer på to måder:

  • Installation fra en distribution
  • Ved simpel kopiering

Første (laveste) niveau hierarki er optaget af pc'ens interne software, gemt i dens permanente hukommelse. Med sin hjælp udfører pc'en de grundlæggende funktioner bestemt af hardwarestrukturen. Firmwareprogrammer arbejder direkte med computerens hardwaremoduler. Som et resultat er de funktionelt relateret til dem, og når et bestemt hardwaremodul udskiftes, er det også nødvendigt at erstatte det interne softwareprogram, der er designet til at arbejde med det.

Programmer, der vedligeholder hardwaremoduler, kaldes driverprogrammer eller chauffører. De tillader, ved udskiftning eller tilslutning af et nyt hardwaremodul, ikke at foretage ændringer i andre pc-programmer, men kun at ændre driveren til det tilsvarende hardwaremodul.

Intern software er en softwaregrænseflade, der sørger for sammenkobling af computeren med alle andre programmer. Adgang til firmwareprogrammerne sker kun gennem softwareafbrydelsessystemet.

Den interne software udfører følgende hovedfunktioner:

  • administrerer en bred vifte af perifere enheder;
  • udfører en hurtig kontrol af pc'ens funktionalitet, når den tændes;
  • nulstiller individuelle hardwaremoduler;
  • indlæser OS-programmer.

Hovedelementerne i den interne software er I/O-drivere, selvtestprogram og opstartsprogram. Den interne software interagerer på den ene side med pc'ens funktionsmoduler og implementerer på den anden side styresystemets programgrænseflade.

Selvtest program designet til at teste pc'ens funktionelle moduler, dvs. indstilling af computerkredsløb til den oprindelige tilstand ved at indlæse programregistre med den nødvendige information. Ved kontrol af individuelle funktionsmoduler på pc'en kan der registreres fejl i dem. Selvtestprogrammet informerer brugeren om opdagede fejl ved hjælp af meddelelser på skærmen og/eller et lydsignal.

Hvis der findes en fejl, kan computerscanningen fortsættes ved hjælp af diagnosticeringsprogrammer, der indlæses fra en diskette. Hvis fejlen ikke forstyrrer pc'ens funktionalitet, kan den på anmodning fra brugeren blive forsømt. Hvis et nyt funktionsmodul er inkluderet i pc'en, tilføjes dette moduls selvtestprogram til det generelle selvtestprogram.

Efter vellykket gennemførelse af selvtesten er pc'en klar til drift. Styring via softwareafbrydelse overføres til bootstrap-programmet. Dette program er designet til at læse andre komponenter af operativsystemet ind i RAM. Hvis denne handling lykkes, overføres kontrollen til det program, der netop er læst.

I/O-drivere bruges til at servicere pc-ydre enheder. Disse programmer arbejder direkte med de tilsvarende controllere, hvilket gør det muligt for brugeren ikke at kende den fysiske organisation af en bestemt enhed og kun arbejde med førerkommandoer, der implementerer dens vedligeholdelse.

Drivere har følgende funktioner:

  • en åben struktur, der giver dig mulighed for at tilføje nye drivere til systemet;
  • fleksibiliteten ved at organisere adgang til drivere gennem softwareafbrydelser, som giver dig mulighed for ikke at rette dem i strengt definerede områder af hukommelsen, for hurtigt og nemt at erstatte dem;
  • en brugerdefineret struktur, der dirigerer driverprogrammer til en bestemt klasse af perifere enheder, hvis parametre er placeret i specielle tabeller. Drivere er konfigureret til specifikke perifere enheder ved at ændre værdierne i disse tabeller;
  • resident placering i RAM, så du kan bruge driveren til enhver tid fra ethvert program.

De vigtigste driverprogrammer inkluderer: harddiskdriver, videoadapterdriver, tastaturdriver, printerdriver, systemdrivere (indstilling af en timer, kontrol af computerkonfiguration, bestemmelse af RAM-kapacitet), yderligere drivere (kommunikationsdriver osv.).

Operativsystemet tager andet (mellem) niveau software hierarki. Den administrerer ressourcerne i et computersystem, som omfatter RAM og ekstern hukommelse, I/O-enheder og brugerprogrammer. OS'et interagerer med computeren gennem den interne softwaregrænseflade. Dette gør det muligt for pc'er med hardwareforskelle at arbejde med det samme operativsystem.

OS er et sæt pc-kontrolprogrammer.

Sammensætningen af ​​softwaren bestemmes af rækken af ​​opgaver, som brugeren har til hensigt at løse ved hjælp af en computer.

Efter aftale, dvs. Afhængigt af klassen af ​​opgaver, der skal løses, opdeles software normalt i to hovedgrupper: Generelt (grundlæggende) og anvendt.

Klassificering af software efter funktionelt formål

Software generelt klassifikationsskema

- et sæt programmer, der sikrer en computers funktionalitet; et sæt programmer, der organiserer computerprocessen og administrerer computerressourcer.

- et sæt softwareværktøjer, der giver dig mulighed for at udvikle programmer.

- et sæt programmer designet til at løse problemer fra forskellige områder af menneskelig aktivitet.

Software (software) betyder et sæt programmer,

udføres af computersystemet.

Software (SW) omfatter også hele aktivitetsområdet inden for design og udvikling af software:

Programdesignteknologi (f.eks. top-down design, strukturelt og objektorienteret design osv.);

Metoder til at bevise rigtigheden af ​​programmer;

Analyse af kvaliteten af ​​programmer;

Program dokumentation;

Udvikling og brug af softwareværktøjer, der letter softwaredesignprocessen og meget mere.

Software er en integreret del af et computersystem. Det er en logisk fortsættelse af tekniske midler. Omfanget af en bestemt computer bestemmes af den software, der er oprettet til den.

Computeren selv har ikke viden inden for noget anvendelsesområde.

Al denne viden er koncentreret i programmer, der kører på computere.

Softwaren på moderne computere omfatter millioner af programmer - fra spil til videnskab.

Som en første tilnærmelse kan alle programmer, der kører på en computer, opdeles i tre kategorier (fig. 1):

Applikationsprogrammer, der direkte sikrer udførelsen af ​​det arbejde, der kræves af brugerne;

Systemprogrammer, der udfører forskellige hjælpefunktioner, for eksempel:

Forvaltning af computerressourcer;

Oprettelse af kopier af brugt information;

Kontrol af sundheden for computerenheder;

Udstedelse af referenceoplysninger om computeren mv.;

Værktøjssoftwaresystemer, der letter processen med at skabe nye programmer til computeren.

Når man konstruerer en softwareklassifikation, skal man tage højde for, at den hurtige udvikling af computerteknologi og udvidelsen af ​​omfanget af computerapplikationer kraftigt har fremskyndet softwareudviklingsprocessen.

Hvis det tidligere var muligt at liste hovedkategorierne af software på fingrene - operativsystemer, oversættere, applikationssoftwarepakker, nu har situationen ændret sig radikalt.

Udviklingen af ​​software er gået både i dybden (nye tilgange til opbygning af operativsystemer, programmeringssprog osv.) og i bredden (applikationsprogrammer er ophørt med at blive anvendt og har fået selvstændig værdi).

Balancen mellem nødvendige softwareprodukter og dem, der er tilgængelige på markedet, ændrer sig hurtigt. Selv klassiske softwareprodukter, såsom operativsystemer, udvikler sig konstant og er udstyret med intellektuelle funktioner, hvoraf mange tidligere kun tilhørte menneskelige intellektuelle evner.

Derudover er der dukket ikke-traditionelle programmer op, som er meget svære, hvis ikke umulige, at klassificere efter fastlagte kriterier, som for eksempel et program - en elektronisk samtalepartner.

Til dato kan vi sige, at følgende grupper af software mere eller mindre definitivt har udviklet sig:

Operativsystemer og skaller;

Programmeringssystemer (oversættere, biblioteker af subrutiner, debuggere osv.);

Værktøjssystemer;

Integrerede softwarepakker;

Dynamiske regneark;

Computergrafiksystemer;

Databasestyringssystemer (DBMS);

Applikations software.

Softwarestrukturen er vist i fig. 6.2. Denne klassifikation kan naturligvis ikke betragtes som udtømmende, men den afspejler mere eller mindre klart retningen for forbedring og udvikling af software.

Et applikationsprogram er ethvert specifikt program, der bidrager til en løsning

enhver opgave inden for det givne problemområde.

Professionelt orienteret software - applikationssoftware designet til at løse problemer inden for en branche.

For eksempel, hvor en computer er betroet opgaven med at kontrollere en virksomheds økonomiske aktiviteter, vil lønprogrammet være applikationen.

Ansøgningsprogrammer kan også være af generel karakter, fx sørge for kompilering og udskrivning af dokumenter mv.

Derimod bidrager operativsystemet eller værktøjssoftwaren ikke direkte til at tilfredsstille brugerens slutbehov.

Applikationsprogrammer kan bruges enten autonomt, det vil sige at løse opgaven uden hjælp fra andre programmer, eller som en del af softwaresystemer eller pakker.

Systemprogrammer udføres sammen med applikationsprogrammer og tjener til at styre computerressourcer - den centrale processor, hukommelse, input-output.

Disse er programmer til generel brug, der er beregnet til alle computerbrugere. Systemsoftware er designet til at sætte computeren i stand til at køre applikationsprogrammer effektivt.

Blandt titusindvis af systemprogrammer er en særlig plads optaget af operativsystemer, der giver styring af computerressourcer for at kunne bruge dem effektivt.

Vigtige klasser af systemprogrammer er også hjælpeprogrammer - hjælpeprogrammer (lat. utilitas - fordel). De enten udvider og supplerer de tilsvarende funktioner i operativsystemet eller løser uafhængige vigtige opgaver. Lad os kort beskrive nogle typer hjælpeprogrammer:

Overvågnings-, test- og diagnoseprogrammer, der bruges til at kontrollere, at computerenheder fungerer korrekt og til at opdage fejlfunktioner under drift; angiv årsagen og placeringen af ​​fejlen;

Driverprogrammer, der udvider operativsystemets evne til at administrere I/O-enheder, RAM osv.; ved hjælp af drivere er det muligt at tilslutte nye enheder til computeren eller ikke-standard brug af eksisterende;

Pakkere (arkivere), der giver dig mulighed for at skrive information på diske tættere, samt kombinere kopier af flere filer til en arkivfil;

Antivirusprogrammer designet til at forhindre infektion med computervirus og eliminere konsekvenserne af virusinfektion.

Ris. 2. Computersoftwarestruktur

En computervirus er et specielt skrevet program i lille størrelse, der kan "tilskrive" sig selv til andre programmer for at udføre eventuelle skadelige handlinger - det ødelægger filer, "forurener" RAM osv.

Programmer til optimering af diskplads og kvalitetskontrol;

Programmer til informationsgendannelse, formatering, databeskyttelse;

Kommunikationsprogrammer, der organiserer udveksling af information mellem computere;

Hukommelsesstyringsprogrammer, der giver mere fleksibel brug af RAM;

Programmer til at brænde CD-ROM, CD-R og mange andre.

Nogle af hjælpeprogrammerne er en del af styresystemet, mens den anden del fungerer uafhængigt af det, dvs. offline. ent miljø).