Skip to content
Học Công nghệ Thông tin thực chiếnHọc Công nghệ Thông tin thực chiến
  • KHÓA HỌC
  • KIẾN THỨC
  • KÊNH YOUTUBE
  • NGƯỜI SÁNG LẬP
Học Công nghệ Thông tin thực chiếnHọc Công nghệ Thông tin thực chiến
  • KHÓA HỌC
  • KIẾN THỨC
  • KÊNH YOUTUBE
  • NGƯỜI SÁNG LẬP

Node.js xài trang nhớ bự chà bá lửa Hugepages bằng cơ chế Transparent HugePages để chạy tẹt ga

  • 09 May, 2025
  • Com 0
Học Công nghệ Thông tin thực chiến – Chuyên sâu – Nhanh gọn lẹ – Miễn phí 100% Node.js xài trang nhớ bự chà bá lửa Hugepages bằng cơ chế Transparent HugePages để chạy tẹt ga
Tóm tắt nội dung video

Chào mọi người

Đây là video miễn phí cuối cùng trên kênh nên mình cố gắng nói kĩ, nói sâu và nói rõ nhiều thứ.

Tóm tắt các nội dung chính trong video:

1. Phần này cho các bạn nào muốn học lập trình hệ thống viết bằng C++.

Soi code của Node.js viết bằng C, C++, Python, Javascript, Bash shell và không quên kèm 1 bài tập dành cho các bạn.

Kiểm chứng Javascript engine của Node.js là V8.

Soi phần lập trình bằng C++, Assembly để xài Hugepages bằng cơ chế Transparent HugePages của Node.js.

C++ có cho phép nhúng code C vào bằng từ khóa extern C

Bạn nào muốn làm Software Engineer thì nên coi hết phần 1 để khai phá vài thứ mình mần sương sương như:

  • Các thành phần của 1 file nhị phân ELF trên Linux như ELF header, các vùng .text, .rodata, .data.
    Ngày xưa thời đi học kiến thức yếu cứ tưởng file nhị phân chỉ chứa mã máy là 1 0 0 1.
  • Anonymous memory hoặc anonymous mappings hoặc anonymous pages là các vùng nhớ không phải từ filesystem mà nó từ vùng nhớ stack, heap của 1 chương trình chạy trên RAM hoặc từ hàm hệ thống là mmap.
  • Cấu trúc bộ nhớ của 1 chương trình chạy trên RAM như heap, stack mà Transparent HugePages chỉ ánh xạ được.

2. Node.js được đóng gói thành 3 phiên bản 18, 20, 22 ở dạng dnf module.

dnf modules và application streams là cải tiến đáng đồng tiền, chén gạo của dnf so với yum.

Cài Node.js được đóng gói sẵn trên AlmaLinux và Ubuntu 24.04 sẽ không xài được Transparent HugePages, lỗi này:

node: Mapping to large pages is not supported.

Nhưng cài Node.js từ chính chủ thì lại xài được cơ chế Transparent HugePages để cấp phát tự động Hugepages.

Oái ăm thay, vì đâu nên nỗi?

Mình quyết định không giải thích phần này và coi như đây là bài tập hổng biết lớn hay nhỏ cho các bạn.

Nghe nói giờ mấy con AI giờ thông minh lắm, giỏi lắm thay thế được lập trình viên òi nên các bạn hỏi nó vụ này xem sao.

3. Coi Node.js xài Hugepages bằng cơ chế Transparent HugePages bằng tham số thp_fault_alloc.

Chú ý là Node.js sẽ không xài trực tiếp các trang nhớ bự chá lửa Hugepages do mình cấp bằng tay nha.

Xài công cụ ab để benchmark web server chạy trên Node.js coi có ăn RAM nhiều không?

4. Giải thích code của 2 chương trình Javascript chạy trên Nodejs, để biết cái nào chạy ăn RAM hơn.

