Ngoc Son Lam Blog

This blog is created in order to share you something about some knowledge of technical as well as one of my hobbies - travelling. Hope you can find useful information in this blog.

Arduino - Trò chơi xếp hình Lego cho người yêu công nghệ

Arduino chính là nền tảng cho người mới bắt đầu học điện tử và lập trình. Hãy cùng học Arduino để tăng khả năng sáng tạo và tạo ra những sản phẩm thú vị.

Blog - Nhật ký điện tử

Hãy cùng tìm hiểu Blog là gì và cách tạo ra nó như thế nào bằng cách click vào hình ảnh này.

Travel Review

Click vào đây để xem các bài viết chia sẻ kinh nghiệm du lịch cũng như đánh giá về các điểm du lịch này.

Chủ Nhật, 4 tháng 11, 2018

Một số Template Blogspot miễn phí dành cho kênh phim

Bài viết này dành cho các bạn nào muốn làm về kênh chiếu phim, với một số Template Blogspot mà mình sưu tầm được. Và tất nhiên, tất cả đều miễn phí nên các bạn có thể Download về để phát triển kênh phim của mình.


Dưới đây là một số Template miễn phí cho kênh chiếu phim:

1. Film Reviews



2. Johny Darkmovie



3.  Movie Mag



4. Sora Film



5. Movie Gallery



6. Movieism Responsive



7. MovieXpose Responsive



8. Hashmovie




Trên đây là một số Template miễn phí mà mình sưu tầm được. Hy vọng nó sẽ giúp ích cho các bạn trong việc phát triển kênh phim của mình.

Chủ Nhật, 30 tháng 9, 2018

U-boot là gì?

Trong Hệ thống nhúng, một trong những thành phần quan trọng và được nhắc đến khá nhiều trong hệ thống phần mềm là U-boot. Vậy U-boot là gì? Hãy cùng theo dõi bài viết này để hiểu rõ hơn về nó nhé.

U-boot là gì?
U-boot được viết từ Universal Boot Loader, là loại Boot Loader phổ biến nhất.
U-boot là một tập mã nguồn mở, hỗ trợ boot loader cho nhiều nền tảng khác nhau. U-boot hỗ trợ các lệnh tương tác, các biến môi trường, các lệnh thực thi và boot hệ thống từ các thiết bị media bên ngoài. U-boot hỗ trợ nhiều loại CPU và các họ CPU thông dụng hiện nay. U-boot hỗ trợ các board phát triển trên nền các vi xử lý thông dụng.

Nhiệm vụ của U-boot
U-boot thực hiện cấu hình các khối phần cứng trong một board và đặt chúng vào trạng thái hoạt động. Nó có thể load và thực thi hệ điều hành một cách tự động (auto-boot) hoặc ngược lại, nghĩa là nó cho phép người dùng khởi động hệ điều hành thông qua các lệnh giao tiếp mà U-boot hỗ trợ.
Tập lệnh chuẩn của U-boot cung cấp khả năng cho phép người dùng thao tác trên bộ nhớ, mạng và nhiều thao tác khác khi hệ thống khởi động.
Khi quyền điều khiển được chuyển đến cho U-boot, nó sẽ khởi tạo các ngắt (interupt) và các thiết bị ngoại vi. Sau đó, U-boot chờ nhập các dòng lệnh từ người dùng. Nếu người dùng nhận được lệnh boot Image của Kernel hoặc nếu nó được sử dụng để boot Kernel trực tiếp thì U-boot sẽ giải nén Kernel Image, load Kernel lên bộ nhớ và chuyển điều khiển đến Kernel.

Đặc điểm
Thông thường, U-boot được đặt trong phân vùng đầu tiên của bộ nhớ Flash, bắt đầu từ sector hay block nào được định nghĩa bởi vi xử lý. U-boot khởi tạo CPU và một vài phần cứng trên board, tạo một vài kiến trúc dữ liệu để Kernel sử dụng và load nó lên phân vùng đầu tiên của bộ nhớ.
U-boot cung cấp các hàm chuẩn để hiệu chỉnh quá trình khởi động và khởi tạo Kernel. Thường thì nó cung cấp các thao tác dưới dạng các dòng lệnh, hay còn gọi là command line.

