I Linux er en subrutine, ofte referert til som en funksjon eller prosedyre, en kodeblokk designet for å utføre en spesifikk oppgave og kan kalles fra andre deler av et program. Subrutiner gir bedre kodeorganisering, modularitet og gjenbrukbarhet av kode. Her er en generell oversikt over hvordan en subrutine fungerer i Linux:
1. Funksjonserklæring :Subrutinen deklareres først, og spesifiserer navnet, returtypen (hvis noen), og typene og antallet parametere (hvis nødvendig). I C-programmeringsspråket som vanligvis brukes i Linux, ser en funksjonserklæring vanligvis slik ut:
```c
returtype funksjonsnavn(parameterliste);
```
2. Funksjonsdefinisjon :Subrutinen defineres ved å gi dens implementering, som består av koden som utfører ønsket oppgave. Det starter vanligvis med tegnet '{' og slutter med '}'. Funksjonsdefinisjonen inkluderer setningene og logikken som kreves for å utføre oppgaven.
3. Funksjonsanrop :For å utføre en subrutine, må du ringe den fra programmet. I C kan du kalle en funksjon ved å bruke navnet etterfulgt av de riktige argumentene innenfor parentes:
```c
resultat =funksjonsnavn(argument1, argument2);
```
4. Utføring av funksjon :Når en funksjon kalles opp, overføres programkontrollen til funksjonens kodeblokk. Argumentene som sendes til funksjonen blir evaluert og lagret i funksjonens lokale variabler. Funksjonen utfører sine uttalelser og utfører den tiltenkte oppgaven.
5. Returerklæring :Hvis funksjonen forventes å returnere en verdi (f.eks. et heltall eller en streng), bør den bruke 'retur'-setningen etterfulgt av verdien som skal returneres. Når en "retur"-setning oppstår, avsluttes funksjonen umiddelbart, og programkontrollen går tilbake til punktet der funksjonen ble kalt.
6. Lokale variabler :Subrutiner kan ha lokale variabler deklarert innenfor sitt omfang. Disse variablene er bare tilgjengelige innenfor funksjonen og er ikke synlige utenfor den. De blir ødelagt når funksjonen kommer tilbake.
7. Beståtte argumenter :Subrutiner kan sende argumenter på forskjellige måter, for eksempel etter verdi (en kopi av argumentet sendes) eller ved referanse (den faktiske plasseringen i minnet sendes). I Linux sendes argumenter vanligvis etter verdi med mindre annet er spesifisert.
8. Rekursjon :Subrutiner kan kalle seg selv, en teknikk kjent som rekursjon. Dette gjør at komplekse oppgaver kan brytes ned i mindre delproblemer som kan løses sekvensielt. Imidlertid bør rekursjon brukes forsiktig for å unngå stabeloverflyt og sikre effektiv programkjøring.
Oppsummert er subrutiner i Linux funksjoner eller prosedyrer som utfører spesifikke oppgaver og kan kalles fra forskjellige deler av et program. De forbedrer kodeorganisering, modularitet og gjenbrukbarhet, og gjør det mulig for utviklere å lage mer effektive og vedlikeholdbare programmer.