|  Startsida |  Hårdvara |  Nätverk |  Programmering |  Programvara |  Felsökning |  System |   
System
  • Grundläggande datorkunskaper
  • Linux
  • Mac OS
  • Ubuntu
  • Unix
  • Windows
  • Windows Vista
  • Windows XP
  • Windows 7
  • Windows 10
  • Windows 11
  • Windows 2012
  • Windows 2016
  • Windows 2019
  • Windows 2022
  • Apple
  • Android
  • iOS
  • CentOS
  • * Dator Kunskap >> System >> Unix >> Content

    Vad är UNIX -systemnummer?

    I UNIX-liknande operativsystem identifieras systemsamtal med unika nummer. Dessa kallas Systemanropsnummer eller ibland bara systemnummer . De är i huvudsak index i ett systemsamtal i kärnan. När ett program ringer ett systemsamtal (t.ex. `open ',' läst ',' skriv ',' gaffel ') använder det inte direkt funktionsnamnet; Istället använder det motsvarande systemsamtalnummer. Kärnan använder sedan detta nummer för att leta upp rätt funktion för att köra.

    Här är en uppdelning av deras betydelse:

    * Effektivitet: Att använda siffror är mer effektivt än att använda strängar (som funktionsnamn). Antalet uppslag är mycket snabbare än stränguppslag.

    * Abstraktion: De ger en abstraktionsnivå. Systemsamtalgränssnittet är konsekvent oavsett de specifika implementeringsdetaljerna för varje systemsamtal.

    * portabilitet (med varningar): Medan systemanropen * numren * själva inte nödvändigtvis bärbara över olika Unix-liknande system (t.ex. Linux, MacOS, BSD), är * namnen * på systemsamtal ofta (även om deras beteende kan ha subtila skillnader). Huvudfiler ger en kartläggning mellan de symboliska namnen och siffrorna för ett specifikt system. Du skulle i allmänhet använda de symboliska namnen i din kod och lita på kompilatorn och länken för att lösa dem till rätt systemsamtal.

    * Säkerhet: Direkt användning av systemanropsnummer erbjuder mindre skydd än att använda ett välmeterat bibliotek eller API; Felaktig användning kan leda till systemkrascher eller säkerhetssårbarheter. Därför är det nästan alltid alltid att använda de symboliska namnen.

    Hur de används: Ett program använder i allmänhet inte direkt systemanropsnummer. Istället använder det ett systemsamtalsgränssnitt (ofta tillhandahållet av ett C -bibliotek), som hanterar översättningen från funktionsnamn till nummer. Huvudfilerna (som `unistd.h` i c) definiera symboliska konstanter för varje systemsamtal, vilket gör att programmerare kan skriva bärbar kod med hjälp av dessa symboliska namn. Kompilatorn och länken tar hand om att kartlägga dessa symboler till lämpliga systemanropsnummer under kompilering och länkning.

    Sammanfattningsvis är systemanropsnummer lågnivåidentifierare som används av kärnan för att skicka systemsamtal, som erbjuder effektivitet och ett lager av abstraktion för programmerare som annars skulle behöva arbeta direkt med kärngränssnitt, en uppgift som generellt lämnas till biblioteksförfattare och själva operativsystemet.

    Tidigare:

    nästa:
    relaterade artiklar
    ·Skriv ett skalprogram i Unix för att hitta palindrome …
    ·Vad är syftet med kommandot tune2fs i Linux?
    ·Definition av ett UNIX-operativsystem
    ·Vad är skillnaden mellan Windows och Unix?
    ·Så här ändrar Unix Root Password När det har gått …
    ·Introduktion till Unix Operativsystem
    ·Vad är skillnaden mellan LPAR och VIOS?
    ·Hur du ändrar ett finger i Unix Med chfn
    ·Vad är ett -p-kommando?
    ·Vad är en kärndump i Unix?
    Utvalda artiklarna
    ·Hur man använder Windows Classic Bakgrund och infoga e…
    ·Hur återställa datorn till fabriksinställningar med …
    ·Windows aktivitetsfält Kommer inte Resize
    ·Hur man installerar TTF teckensnitt på Ubuntu
    ·Hur du flyttar papperskorgen till Min dator
    ·Lägga till en ikon i Aktivitetsfältet i Windows XP
    ·Hur man tar bort filer permanent från en Mac
    ·Hur hitta drivrutiner för en IBM ThinkPad
    ·Hur man tar bort Windows Update Manager
    ·Hur man använder en kamera på en Mac utan Photo Booth…
    Copyright © Dator Kunskap https://www.dator.xyz