Cấu trúc thư mục của U-boot

  • Thư mục board xác định nhiều kiến trúc nền khác nhau của các hãng khác nhau như Atmel, Ciruss,... Thư mục này cũng bao gồm các hàm khởi tạo các board, các hàm này có thể gọi từ thư viện lib_<arch>/board.
  • Thư mục board/<board_name> xác định thông tin chi tiết cho hệ thống, thư mục này chứa các tập tin khởi tạo cần thiết cho mỗi hệ thống bao gồm các tập tin như asm_init.S, config.mk, flash.c.
  • Thư mục common chứa tập tin định nghĩa các lệnh của U-boot, các biến môi trường như cmd_boot.c, cmd_date.c, environment, env.c, main.c,...
  • Thư mục cpu bao gồm các tập tin xác định các thông số , khởi tạo các ngắt, bộ nhớ đệm,...cho CPU như cpu.c, cpu_init.c, interrupts.c,...
  • Thư mục disk chứa các tập tin phân vùng và thông tin thiết bị cho ổ đĩa
  • Thư mục driver chứa các tập tin thiết bị như ethernet, usb, serial,...
  • Thư mục include bao gồm nhiều tập tin header như console.h, version.h,...Trong đó, version.h định nghĩa phiên bản của U-boot ở dòng #define u-boot_VERSION "xxx" 
  • Thư mục include/configs chứa các cấu hình cho các board
  • Thư mục lib_generic chứa các thư viện chung như string.c,...
  • Thư mục net chứa các tập tin Ethernet như eth.c, tftp.c, bootp.c,...
  • Thư mục fs chứa các tập tin hệ thống như fat, jffs2,...
  • Thư mục rtc chứa các tập tin đồng hồ thời gian thực 
  • Thư mục tools chứa các thư mục và tập tin hỗ trợ biên dịch, gỡ rối
  • Thư mục post bao gồm các tập tin và thư mục như post.c, codec.c, uart.c,...


Boot Loader là gì?

Khi làm việc với Hệ thống nhúng, chắc hẳn bạn sẽ được nghe về từ "Boot Loader". Vậy Boot Loader trong hệ thống nhúng là gì? Hãy cùng tìm hiểu qua bài viết này nhé.


Boot Loader là gì?
Boot Loader là một thành phần quan trọng của hệ thống nhúng, là tên gọi chung một phần mềm được cài đặt trước vào hệ thống. Phần mềm này có nhiệm vụ khởi tạo hệ thống và thực hiện giao tiếp giữa hệ thống với người sử dụng. 
Boot Loader cung cấp nền tảng và phân bố cho các hệ thống phần mềm khác hoạt động. Bất cứ chương trình nào muốn chạy, nó phải được Boot Loader lấy mã số khởi tạo từ thiết bị lưu trữ (thường là bộ nhớ Flash) để khởi động. Boot Loader sẽ chịu trách nhiệm quản lý chương trình đó trong suốt quá trình sống của nó.
Vị trí của Boot Loader trong hệ thống phần mềm của hệ thống nhúng
Như vậy, Boot Loader sẽ làm các nhiệm vụ sau đây:
  • Khởi tạo phần cứng
  • Thiết lập bộ nhớ RAM (DRAM)
  • Thiết lập bộ xử lý
  • Load hệ điều hành
Có nhiều phiên bản cũng như nhiều loại Boot Loader. Các bộ xử lý của Ciruss Logic như EP9315 thì sử dụng red boot, AMCC với Power PC, trong khi ARM9 của Atmel thì sử dụng U-boot, và đây cũng chính là loại được sử dụng phổ biến nhất.

Tại sao cần Boot Loader?
Như định nghĩa, Boot Loader có nhiệm vụ khởi tạo hệ thống, nghĩa là chương trình phải được load lên bộ nhớ rồi mới chạy được.

Đặc điểm của Boot Loader
Boot Loader có các tính năng như:
  • Khả năng xác nhận image của hệ điều hành, lựa chọn một trong số các image hệ điều hành dựa trên chính sách phát triển đã được xác định
  • Hỗ trợ cho các giao tiếp Ethernet
  • Hỗ trợ các giao thức BOOTP (Bootstrap Protocol), DHCP (Dynamic Host Control Protocol) và TFTP (Trivial File Transfer Protocol).



10 template Blogspot video miễn phí

Bài viết này mình sẽ chia sẻ với các bạn 10 template Blogspot chia sẻ video clip miễn phí với giao diện đẹp, thích hợp cho các bạn làm về trang chia sẻ video nhạc, hoạt hình, hay thậm chí là...à mà thôi :)))


Dưới đây là một số Template Blogspot chia sẻ video miễn phí, các bạn có thể click vào "Download" để tải về nhé:

1. BlogTube



2. Digbug Video



3. GAG991 Galley Video



4. Vegeta



5. VideoBox



6. Video Mag



7. Video Play



8. Video Portal



9. Video Pro



10. Video Tube Responsive




Bên trên là một số Template miễn phí mà mình sưu tầm được. Hy vọng nó sẽ giúp các bạn phát triển một trang chia sẻ video hay và hữu ích.

Thứ Tư, 26 tháng 9, 2018

Một số Template Blogspot tin tức miễn phí

Trong bài viết này, mình sẽ chia sẻ với các bạn một số Template Blogspot với giao diện đẹp, thích hợp cho bạn nào muốn tạo cho mình một trang blog về tin tức. Và như tiêu đề bài viết, các Template này hoàn toàn miễn phí nên các bạn có thể Download về để phát triển trang blog của mình.

Dưới đây là một số Template Blogspot về tin tức miễn phí, các bạn có thể click vào "Download" để tải về:

1. Easy Mag



2. Icofp



3. Magma News Responsive



4. New Spread



5. Publister



6. Sports Mag



7. TechPro



8. TechWise



9. ViralNews



10. X-Mag




Bên trên là 10 Template Blogspot dành cho trang tin tức mà mình sưu tầm được. Hy vọng nó sẽ giúp cho các bạn xây dựng được một trang blog với nhiều tin tức hay và bổ ích. Chúc các bạn thành công.

Thứ Hai, 24 tháng 9, 2018

Cách tạo bộ lọc để quản lý email dễ dàng hơn

Đôi khi khi làm việc, bạn sẽ nhận được rất nhiều email mỗi ngày, từ những email quan trọng đến những email "tám" chuyện cá nhân, hay những email không cần phải đọc đến. Vấn đề là có quá nhiều email đến, nếu không cẩn thận, bạn có thể bỏ quên một thư quan trọng nào đó. Vậy làm sao bạn có thể quản lý hộp thư của bạn một cách khoa học? Vì vậy, bài viết này sẽ hướng dẫn các bạn tạo ra một bộ lọc thư theo thư mục để bạn có thể quản lý và tìm kiếm một cách dễ dàng và nhanh chóng.



Trong bài viết này, mình sẽ ví dụ rằng mình cần lọc các email có chủ đề là "Demo" vào một thư mục mà mình cũng đặt tên là "Demo" luôn. Vậy thì mình sẽ làm như sau:

Bước 1: Click vào dấu mũi tên trong ô tìm kiếm


Bước 2: Chọn tùy chọn cho bộ lọc, có nghĩa là bạn muốn lọc thư theo chủ đề, hay theo email gửi đến, hay các mail có các từ nào đó thì cho vô một thư mục,... Ở đây, do cần lọc các mail có chủ đề là "Demo" nên mình sẽ gõ "Demo" vào mục "Chủ đề":


Bước 3: Chọn "Tạo bộ lọc":


Bước 4: Các bạn chọn "Áp dụng nhãn", sau đó click vào "Chọn nhãn" và chọn "Nhãn mới":


Bước 5: Điền tên nhãn mới (tên thư mục mà bạn muốn mail sẽ chạy vào đây). Ở đây, mình sẽ đặt tên nhãn là Demo, sau đó chọn "Tạo":


Bước 6: Chọn "Tạo bộ lọc":


Như vậy, từ đây về sau, các email được gửi đến có chủ đề "Demo" sẽ chạy vào thư mục/ nhãn "Demo" vừa tạo. Nếu cần tìm kiếm các thư có chủ đề này, bạn chỉ việc click vào thư mục Demo.



Lưu ý:
Khi các bạn tạo bộ lọc này, nó sẽ chỉ áp dụng cho các mail mới được gửi đến.

Như vậy, chỉ với một vài thao tác đơn giản, bạn sẽ đỡ mất thời gian cho việc tìm kiếm mail cũng như quản lý hộp thư một cách khoa học hơn. Chúc các bạn thành công.



Chủ Nhật, 23 tháng 9, 2018

Cách chia sẻ dữ liệu trên Google Drive

