CPU 排程演算法之等待時間計算
這次的作業主要是要根據以下四個行程(Processes),分別使用不同的 CPU 排程演算法,計算每個演算法的平均等待時間(Average Waiting Time, WT)。 行程 到達時間 A 分割時間 Burst 優先順序 P1 0 8 3 P2 1 4 1 P3 2 9 4 P4 3 5 2 單位:時間單位 需要計算的排程演算法如下: FCFS(First Come First Serve,先來先服務) SJF(Shortest Job First,非搶先) SRTF(Shortest Remaining Time First,可搶先) RR(Round Robin,時間片 q=4) Priority(分為非搶先與可搶先兩種) 一、FCFS 計算等待時間: WT₁ = 8 - 8 = 0 WT₂ = 12 - 5 = 7 WT₃ = 26 - 11 = 15 WT₄ = 17 - 8 = 9 平均等待時間:(0 + 7 + 15 ...
Pytorch Quickstart
程式碼來源:https://docs.pytorch.org/tutorials/beginner/basics/quickstart_tutorial.html 123456import torch# 匯入 nn(neural network)子模組from torch import nnfrom torch.utils.data import DataLoaderfrom torchvision import datasetsfrom torchvision.transforms import ToTensor 123456import torch# 匯入 nn(neural network)子模組from torch import nnfrom torch.utils.data import DataLoaderfrom torchvision import datasetsfrom torchvision.transforms import ToTensor nn 是用來「定義網路結構」的模組。 DataLoader 幫你自動把 dataset 切成一批一批(batc...
Android LocationApp
這是一個練習定位權限的App,我將重要的部分記錄下來。 123<uses-permission android:name="android.permission.INTERNET" /><uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /><uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 123<uses-permission android:name="android.permission.INTERNET" /><uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /><uses-permission android:nam...
Mac Docker 惡意軟體?
參考:MacOS 將 Docker 檢測為惡意軟體問題 🔧 修復com.docker.vmnetd問題當你在 macOS 上啟動 Docker Desktop 時,可能會遇到如下錯誤訊息: 「未打開 ‘com.docker.vmnetd’,因為它包含惡意軟體。」 這是因為 macOS 的 Gatekeeper 誤判 Docker 的網路代理元件為惡意程式。以下步驟可以手動修復該問題,讓 Docker 能正常運作。 使用終端機手修復📌 步驟一:刪除現有的 Helper Tools打開「終端機」,輸入以下指令來移除出錯的元件: 1sudo rm /Library/PrivilegedHelperTools/com.docker.vmnetdnsudo rm /Library/PrivilegedHelperTools/com.docker.socket Bash 系統會要求你輸入密碼,請輸入你的 Mac 登入密碼(輸入時畫面不會顯示字元,屬正常現象)。 📌 步驟二:重新複製官方檔案從 Docker Desktop 應用程式中,重新將正確的 com.docker.vm...
WordPress 架站與伺服器設定教學紀錄
【一、執行環境設定】 使用主機:雲端主機(如 Linode) 套件:啟用自動備份功能(如 Linode Backup) 作業系統:Ubuntu 24.04 LTS SSH Port:預設為 Port 22 Fail2Ban:已啟用,保護 SSH 登入 UFW 防火牆狀態: 443/tcp ALLOW 80/tcp ALLOW 22/tcp DENY 【二、Nginx + PHP + MariaDB 設定】 Nginx:安裝並啟用 PHP:8.3(以 php-fpm 模式運作) MariaDB: 資料庫名稱:wp_project 使用者帳號:wpuser 密碼:自訂(建議設定複雜密碼) 【三、安裝與設定 WordPress】 部署路徑:/var/www/yourdomain.com 安裝 WordPress 核心檔案 設定 wp-config.php: define('DB_NAME', 'wp_project'); define('DB_USER', 'wpuser')...
Nginx + Certbot 為 WordPress 網站設定 HTTPS
本教學將說明如何透過 Certbot 申請 Let’s Encrypt 免費 SSL 憑證,並整合至 Nginx,成功為你的 WordPress 網站啟用 HTTPS。 📌 前置準備 網站程式碼已部署於 /var/www/你的網站資料夾 網域名稱(例如 yourdomain.com)已正確指向你的伺服器 IP 已安裝 Nginx、PHP-FPM、Certbot 步驟一:建立 Nginx 設定檔使用 nano 編輯對應網域的 Nginx 設定檔: 1sudo nano /etc/nginx/sites-available/yourdomain.com Bash 設定內容範例如下(HTTPS 區塊會由 Certbot 自動補上): 123456789101112131415161718192021222324252627282930313233343536373839404142server { server_name yourdomain.com www.yourdomain.com; root /var/www/你的網站資料夾; inde...
Daphne 無法抓取 CSS 解決方法
背景Daphne 是用於運行 Django ASGI 應用的服務器。它主要負責處理 WebSocket 和 HTTP 請求,但 Daphne 本身不直接提供靜態文件服務(如 CSS、JS)。這通常導致在使用 Daphne 部署 Django 應用時,訪問 /static/ 路徑返回 404 錯誤。 問題現象當使用 Daphne 啟動應用並訪問 Django 的後台管理介面或靜態頁面時,靜態文件無法正常加載,終端可能顯示以下錯誤: 12Not Found: /static/admin/css/login.cssNot Found: /static/admin/css/base.css 問題原因Daphne 不處理靜態文件。Django 預設需要 collectstatic 將所有靜態文件集中到一個目錄,並需要一個服務器(如 WhiteNoise 或 Nginx)來提供靜態文件支持。 解決方法方法 1:使用 WhiteNoise 提供靜態文件WhiteNoise 是一個用於提供靜態文件的中介軟體,適合簡單的部署需求。 步驟 1:安裝 WhiteNoise在虛擬環境中安裝 Wh...
C++ 筆記 - Vector 使用方式
Vector 實戰教學1. vector 的基本操作定義與初始化12345678910111213141516171819202122#include <iostream>#include <vector>using namespace std;int main() { // 定義一個空的 vector vector<int> vec; // 定義並初始化 vector<int> vec2 = {1, 2, 3, 4, 5}; // 定義固定大小的 vector,初始值為 0 vector<int> vec3(5, 0); // 5 個元素,每個元素初始值為 0 // 輸出 vec2 的內容 for (int x : vec2) { cout << x << " "; } return 0;} 輸出: 11 2 3 4 5 2. 動態增加和...
撰寫 Python 發送成績給學生確認
程式功能概述此 Python 程式使用 smtplib 庫來自動發送學生成績通知郵件。從 Excel 檔案中讀取每位學生的成績,並依據其學號生成專屬郵件,郵件以純文字格式發送至指定學校郵箱地址。為了避免 Gmail 將郵件自動摺疊,程式為每封郵件添加了唯一的時間標記。 步驟詳解1. 準備所需的程式庫我們使用以下程式庫: pandas:讀取 Excel 檔案,將學生的成績資料導入程式。 smtplib:用於設置 SMTP 伺服器並發送郵件。 datetime:生成唯一的時間標記,避免 Gmail 認定郵件內容相同。 12345import pandas as pdimport smtplibfrom email.mime.text import MIMETextfrom email.mime.multipart import MIMEMultipartfrom datetime import datetime 2. 讀取 Excel 檔案使用 pandas 讀取 Excel 檔案的「工作表 1」工作表。只提取所需的欄位:班級、學號、姓名、隨堂1 至 隨堂4。 123file...
Django WebSocket 前後端即時通訊
全部步驟總結 安裝必要的套件: 1pip install channels channels_redis channels:使 Django 支持 WebSocket。 channels_redis:用來實現 Channel Layer,讓不同的 WebSocket 連接能夠進行通訊。 設定 Django 專案: 在 settings.py 中添加 Channels 和 Channel Layer 配置: 12345678910111213141516INSTALLED_APPS = [ # 其他已安裝的應用 'channels', 'chat', # 你的 WebSocket 應用]ASGI_APPLICATION = 'classify.asgi.application'CHANNEL_LAYERS = { 'default': { 'BACKEND': 'channels_redis.core....














