這門課是為建立 Linux 可程式設計程式庫,Makefiles,記憶體管理,編譯與連結,C 語言程式設計的開發者所設計的課程
從這 12 小時的課程,你會學到
1 使用 C/C++ 中學習進階的程式設計概念
2 C/C++ 程式庫的開發與整合
3 使用 Makefile 自動建構流程
4 使用函式指標作為 Callbacks
5 靜態和動態程式庫及連結GCC 編譯器的編譯流程
6 將程式碼組織到標頭檔( Header )和原始檔中
與計時器一起工作
7 理解記憶體配置,Heap 記憶體管理,記憶體洩漏( Memory Leaks )
8 堆疊記憶體,堆疊溢位,堆疊損壞,堆疊暫存器
9 分頁概念和分頁表( Page Tables )
https://softnshare.com/advance-programming-concepts/
「linux memory」的推薦目錄:
- 關於linux memory 在 軟體開發學習資訊分享 Facebook 的最佳貼文
- 關於linux memory 在 BorntoDev Facebook 的最佳解答
- 關於linux memory 在 BorntoDev Facebook 的精選貼文
- 關於linux memory 在 Memory mapping — The Linux Kernel documentation 的評價
- 關於linux memory 在 linux/memory.c at master · torvalds/linux - GitHub 的評價
- 關於linux memory 在 How To Check RAM Size And Memory Usage - Linux - YouTube 的評價
- 關於linux memory 在 How to Read Entire RAM - Memory in Linux - YouTube 的評價
- 關於linux memory 在 Peak memory usage of a linux/unix process - Stack Overflow 的評價
- 關於linux memory 在 What is difference between cached memory and used memory? 的評價
linux memory 在 BorntoDev Facebook 的最佳解答
รู้หรือไม่ !! มี Tools เจ๋ง ๆ ที่ช่วยให้เราทำแอปบนเดสก์ท็อปด้วยนะ นั่นคือ Electron.js นั่นเอง !!
.
และวันนี้แอดจะพาเพื่อน ๆ มาทำความรู้จักกับเจ้านี่กัน ว่ามันคืออะไร มีรายละเอียดยังไง หากพร้อมแล้วไปอ่านกันเลยจ้าาา ~~
.
⭐ Electron.js เป็น Framework แบบ Open-Source ซึ่งพัฒนาโดย GitHub ใช้สำหรับพัฒนาแอปพลิเคชันบนเดสก์ท็อปด้วยภาษา JavaScript, HTML, CSS และ Node JS เอาเป็นว่าใครที่เขียนเว็บมาบ้างแล้ว ก็สามารถใช้งานเจ้านี่ได้ง่าย ๆ เลย
.
✨ หลักการทำงานของ Electron.js
.
Electron.js จะใช้แนวคิดการทำงานของ Chromium ซึ่งจะแบ่งเป็น 2 ส่วนคือ Main Process และ Renderer Process
.
🔸 Main Process - เป็นส่วนที่ช่วยรับ-ส่ง Request ระหว่าง Browser Windows นั่นเอง โดยจะรองรับการทำงานของ GUI และช่วยจัดการในส่วนของ Memory ไม่ว่าจะเป็นการ Destruction และ Handle เพื่อป้องกันการ Memory Leak นั่นเอง
.
🔸 Renderer Process - เมื่อได้รับ Request จาก Main Process เจ้านี่ก็จะทำการแสดงผล UI แต่ละหน้า โดยการรันไฟล์ HTML, CSS และ JavaScript ของเรานั่นเอง
.
Electron.js ดียังไงนะ ?
.
🌟 1) พัฒนาได้ง่าย - เพียงแแค่ใช้ภาษาที่เราคุ้นเคยกันอยู่แล้ว ไม่ว่าจะเป็น HTML, CSS, หรือ JavaScript Dev แบบเรา ๆ ไม่ต้องเรียนรู้นานก็สามารถพัฒนาแอปพลิเคชันบนระบบปฏิบัติการต่าง ๆ ได้ง่ายเลย
.
🌟 2) มีประสิทธิภาพ - เนื่องจาก JavaScript เป็นภาษาที่มีประสิทธิภาพมาก ๆ มีการใช้กันอย่างกว้างขวาง ซึ่งมันสามารถแก้ไขข้อบกพร่อง และเพิ่มประสิทธิภาพของแอปพลิเคชันได้อย่างง่ายดาย
.
🌟 3) อัปเดตได้อย่างอัตโนมัติ - แอปพลิเคชันที่ถูกพัฒนาด้วย Electron.js มีการทำ autoUpdater สามารถอัปเดตได้ด้วยตัวเองอย่างอัตโนมัติทันทีเมื่อมีเวอร์ชันใหม่ ๆ ออกมานั่นเอง
.
🌟 4) รองรับ Closs-Platform - แอปพลิเคชันที่ถูกพัฒนาบน Electron.js สามารถรันบนระบบปฏิบัติการต่าง ๆ ได้เลย ไม่ว่าจะเป็น Windows, macOS และ Linux
.
🌟 5) มี Community สำหรับ Dev - Electron.js เป็น Open-Soure ที่มีผู้คนใช้กันเยอะมาก และมีแหล่งความรู้มากมายให้เหล่า Dev ได้ศึกษา แถมยังมีการพัฒนา Lib และ Tools ต่าง ๆ เพื่อช่วยเพิ่มประสิทธิภาพอีกด้วย
.
💥 ส่วนใครอยากลองใช้งานคลิกเลย >> https://www.electronjs.org/
.
borntoDev - 🦖 สร้างการเรียนรู้ที่ดีสำหรับสายไอทีในทุกวัน
linux memory 在 BorntoDev Facebook 的精選貼文
เพื่อน ๆ ที่เขียนโปรแกรมด้วย Java หลาย ๆ คนอาจจะยังไม่รู้จักว่า JVM นั้นมันคืออะไร... ทำงานอย่างไร...
.
วันนี้แอดจะมาสรุปวิธีการทำงานของ JVM ให้เพื่อน ๆ พอที่จะเห็นภาพกัน หาพร้อมแล้วไปอ่านกันนนน
.
🔹 JVM (Java Virtual Machine) - เป็นเอ็นจิ้นที่จัดเตรียมสภาพแวดล้อมเพื่อรันโค้ด Java ซึ่ง JVM มีหน้าที่รับผิดชอบในการแปลง Bytecode เป็นรหัสเฉพาะเครื่อง ซึ่งเจ้า JVM นี้จะสามารถติดตั้งได้บนทุก Platform ไม่ว่าจะเป็น Unix, Linux หรือ Windows
.
⚙️ วิธีการทำงานของ JVM แบ่งได้ดังนี้
🌟 Class Loader Subsystem
เป็นส่วนที่ใช้จัดการ Class Loader Subsystem โดยจะอ่านไฟล์ .class และสร้างเป็น Bytecode บันทึกไว้ใน Method Area จากนั้นจะสร้าง Object เพื่อเป็นตัวแทนไฟล์ไว้ใน Heap Memory
.
🌟 Runtime Data Area (JVM Memory)
ส่วนนี้จะเป็นการจัดสรรพื้นที่ของ Memory ให้เหมาะสม เพื่อนำไปใช้งานในแต่ละส่วน ได้แก่ Method Area , Heap Area, Stack Area, PC Register, Native Method Stack นั่นเอง
.
🌟 Execution Engine
เป็นส่วนที่ใช้ควบคุมกระบวนการทำงานต่าง ๆ ซึ่ง Bytecode ที่อยู่ใน Runtime Data Area จะถูกประมวลผลด้วย Execution Engine โดยจะอ่าน Bytecode และประมวลผลทีละบรรทัด
.
🌟 Native Method Interface
เป็น Interface ที่ใช้โต้ตอบกับ Native Method Library ทำให้ JVM สามารถเรียกใช้งาน C/C++ library ได้นั่นเอง
🌟 Native Method Library
เป็นที่รวบรวม Native Library ที่จำเป็นต่อการใช้งานใน Native Method Interface นั่นเอง
.
จบกันไปแล้วววว! หากใครมีอะไรเพิ่มเติม สามารถคอมเมนต์พูดคุยกันได้เลยน้าาา และหวังว่าจะเป็นประโยชน์กับเพื่อน ๆ นะคร้าบบบบ 🥰
.
borntoDev - 🦖 สร้างการเรียนรู้ที่ดีสำหรับสายไอทีในทุกวัน
linux memory 在 linux/memory.c at master · torvalds/linux - GitHub 的推薦與評價
SPDX-License-Identifier: GPL-2.0-only. /*. * linux/mm/memory.c. *. * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds. ... <看更多>
linux memory 在 How To Check RAM Size And Memory Usage - Linux - YouTube 的推薦與評價
https://low-orbit.net/ linux -how-to-check- ram -size-and- memory -usageLinux - How To Check RAM Size And Memory Usage. ... <看更多>
linux memory 在 Memory mapping — The Linux Kernel documentation 的推薦與評價
In the Linux kernel it is possible to map a kernel address space to a user address ... For the same reason, the kernel space contains a memory mapped zone, ... ... <看更多>