Heim Backend-Entwicklung C++ C-Programm zur Schleifenplanung

C-Programm zur Schleifenplanung

Sep 25, 2023 pm 05:09 PM
c程序 循环 调度

Wir erhalten die n Prozesse mit ihrer entsprechenden Burst-Zeit und Zeitquantität und die Aufgabe besteht darin, die durchschnittliche Wartezeit und die durchschnittliche Bearbeitungszeit zu ermitteln und das Ergebnis anzuzeigen.

Was ist Round Robin Scheduling?

Round Robin ist ein CPU-Planungsalgorithmus, der speziell für Time-Sharing-Systeme entwickelt wurde. Es ähnelt eher einem FCFS-Planungsalgorithmus mit einer Änderung, die bei Round-Robin-Prozessen durch eine Quantenzeitgröße begrenzt ist. Eine kleine Zeiteinheit wird als Zeitquantum oder Zeitscheibe bezeichnet. Zeitquanten können zwischen 10 und 100 Millisekunden liegen. Die CPU behandelt die Bereitschaftswarteschlange als kreisförmige Warteschlange zum Ausführen der Prozesse in einem bestimmten Zeitintervall. Es folgt einem präventiven Ansatz, da den Prozessen feste Zeit zugewiesen wird. Der einzige Nachteil ist der Mehraufwand für den Kontextwechsel.

Was müssen wir berechnen?

Abschlusszeit ist die Zeit, die der Prozess benötigt, um seine Ausführung abzuschließen Einreichung eines Prozesses und dessen Abschluss.

Bearbeitungszeit = Abschluss eines Prozesses – Einreichung eines ProzessesWartezeit ist die Differenz zwischen Bearbeitungszeit und Burst-Zeit

Waiting Time = Bearbeitungszeit – Burst-Zeit

Beispiel

Wir erhalten 3 Prozesse P1, P2 und P3 mit ihrer entsprechenden Burst-Zeit als 24, 3 und 3

3

P33Da das Zeitquantum 4 Millisekunden beträgt, erhält Prozess P1 die ersten 4 Millisekunden, benötigt aber weitere 20 Millisekunden, um seine Ausführung abzuschließen, aber die CPU wird es nach dem ersten Zeitquantum verhindern und Die CPU wird dem nächsten Prozess P2 zugewiesen. Wie in der Tabelle gezeigt, benötigt Prozess P2 nur 3 Millisekunden, um seine Ausführung abzuschließen, sodass der CPU nur ein Zeitquantum von 3 Millisekunden anstelle von 4 Millisekunden zugewiesen wird. Durchschnittliche Wartezeit = 17/3 = 5,66 Millisekunden
Mit dem Gantt-Diagramm wird die durchschnittliche Wartezeit wie angegeben berechnet unter –
Algorithmus

Das obige ist der detaillierte Inhalt vonC-Programm zur Schleifenplanung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Crossplay haben?
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

C++-Programm zum Ermitteln des Werts der Umkehrfunktion des hyperbolischen Sinus, wobei ein gegebener Wert als Argument verwendet wird C++-Programm zum Ermitteln des Werts der Umkehrfunktion des hyperbolischen Sinus, wobei ein gegebener Wert als Argument verwendet wird Sep 17, 2023 am 10:49 AM

Hyperbelfunktionen werden mithilfe von Hyperbeln anstelle von Kreisen definiert und entsprechen gewöhnlichen trigonometrischen Funktionen. Es gibt den Verhältnisparameter in der hyperbolischen Sinusfunktion aus dem angegebenen Winkel im Bogenmaß zurück. Aber machen Sie das Gegenteil, oder anders gesagt. Wenn wir einen Winkel aus einem hyperbolischen Sinus berechnen wollen, benötigen wir eine umgekehrte hyperbolische trigonometrische Operation wie die hyperbolische Umkehrsinusoperation. In diesem Kurs wird gezeigt, wie Sie die hyperbolische Umkehrsinusfunktion (asinh) in C++ verwenden, um Winkel mithilfe des hyperbolischen Sinuswerts im Bogenmaß zu berechnen. Die hyperbolische Arkussinusoperation folgt der folgenden Formel -$$\mathrm{sinh^{-1}x\:=\:In(x\:+\:\sqrt{x^2\:+\:1})}, Wo\:In\:ist\:natürlicher Logarithmus\:(log_e\:k)