Google Drive là một trong những cộng cụ lưu trữ dữ liệu phổ biến và tiện dụng nhất hiện nay. Bạn có thể lưu trữ các loại dữ liệu như tập tin, hình ảnh, video,... Tuy nhiên, nếu bạn chia sẻ cho người khác các dữ liệu này thì bạn cần phải làm thêm một số bước đơn giản nữa, nếu không người khác sẽ không thể xem và download các dữ liệu mà bạn muốn chia sẻ được. Bài viết này sẽ hướng dẫn các bạn thực hiện các thao tác cho việc chia sẻ dữ liệu trên Google Drive.
Như đã nói, bài viết này hướng dẫn các bạn cách chia sẻ dữ liệu cho người khác. Nên mình sẽ hiểu là các bạn đã biết sử dụng Google Drive để upload dữ liệu lên rồi. Vậy nên các bạn sẽ làm các bước sau để cho phép người khác có thể xem và download dữ liệu mà các bạn muốn chia sẻ:

Bước 1: Truy cập Google Drive:
Các bạn có thể truy cập tại Đây.

Bước 2: Click chuột phải vào tập tin mà bạn muốn chia sẻ. Sau đó chọn "Chia sẻ":

Bước 3: Chọn "Nhận liên kết có thể chia sẻ được":


Bước 4: Cửa sổ mới hiện ra. Bạn sẽ thấy có một link để bạn chia sẻ dữ liệu của mình. Do đó, bạn sẽ chọn "Sao chép liên kết", sau đó chọn "Xong":


Người khác sẽ truy cập vào link này để xem hoặc download dữ liệu mà bạn chia sẻ.
Ngoài ra, trong trường hợp bạn chỉ muốn chia sẻ cho một hay một nhóm người nào đó, tại bước này, các bạn sẽ nhập email của người mà các bạn muốn chia sẻ vào phần "Người":


Như vậy, chỉ với một vài thao tác, bạn đã có thể chia sẻ dữ liệu của mình theo cách mà bạn mong muốn. Rất đơn giản phải không?

Sharpkey - Phần mềm đổi chức năng các phím trên bàn phím

SharpKey là phần mềm cho phép bạn thay đổi chức năng các phím trên bàn phím dễ dàng theo ý muốn để tiện sử dụng hoặc dùng thay thế các phím bị hỏng.


Tính năng
     - SharpKey giúp cho bạn sắp xếp chức năng các phím theo ý muốn một cách dễ dàng, tạo nên sự thuận tiện cho chính bạn
      - Bạn có thể thay đổi một số phím trong trường hợp phím bị hỏng, bị liệt không gõ được bằng các phím hoạt động tốt nhưng bạn lại hiếm khi xài đến
     - Bạn có thể sử dụng Sharpkey để vô hiệu hóa các phím không sử dụng đến
     - Giao diện trực quan, dễ dàng sử dụng

Download:
Các bạn có thể click link bên dưới để tiến hành download: 

Thứ Bảy, 22 tháng 9, 2018

Chế độ Safe-mode trên máy tính Window

Đôi khi máy tính của bạn không vào được Window hoặc bị dính malware/ adware thì cũng đừng vội hoảng hốt. Bởi vì Window đã hỗ trợ một cộng cụ khá hiệu quả để sửa được lỗi trong khá nhiều trường hợp, đó chính là Safe mode.


Safe mode là gì?
Safe mode là giao diện người dùng mà khi Window khởi động, nó sẽ không chạy hết các trình điều khiển mà chỉ khởi động các driver, dịch vụ và các chương trình cơ bản. Cũng chính vì Safe mode sẽ khởi động máy tính mà không tải các ứng dụng và trình điều khiển của bên thứ 3 nên nó chính là giải pháp tuyệt vời trong trường hợp máy tính của bạn bị lỗi do trình điều khiển gây ra.
Trong Safe mode, Window chỉ sử dụng độ phân giải ở mức rất thấp, chỉ 640x480 hoặc 800x600 pixel, chạy trong phạm vi 16 màu.

Window khi ở chế độ Safe mode


Khi nào cần Safe mode?
Thông thường, máy tính của bạn rất ít khi khởi động ở chế độ Safe mode. Do đó, nếu bạn thấy máy tính tự khởi động ở chế độ này, có nghĩa là nó phát hiện có lỗi hệ thống hoặc do khởi động không đúng cách,... Trong trường hợp này, bạn phải vào Safe mode, tìm và kiểm tra các trình điều khiển thiết bị mà bạn đã cài đặt gần đây, gỡ bỏ các trình điều khiển không làm việc, chúng có thể là nguyên nhân gây ra lỗi.
Tuy nhiên, trước hết bạn cũng có thể kiểm tra xem lỗi do phần cứng hay phần mềm gây ra. Nếu bình thường, máy tính của bạn bị lỗi, nhưng ở chế độ Safe mode lại không bị lỗi thì nhiều khả năng lỗi gây ra do phần mềm. Trong trường hợp máy tính bạn bị lỗi ở chế độ khởi động bình thường và cả Safe mode thì nhiều khả năng là do phần cứng.
Ngoài ra, bạn có thể dùng Safe mode để diệt Malware/Adware. Khi bị dính loại virus này, có thể bạn sẽ không diệt được chúng do chúng chạy ngầm và vô hiệu hóa trình diệt virus. Lúc này, hãy nghĩ đến Safe mode như là giải pháp đầu tiên.

