Skip to content

Commit 5666152

Browse files
committed
added more presets
1 parent 6f9f5a6 commit 5666152

File tree

2 files changed

+164
-2
lines changed

2 files changed

+164
-2
lines changed

new-cpu-task-scheduler/js/new-cpu-task-scheduler.js

Lines changed: 154 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1004,6 +1004,8 @@ function showRelevantControlsFromDropdown() {
10041004
}
10051005

10061006
if (value == "0") {
1007+
// high burst at start
1008+
10071009
taskMatrix.push(new Task());
10081010
taskMatrix[0].burst = 100;
10091011
taskMatrix[0].start = 0;
@@ -1014,6 +1016,158 @@ function showRelevantControlsFromDropdown() {
10141016
tempTask.burst = Math.max(1,(i % 7) + (i % 3));
10151017
tempTask.priority = 0;
10161018

1019+
taskMatrix.push(tempTask);
1020+
}
1021+
1022+
} else if (value == "1") {
1023+
// high burst at end
1024+
1025+
taskMatrix.push(new Task());
1026+
taskMatrix[0].burst = 100;
1027+
taskMatrix[0].start = 60;
1028+
1029+
for (let i = 1; i < 30; i++) {
1030+
let tempTask = new Task();
1031+
tempTask.start = i * 2;
1032+
tempTask.burst = Math.max(1,(i % 7) + (i % 3));
1033+
tempTask.priority = 0;
1034+
1035+
taskMatrix.push(tempTask);
1036+
}
1037+
1038+
} else if (value == "2") {
1039+
// high burst at middle
1040+
1041+
taskMatrix.push(new Task());
1042+
taskMatrix[0].burst = 100;
1043+
taskMatrix[0].start = 31;
1044+
1045+
for (let i = 1; i < 30; i++) {
1046+
let tempTask = new Task();
1047+
tempTask.start = i * 2;
1048+
tempTask.burst = Math.max(1,(i % 7) + (i % 3));
1049+
tempTask.priority = 0;
1050+
1051+
taskMatrix.push(tempTask);
1052+
}
1053+
1054+
} else if (value == "3") {
1055+
// Exp Increasing burst
1056+
1057+
for (let i = 1; i < 30; i++) {
1058+
let tempTask = new Task();
1059+
tempTask.start = i * 2;
1060+
tempTask.burst = i ** 2;
1061+
tempTask.priority = 0;
1062+
1063+
taskMatrix.push(tempTask);
1064+
}
1065+
1066+
} else if (value == "4") {
1067+
// Exp Decreasing burst
1068+
1069+
for (let i = 1; i < 30; i++) {
1070+
let tempTask = new Task();
1071+
tempTask.start = i * 2;
1072+
tempTask.burst = (30 - i) ** 2;
1073+
tempTask.priority = 0;
1074+
1075+
taskMatrix.push(tempTask);
1076+
}
1077+
1078+
} else if (value == "5") {
1079+
// Linear Increasing burst
1080+
1081+
for (let i = 1; i < 30; i++) {
1082+
let tempTask = new Task();
1083+
tempTask.start = i * 2;
1084+
tempTask.burst = i * 3;
1085+
tempTask.priority = 0;
1086+
1087+
taskMatrix.push(tempTask);
1088+
}
1089+
1090+
} else if (value == "6") {
1091+
// Linear Decreasing burst
1092+
1093+
for (let i = 1; i < 30; i++) {
1094+
let tempTask = new Task();
1095+
tempTask.start = i * 2;
1096+
tempTask.burst = (30 - i) * 3;
1097+
tempTask.priority = 0;
1098+
1099+
taskMatrix.push(tempTask);
1100+
}
1101+
1102+
} else if (value == "7") {
1103+
// high traffic at start // traffic = same burst but a lot in the same period of time
1104+
1105+
for (let i = 1; i < 10; i++) {
1106+
let tempTask = new Task();
1107+
tempTask.start = i;
1108+
tempTask.burst = Math.max(1,(i % 7) + (i % 3));
1109+
tempTask.priority = 0;
1110+
1111+
taskMatrix.push(tempTask);
1112+
}
1113+
1114+
for (let i = 1; i < 20; i++) {
1115+
let tempTask = new Task();
1116+
tempTask.start = (i + 2) * 4;
1117+
tempTask.burst = Math.max(1,(i % 7) + (i % 3));
1118+
tempTask.priority = 0;
1119+
1120+
taskMatrix.push(tempTask);
1121+
}
1122+
1123+
} else if (value == "8") {
1124+
// high traffic at end
1125+
1126+
for (let i = 1; i < 10; i++) {
1127+
let tempTask = new Task();
1128+
tempTask.start = (i + 77);
1129+
tempTask.burst = Math.max(1,(i % 7) + (i % 3));
1130+
tempTask.priority = 0;
1131+
1132+
taskMatrix.push(tempTask);
1133+
}
1134+
1135+
for (let i = 1; i < 20; i++) {
1136+
let tempTask = new Task();
1137+
tempTask.start = i * 4;
1138+
tempTask.burst = Math.max(1,(i % 7) + (i % 3));
1139+
tempTask.priority = 0;
1140+
1141+
taskMatrix.push(tempTask);
1142+
}
1143+
1144+
} else if (value == "9") {
1145+
// high traffic at middle
1146+
1147+
for (let i = 1; i < 10; i++) {
1148+
let tempTask = new Task();
1149+
tempTask.start = i * 4;
1150+
tempTask.burst = Math.max(1,(i % 7) + (i % 3));
1151+
tempTask.priority = 0;
1152+
1153+
taskMatrix.push(tempTask);
1154+
}
1155+
1156+
for (let i = 1; i < 10; i++) {
1157+
let tempTask = new Task();
1158+
tempTask.start = (i + 36);
1159+
tempTask.burst = Math.max(1,(i % 7) + (i % 3));
1160+
tempTask.priority = 0;
1161+
1162+
taskMatrix.push(tempTask);
1163+
}
1164+
1165+
for (let i = 1; i < 10; i++) {
1166+
let tempTask = new Task();
1167+
tempTask.start = (i + 11) * 4;
1168+
tempTask.burst = Math.max(1,(i % 7) + (i % 3));
1169+
tempTask.priority = 0;
1170+
10171171
taskMatrix.push(tempTask);
10181172
}
10191173
}

new-cpu-task-scheduler/new-cpu-task-scheduler.html

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,16 @@ <h2>Nicholas Norman January 2026</h2>
4747
<select name="taskSel" id="taskDropdown">
4848
<option value="random">Random</option>
4949
<option value="custom">Custom</option>
50-
<option value="0">Preset 0: High then consistent</option>
51-
<option value="1">More Coming Soon</option>
50+
<option value="0">Preset 0: High burst at start</option>
51+
<option value="1">Preset 1: High burst at end</option>
52+
<option value="2">Preset 2: High burst in middle</option>
53+
<option value="3">Preset 3: Exp Increasing burst</option>
54+
<option value="4">Preset 4: Exp Decreasing burst</option>
55+
<option value="5">Preset 5: Linear Increasing burst</option>
56+
<option value="6">Preset 6: Linear Decreasing burst</option>
57+
<option value="7">Preset 7: High traffic at start</option>
58+
<option value="8">Preset 8: High traffic at end</option>
59+
<option value="9">Preset 9: High traffic in middle</option>
5260
</select>
5361
</div>
5462

0 commit comments

Comments
 (0)