So deaktivieren Sie die Funktion „Zum Anzeigen des Desktops klicken' in macOS So deaktivieren Sie die Funktion „Zum Anzeigen des Desktops klicken' in macOS Nov 23, 2023 pm 02:31 PM

Standardmäßig blendet macOSSonoma alle aktiven Fenster aus, wenn Sie auf Ihren Desktop-Hintergrund klicken. Dies ist praktisch, wenn Sie auf Ihrem Desktop eine Menge Dateien haben, auf die Sie zugreifen müssen. Wenn Sie dieses Verhalten jedoch als störend empfinden, gibt es eine Möglichkeit, es abzustellen. Apples neuestes macOS Sonoma Mac-Betriebssystem verfügt über eine neue Option namens „Klicken Sie auf das Hintergrundbild, um den Desktop anzuzeigen“. Diese standardmäßig aktivierte Option kann besonders nützlich sein, wenn Sie häufig mehrere Fenster geöffnet haben und auf Dateien oder Ordner auf Ihrem Desktop zugreifen möchten, ohne die Fenster minimieren oder verschieben zu müssen. Wenn die Funktion aktiviert ist und Sie auf das Desktop-Hintergrundbild klicken, werden alle geöffneten Fenster vorübergehend zur Seite gewischt, sodass Sie direkt auf den Desktop zugreifen können. Sobald Sie fertig sind, können Sie es wieder tun

Das C-Programm verwendet die Funktion rename(), um den Dateinamen zu ändern Das C-Programm verwendet die Funktion rename(), um den Dateinamen zu ändern Sep 21, 2023 pm 10:01 PM

Die Umbenennungsfunktion ändert den alten Namen einer Datei oder eines Verzeichnisses in den neuen Namen. Dieser Vorgang ähnelt dem Verschiebevorgang. Wir können diese Umbenennungsfunktion also auch zum Verschieben von Dateien verwenden. Diese Funktion ist in der Headerdatei der stdio.h-Bibliothek vorhanden. Die Syntax der Umbenennungsfunktion lautet wie folgt: intrename(constchar*oldname,constchar*newname); Die Funktion der rename()-Funktion akzeptiert zwei Parameter. Einer ist alter Name und der andere ist neuer Name. Beide Parameter sind Zeiger auf konstante Zeichen, die den alten und neuen Namen der Datei definieren. Gibt Null zurück, wenn die Datei erfolgreich umbenannt wurde; andernfalls wird eine Ganzzahl ungleich Null zurückgegeben. Während eines Umbenennungsvorgangs

C++-Programm zum Drucken eines Wörterbuchs C++-Programm zum Drucken eines Wörterbuchs Sep 11, 2023 am 10:33 AM

Eine Karte ist ein spezieller Containertyp in C++, bei dem jedes Element ein Paar aus zwei Werten ist, nämlich einem Schlüsselwert und einem zugeordneten Wert. Der Schlüsselwert wird zum Indizieren jedes Elements verwendet, und der zugeordnete Wert ist der mit dem Schlüssel verknüpfte Wert. Unabhängig davon, ob der zugeordnete Wert eindeutig ist, ist der Schlüssel immer eindeutig. Um Kartenelemente in C++ zu drucken, müssen wir einen Iterator verwenden. Ein Element in einer Menge von Elementen wird durch ein Iteratorobjekt angegeben. Iteratoren werden hauptsächlich mit Arrays und anderen Arten von Containern (z. B. Vektoren) verwendet und verfügen über einen bestimmten Satz von Operationen, mit denen bestimmte Elemente innerhalb eines bestimmten Bereichs identifiziert werden können. Iteratoren können inkrementiert oder dekrementiert werden, um auf verschiedene Elemente in einem Bereich oder Container zu verweisen. Der Iterator zeigt auf den Speicherort eines bestimmten Elements im Bereich. Drucken einer Karte in C++ mit Iteratoren Schauen wir uns zunächst an, wie man definiert

Schreiben Sie ein C-Programm, das die Bibliotheksfunktion strncmp verwendet, um zwei Zeichenfolgen zu vergleichen Schreiben Sie ein C-Programm, das die Bibliotheksfunktion strncmp verwendet, um zwei Zeichenfolgen zu vergleichen Sep 09, 2023 pm 01:17 PM

