Skip to main content

Posts

Showing posts from July, 2023

Viết "Hello World" bằng C, đọc và chạy Assembly x86-64 (phần 1)

Điều đầu tiên và quan trọng nhất khi đọc về C hay assembly là: không được sợ. Code có thể lạ hay dài, nhưng không hề khó, mà thường đơn giản. không yêu cầu biết C không yêu cầu biết assembly biết code đơn giản 1 ngôn ngữ bất kỳ đọc xong là biết. Bài viết liên quan hơi ngược lại với bài viết hello word bằng x86-64 assembly , viết thì khó hơn đọc, bởi viết cần nghĩ đủ thứ, lên kế hoạch viết gì tiếp, đặt tên ra sao, còn đọc thì chỉ cần đi theo. PS: nên đọc trên máy tính hay tablet để có format chuẩn. Cài đặt gcc gdb Trên Ubuntu sudo apt update && sudo apt install -y gcc gdb Viết Hello World bằng C Hơn "hello world" 1 chút, sẽ viết 1 function nhận vào 8 đầu vào và tính tổng. #include <stdio.h> int sum(int a, int b, int c, int d, int e, int f, int g, int h) { int s = a + b + c + d + e + f + g + h; return s; } int main() { puts("Hello world!"); int s = sum(1,2,3,4,5,6,7,8); return s*2; } Dòng include như import trong Pyt...

virt-manager error: Failed to start network default error: Unable to create bridge virbr0: Package not installed

$ sudo virsh net-start default error: Failed to start network default error: Unable to create bridge virbr0: Package not installed Or turn on the VM using virt-manager: Error starting domain: Requested operation is not valid: network 'default' is not active Solution Enable libvirtd to start with the system. systemctl enable libvirtd reboot HVN at http://pymi.vn and https://www.familug.org . Ủng hộ tác giả 🍺

SSD NVMe vs SATA, DisplayPort vs HDMI, USB downstream port

^---- USB Downstream | DisplayPort ----^ SSD NVMe khác gì SSD SATA Solid-state Drive (SSD) là thế hệ ổ cứng mới, không sử dụng đĩa quay như Hard Disk Drive (HDD), SSD tốc độ nhanh gấp 5 tới vài trăm lần so với HDD. SATA là gì Serial ATA (SATA) (~2004) là công nghệ sử dụng AHCI driver giao tiếp với ổ cứng HDD, công nghệ này cũng được dùng với SSD giúp cắm được vào các máy tính đời cũ, nhưng cản trở SSD bung mình bứt phá. Các ổ cứng SATA THƯỜNG có hình chữ nhật giống bao thuốc lá. NVMe là gì Non-Volatile Memory Express (NVMe) (~2011) driver được thiết kế cho SSD, kết hợp sử dụng khe cắm PCIe, cho tốc độ nhanh hơn SATA có thể lên tới 100 lần. Các ổ cứng NVMe THƯỜNG dài thon như 2 ngón tay, hay phong kẹo cao su. $ mount | grep ' on / ' /dev/nvme0n1p1 on / type ext4 (rw,relatime,errors=remount-ro) M.2 2280 vs 2.5 inch NVMe và SATA là các chuẩn giao tiếp, không phải hình dáng của ổ cứng. Hình dáng (form factor) có 2 loại phổ biến: 2.5 inch: hình dáng truyền thống củ...

Popular posts from this blog

Tài liệu và hướng dẫn học Python

Để tiết kiệm thời gian, tốt nhất là đi học PyMI Updated: 130617 Sau đây là các tài liệu khuyên dùng: Vì nhiều lý do, nên học python2.7 tại thời điểm hiện tại (giờ là tháng 6/2013 - muốn biết tại sao thì tự tìm hiểu) python 3.5+ (giờ là tháng 2/2017) Chuẩn bị: 1. biết bật tắt máy 2. biết cài python 3. tập gõ 10 ngón - gõ 2 ngón hay 1 ngón cũng không sao, nhưng 10 ngón là cách dễ nhất để gõ nhanh nhất. Tài liệu - Nên dùng tài liệu tại trang chủ của Python làm chính, tham khảo thêm các tài liệu khác tại http://www.familug.org/2016/12/free-ebook.html Căn bản, mới học 1.1 Python PyMI.vn https://pymi.vn/tutorial/ 1.2. Python offical tutorial kết hợp làm bài tập trên HackerRank  (đề bài bằng tiếng Anh, nhưng Google translate 1 lúc cũng ra vì có nhiều ví dụ mẫu đi kèm). Học viên của Pymi.vn có rất nhiều học viên đã tự học với Learn Python the hard way nhưng chưa thấy ai thành công cả. Hai link dưới nên đọc sau khi đã nắm được những phần cơ bản của ngôn ngữ pytho...

The PyMiers

New FAMILUG