Grokking Newsletter

Share this post

#83 - Kernel Address Space Layout Randomization

newsletter.grokking.org

#83 - Kernel Address Space Layout Randomization

Grokking Vietnam
Aug 18, 2019
Share this post

#83 - Kernel Address Space Layout Randomization

newsletter.grokking.org

Để giúp cải thiện chất lượng nội dung của newsletter, mong bạn dành ít thời gian phản hồi cũng như đóng góp ý tưởng giúp team thông qua link khảo sát hàng tuần ở đây nhé: tại đây.


Những bài viết hay

Dijkstra's Banker's Algorithm — www.hackerearth.com

Deadlock State là một trạng thái không an toàn tất cả process đều giữ tài nguyên mà chúng đang sử dụng và yêu cầu thêm tài nguyên của nhau. Để tránh rơi vào trạng thái deadlock, thuật toán Banker được tạo bởi Dijkstra nhằm cấp phát tài nguyên hợp lý cho những process yêu cầu.

Transactional Memory — berb.github.io

Khái niệm một transaction trong database là tập hợp những thao tác đọc ghi những row data mà nó tách biệt với những transaction khác. Với memory, khái niệm transaction memory cũng được thiết kế với mục đích tương tự với đối tượng là thread.

Kernel address space layout randomization — lwn.net

Khi một process được thực thi, những tài nguyên cần thiết được load vào main memory và được cấp những địa chỉ vùng nhớ khác nhau. Một người có thể tấn công vào hệ thống bằng cách thêm vào những đoạn code để process đó thực thi nếu biết được địa chỉ vùng nhớ của một function. Do vậy, Kernel address space layout randomization (KASLR) là cơ chế cấp phát địa chỉ vùng nhớ được nghiên cứu và áp dụng để ngăn chặn vấn đề này. Ngoài ra còn những phương pháp khác có thể tìm hiểu tại đây.

Bạn có biết

Từ C# 7.2, một kiểu dữ liệu mới được Microsoft đưa ra với tên gọi Span<T> với mục đích giúp tăng performance bằng cách cho phép developer làm việc trực tiếp với memory một cách dễ dàng hơn.

  • Cho phép làm việc với tất cả các loại memory thậm chí là unmanage memory.

  • Cần System.Memory package, C# 7.2 trở lên.

  • Làm việc với native memory dễ dàng hơn.

  • Đơn giản hóa con trỏ (pointer arithmetic).

  • Tránh việc phân bổ và sao chép memory bằng cách sử dụng slice.

  • Hỗ trợ .NET Standard 1.1+

  • Hiệu suất ngang bằng với Array

  • Tuy nhiên nó cũng có một số giới hạn do việc chỉ hỗ trợ stack

Các bạn có thể tham khảo thêm thông tin tại đây

Code & Tools

Introduction · React Bits — vasanthk.gitbooks.io

Tổng hợp các kỹ thuật, patterns and tips trong ReactJS

GitHub - hoanhan101/ultimate-go — github.com

Gợi ý tài liệu hướng dẫn cho những bạn muốn tìm hiểu Go

Sự kiện công nghệ

Google Cloud Platform Seminar in Ha Noi — www.facebook.com

Sự kiện do Cloud Ace - Google Cloud Premier Partner tổ chức MIỄN PHÍ dành cho tất cả các bạn quan tâm đến nền tảng Google Cloud.

Thời gian: 16h-18h, Thứ Sáu, 23/8/2019

Địa Điểm: VTI Corporation, Tầng 8, Tòa nhà AC, ngõ 78 Duy Tân, Cầu Giấy, Hà Nội

Google Cloud Platform Seminar in Ho Chi Minh city — www.facebook.com

Sự kiện do Cloud Ace - Google Cloud Premier Partner kết hợp cùng CoderSchool tổ chức MIỄN PHÍ dành cho tất cả các bạn quan tâm đến nền tảng Google Cloud.

Thời gian: 9h-11h, Thứ Tư, 28/8/2019

Địa điểm: Circo Coworking space, Lầu 1, 384 Hoàng Diệu, P. 6, Q. 4, TP. HCM

This week sponsor

Được thành lập từ năm 2004, VNG Corporation là một trong những công ty Internet Công Nghệ hàng đầu tại Việt Nam, được vinh danh là start-up kỳ lân đầu tiên của Việt Nam tính đến thời điểm hiện tại. VNG nuôi dưỡng hệ sinh thái dịch vụ đa dạng như trò chơi trực tuyến, nền tảng kết nối, tài chính, thanh toán, dịch vụ đám mây… Với sứ mệnh “thay đổi Internet để thay đổi cuộc sống người Việt”, VNG không ngừng cải tiến và hoàn thiện hơn các sản phẩm giúp người dùng có những trải nghiệm ấn tượng và tốt đẹp.

VNG hiện có 3 văn phòng tại Việt Nam (Hồ Chí Minh, Hà Nội, Đà Nẵng) và 3 văn phòng tại các nước Thái Lan, Singapore, Myanmar.

Góc tuyển dụng

GAME DEVELOPMENT FRESHER — career.vng.com.vn Với lộ trình thiết kế để Fresher được phát triển toàn diện về kiến thức chuyên môn lẫn kỹ năng mềm, VNG sẵn sàng chào đón các bạn trẻ CNTT tài năng ngay cả khi còn ngồi trên ghế nhà trường. Đừng để cơ hội vụt khỏi tầm tay, nắm bắt ngay thông tin mới nhất về Game Development Fresher 2019 nhé!

Quote

"One of the best programming skills you can have is knowing when to walk away for awhile." - Oscar Godson

Share this post

#83 - Kernel Address Space Layout Randomization

newsletter.grokking.org
Comments
TopNewCommunity

No posts

Ready for more?

© 2023 Grokking Vietnam
Privacy ∙ Terms ∙ Collection notice
Start WritingGet the app
Substack is the home for great writing