Làm thế nào để vào Safe mode trên Window 7?
Có 2 cách để vào Safe mode trên Window 7:

CÁCH 1: SỬ DỤNG PHÍM F8
Bước 1: Khởi động máy tính
Bước 2: Khi nhìn thấy màn hình hiển thị dòng laptop (ví dụ như hình dưới) thì nhấn giữ phím F8 cho đến khi xuất hiện màn hình Advanced Boot Option.
Laptop Asus khi khởi động
Màn hình Advanced Boot Option như sau:

Bước 3: Chọn Option vào Safe mode
Như hình trên, có 3 lựa chọn vào Safe mode trên Window 7, bạn sẽ dùng phím mũi tên lên xuống để lựa chọn các options này:
  • Safe mode: chế độ mặc định, chế độ này chỉ khởi động một số driver cần thiết cho Window
  • Safe mode with Networking: Giống với chế độ mặc định, nhưng chế độ này sẽ cho phép Window khởi động các driver kết nối mạng để bạn có thể làm các việc cần sử dụng Internet.
  • Safe mode with Command Prompt: ở chế độ này, Window sẽ không khởi động Window Explorer mà thay vào đó là Command Prompt. Tức là bạn sẽ thực hiện các thao tác bằng các dòng lệnh trên Command Prompt chứ không phải là một giao diện trực quan như bình thường. Trong một số trường hợp, bạn sẽ phải sử dụng chế độ này nếu safe mode không hoạt động được. 
Chế độ Safe mode with Command Prompt

Bước 4: chờ máy tính khởi động

CÁCH 2: SỬ DỤNG CÔNG CỤ SYSTEM CONFIGURATION
Có thể bạn sẽ cảm thấy cách thứ nhất khá rắc rối, vì nếu nhấn F8 không kịp thì máy tính sẽ vào thẳng Window luôn chứ không hiện ra màn hình Advanced Boot Option để các bạn lựa chọn chế độ vào Safe mode. Vậy bạn có thể sử dụng cách thứ 2 này nhé.

Bước 1: Chọn Start, gõ vào "msconfig"
Bước 2: Click chuột phải vào msconfig và chọn "Run as Administrator":

Bước 3: Lúc này, cửa sổ System Configuration hiện ra, các bạn chọn sang tab "boot":


Bên dưới, ở mục "Boot Options", các bạn tick chọn vào ô "Safe boot".
Nếu bạn muốn vào Safe mode mặc định thì tick chọn ô "Minimal", còn nếu muốn vào Safe mode with Networking thì tick chọn ô "Network"

Bước 4: Chọn Apply, sau đó chọn OK
Lúc này, có một hộp thoại nhỏ xuất hiện. Các bạn chọn "Restart" để áp dụng thay đổi. Máy tính của bạn sẽ được khởi động lại và vào chế độ Safe mode mà bạn đã chọn ở bước 3.

Lưu ý:
Đối với cách này, nếu bạn muốn Window khởi động lại bình thường (không vào Safe mode) thì bạn làm như sau:
Bước 1 và Bước 2: làm như trên
Bước 3: Khi cửa sổ System Configuration hiện ra, ở tab "General", các bạn tick chọn vào "Normal Startup". Sau đó, mở tab "boot" kiểm tra xem mục "Safe boot" có đang được tick chọn không, nếu có thì phải bỏ tick đi.

Bước 4: Chọn Apply, sau đó chọn OK và restart lại máy tính để áp dụng thay đổi.

Như vậy, bạn có thể thấy, đối với cách thứ 2 sẽ tiện dụng hơn một chút do máy tính sẽ lưu được trạng thái vào Safe mode, bạn sẽ không cần nhấn giữ phím F8 như cách 1. Tuy nhiên, cách thứ 2 này lại được khuyên là nên hạn chế sử dụng để tránh phát sinh lỗi trong Window.