Cái này cho bạn nào muốn học Javascript cơ bản + nhanh gọn lẹ.

Cơm thêm

Transparent HugePages thường viết tắt là THP là cơ chế tự động cấp phát các trang nhớ bự chà bá lửa Hugepages.

Nó giúp mấy ông Linux system administrator sống cuộc đời nhàn hạ hơn vì không phải tính toán hay cấp phát Hugepages bằng tay nữa.

FreeBSD kernel cũng có 1 tham số là vm.pmap.pg_ps_enabled để tự động cấp phát Superpages giống như /sys/kernel/mm/transparent_hugepage/enabled trên Linux.

Hugepages có tên gọi khác là Superpages trên FreeBSD.

Hugepages cũng có tên gọi khác là Largepages trên Windows và VMware cũng hay xài từ này.

Hugepages còn có tên cũ là Big Pages từ thời xửa xưa trên RHEL 2.1.

Lập trình xài Hugepages bằng cơ chế Transparent HugePages bằng cách xài hàm madvise.

Video
Previous Lesson
Back to Course

Search

Categories

  • An toàn thông tin thực chiến (17)
  • Cơ sở dữ liệu thực chiến (6)
  • Computer security (1)
  • Công nghệ ảo hóa máy chủ (1)
  • Công nghệ lõi Công nghệ Thông tin (1)
  • Công nghệ lõi Linux (8)
  • Công nghệ phần mềm thực chiến (7)
  • Công nghệ Thông tin thực chiến (1)
  • Cybersecurity (1)
  • Đại số tổ hợp (1)
  • DevOps thực chiến (2)
  • Điện toán đám mây thực chiến (3)
  • Docker container (3)
  • Giải tích tổ hợp (1)
  • Hệ điều hành Linux thực chiến (8)
  • Học an toàn thông tin (1)
  • Học công nghệ thông tin thực chiến (1)
  • Information security (1)
  • Lập trình an toàn thông tin (2)
  • Lập trình thực chiến (1)
  • Linux hacking (1)
  • Linux thực chiến (2)
  • Olympic Toán 30 tháng 4 (1)
  • Oracle DBA (11)
  • Podman container (3)
  • Tích hợp hệ thống công nghệ thông tin thực chiến (1)

Tags

AlmaLinux 8 (2) Anaconda installer (3) Biên dịch Linux kernel (4) Biên dịch nhân Linux (4) Container-Optimized OS (3) Container Operating System (4) Container OS (4) Cài Oracle 21c (3) Công nghệ lõi Linux (3) Công nghệ phần mềm thực chiến (3) Fedora CoreOS (3) Hệ điều hành Linux thực chiến (4) Học an toàn thông tin (4) initramfs (2) Linux hugepages (3) Linux kernel (3) Linux kernel module (2) Linux PAM (5) Linux security (8) MySQL database developer (3) MySQL DBA (3) netplan (3) OpenSSH server (2) Oracle 21c (2) Oracle OUI (5) Oracle Universal Installer (5) Password hashing (4) Password hashing algorithm (6) Quản trị MySQL (3) RHEL 10 (2) Samba Active Directory Domain Controller (4) Samba AD DC (5) Samba AD Domain Controller (5) SMB protocol (3) Thuật toán băm mật khẩu (9) Thuật toán băm mật khẩu yescrypt (2) Thuật toán MD5 (3) Thuật toán SHA512 (5) Thuật toán yescrypt (4) Trung tâm dữ liệu (2) Tối ưu cơ sở dữ liệu MySQL (4) Tối ưu MySQL (4) Ubuntu netplan (3) vmlinuz (3) Điện toán đám mây (3)

Học Công nghệ Thông tin chuyên sâu
Tiết kiệm tiền bạc, thời gian, công sức cho người học
© Copyright 2024 CâyTreOS – Học IT thế kỉ 21

Học Công nghệ Thông tin thực chiếnHọc Công nghệ Thông tin thực chiến