Add multilingual language and systems learning tracks

This commit is contained in:
Admin committed 2026-11-01 15:46:21 +08:00
1 parent 07338189fc
commit d8d1c40118
844 files changed
+6061

No files matched your search

+9
View File
@@ -0,0 +1,9 @@
# Concurrency ug Scheduling · 1
[Agila University track](https://edu.agilaos.com/track.php?track=27&lang=ceb)
Mga 15 minutos matag leksyon. Tag-ana, padagana, usba, ipasabot, ug tubaga ang pagsusi sa University.
- [Lesson 1: Mahimong mawala ang update sa interleaving](lesson-1/lesson.html)
- [Lesson 2: Sakop ug ownership sa lock](lesson-2/lesson.html)
- [Lesson 3: Bounded queue ug backpressure](lesson-3/lesson.html)
+7
View File
@@ -0,0 +1,7 @@
<!doctype html><html lang="ceb"><meta charset="utf-8"><title>Mahimong mawala ang update sa interleaving</title><h1>Mahimong mawala ang update sa interleaving</h1><p>15-minutong sesyon: pagbasa sulod sa 3 minutos, pag-trace sa 3, pag-eksperimento sa 7, ug pagtubag sa check sa 2. Paggahin og dugang oras kon gikinahanglan.</p><p>Mahimong mabasa sa duha ka worker ang samang counter sa dili pa mosulat. Parehong one ang kalkulasyon ug one ang final imbes two. Deterministic nga modelo ang pananglitan aron dili magsalig sa tsansa sa race. Ilha ang shared state ug operation nga angay atomic o protected.</p><p><strong>Praktis ug ebidensiya:</strong> Tag-ana ang pananglitan o idrowing ang pag-usab sa state. Usba ang usa ka pagtuo, sulayi ang utlanan, ug itala ang aktuwal nga resulta. Ipasabot unsa ang wala mapamatud-i sa gamay nga modelo bahin sa production system.</p><pre><code class="language-python">counter=0
a=counter
b=counter
counter=a+1
counter=b+1
print(counter)
</code></pre><p><strong>Gipaabot nga resulta:</strong> <code>1</code></p><h3>Praktis ug ebidensiya</h3><p>Isulat ang tagna, aktuwal nga resulta, ug hinungdan sa pagkapareho o kalainan. Ang completion check mosukod sa pagsabot; ang practice task mopauswag sa kahanas.</p></html>
+6
View File
@@ -0,0 +1,6 @@
counter=0
a=counter
b=counter
counter=a+1
counter=b+1
print(counter)
+1
View File
@@ -0,0 +1 @@
<!doctype html><html lang="ceb"><meta charset="utf-8"><title>Sakop ug ownership sa lock</title><h1>Sakop ug ownership sa lock</h1><p>15-minutong sesyon: pagbasa sulod sa 3 minutos, pag-trace sa 3, pag-eksperimento sa 7, ug pagtubag sa check sa 2. Paggahin og dugang oras kon gikinahanglan.</p><p>Mapanalipdan sa lock ang invariant kon pareho ang lagda sa tanang access. Panalipdi ang tibuok read-modify-write, dili final assignment lamang. Pagtakda og consistent lock order kon daghan. Mahimong sakto apan hinay ang global lock; sukda sa dili pa bahinon.</p><p><strong>Praktis ug ebidensiya:</strong> Tag-ana ang pananglitan o idrowing ang pag-usab sa state. Usba ang usa ka pagtuo, sulayi ang utlanan, ug itala ang aktuwal nga resulta. Ipasabot unsa ang wala mapamatud-i sa gamay nga modelo bahin sa production system.</p><h3>Praktis ug ebidensiya</h3><p>Isulat ang tagna, aktuwal nga resulta, ug hinungdan sa pagkapareho o kalainan. Ang completion check mosukod sa pagsabot; ang practice task mopauswag sa kahanas.</p></html>
+8
View File
@@ -0,0 +1,8 @@
<!doctype html><html lang="ceb"><meta charset="utf-8"><title>Bounded queue ug backpressure</title><h1>Bounded queue ug backpressure</h1><p>15-minutong sesyon: pagbasa sulod sa 3 minutos, pag-trace sa 3, pag-eksperimento sa 7, ug pagtubag sa check sa 2. Paggahin og dugang oras kon gikinahanglan.</p><p>Mahurot ang memory sa unbounded producer kon hinay ang consumer. Pili og bounded queue ug policy: wait, reject, o shed. Kinahanglang mapukaw ang blocked participant sa cancellation ug shutdown. Imodelo ang capacity two ug ipasabot ang ikatulong job ug pahibalo sa caller.</p><p><strong>Praktis ug ebidensiya:</strong> Tag-ana ang pananglitan o idrowing ang pag-usab sa state. Usba ang usa ka pagtuo, sulayi ang utlanan, ug itala ang aktuwal nga resulta. Ipasabot unsa ang wala mapamatud-i sa gamay nga modelo bahin sa production system.</p><pre><code class="language-python">queue=[]
capacity=2
for job in [&quot;A&quot;,&quot;B&quot;,&quot;C&quot;]:
if len(queue)&lt;capacity:queue.append(job)
else:print(&quot;Rejected&quot;,job)
print(queue)
</code></pre><p><strong>Gipaabot nga resulta:</strong> <code>Rejected C
[&#x27;A&#x27;, &#x27;B&#x27;]</code></p><h3>Praktis ug ebidensiya</h3><p>Isulat ang tagna, aktuwal nga resulta, ug hinungdan sa pagkapareho o kalainan. Ang completion check mosukod sa pagsabot; ang practice task mopauswag sa kahanas.</p></html>
+6
View File
@@ -0,0 +1,6 @@
queue=[]
capacity=2
for job in ["A","B","C"]:
if len(queue)<capacity:queue.append(job)
else:print("Rejected",job)
print(queue)