Strncmp ist eine vordefinierte Bibliotheksfunktion, die in der Datei string.h vorhanden ist und zum Vergleichen zweier Zeichenfolgen und zum Anzeigen der größeren Zeichenfolge verwendet wird. strcmp-Funktion (String-Vergleich) Diese Funktion vergleicht zwei Strings. Es gibt die ASCII-Differenz des ersten nicht übereinstimmenden Zeichens in den beiden Zeichenfolgen zurück. Syntax intstrcmp(string1,string2); Wenn die Differenz gleich Null ist, dann ist string1=string2. Wenn die Differenz positiv ist, ist string1>string2. Wenn die Differenz negativ ist, ist string1<string2. Beispiel für eine strncmp-Funktion Diese Funktion wird verwendet, um die ersten n Zeichen zweier Zeichenfolgen zu vergleichen. Syntaxstrn

C++-Programm zum Überprüfen, ob ein Zeichen alphabetisch oder nicht alphabetisch ist C++-Programm zum Überprüfen, ob ein Zeichen alphabetisch oder nicht alphabetisch ist Sep 14, 2023 pm 03:37 PM

Die Verwendung von Zeichenfolgen oder Zeichen ist manchmal sehr nützlich, wenn man einige Probleme der Logikprogrammierung löst. Eine Zeichenfolge ist eine Sammlung von Zeichen. Dabei handelt es sich um einen 1-Byte-Datentyp, der zum Speichern von Symbolen in ASCII-Werten verwendet wird. Symbole können englische Buchstaben, Zahlen oder Sonderzeichen sein. In diesem Artikel erfahren Sie, wie Sie mit C++ überprüfen, ob ein Zeichen ein englischer Buchstabe oder ein Buchstabe des Alphabets ist. Überprüfen der Funktion isalpha() Um zu überprüfen, ob eine Zahl ein Buchstabe ist, können wir die Funktion isalpha() in der Header-Datei ctype.h verwenden. Dies nimmt ein Zeichen als Eingabe und gibt „true“ zurück, wenn es sich um ein Alphabet handelt, andernfalls „false“. Schauen wir uns die folgende C++-Implementierung an, um die Verwendung dieser Funktion zu verstehen. Die chinesische Übersetzung von Beispiel lautet: show

Der Lambda-Ausdruck bricht aus der Schleife aus Der Lambda-Ausdruck bricht aus der Schleife aus Feb 20, 2024 am 08:47 AM

Wenn der Lambda-Ausdruck aus der Schleife ausbricht, sind spezifische Codebeispiele erforderlich. Bei der Programmierung ist die Schleifenstruktur eine wichtige Syntax, die häufig verwendet wird. Unter bestimmten Umständen möchten wir jedoch möglicherweise aus der gesamten Schleife ausbrechen, wenn eine bestimmte Bedingung im Schleifenkörper erfüllt ist, anstatt nur die aktuelle Schleifeniteration zu beenden. Zu diesem Zeitpunkt können uns die Eigenschaften von Lambda-Ausdrücken dabei helfen, das Ziel zu erreichen, aus der Schleife zu springen. Der Lambda-Ausdruck ist eine Möglichkeit, eine anonyme Funktion zu deklarieren, die intern einfache Funktionslogik definieren kann. Es unterscheidet sich von einer gewöhnlichen Funktionsdeklaration:

C-Programm zur Implementierung des euklidischen Algorithmus C-Programm zur Implementierung des euklidischen Algorithmus Sep 17, 2023 pm 12:41 PM

Das Problem implementiert den euklidischen Algorithmus, um den größten gemeinsamen Teiler (GCD) und das kleinste gemeinsame Vielfache (LCM) zweier Ganzzahlen zu finden, und gibt die Ergebnisse mit einer gegebenen Ganzzahl aus. Lösung Die Lösung zur Implementierung des euklidischen Algorithmus zum Ermitteln des größten gemeinsamen Teilers (GCD) und des kleinsten gemeinsamen Vielfachen (LCM) zweier Ganzzahlen lautet wie folgt – die Logik zum Ermitteln von GCD und LCM lautet wie folgt – if (firstno*secondno!=0) { gcd= gcd_rec(firstno,secondno); printf("TheGCDof%dand%dis%d",

See all articles