Hệ điều hành Android sẽ được viết lại trên nền tảng mới

14:36 | 08/01/2016

Mới đây, Google đã xác nhận, hãng sẽ ngừng sử dụng Oracle JDK - giao diện lập trình ứng dụng API (Application Programming Interface) độc quyền của Oracle trong những phiên bản Android kế tiếp. Thay vào đó, Google sẽ chuyển sang dùng Open JDK - một mã nguồn mở lập trình Java khác được Sun Microsystems công bố năm 2007.



Mặc dù, cả 2 giao diện lập trình ứng dụng này đều dựa trên ngôn ngữ lập trình Java. Tuy nhiên, sự thay đổi này có thể ảnh hưởng đến 8.902 tệp tin hệ điều hành Android cũng như quy trình phát triển ứng dụng cho nền tảng di động này trong tương lai.

Hành động này của Google được cho là có liên quan đến vụ kiện bản quyền với hãng Oracle bắt đầu từ năm 2010. Cụ thể, Oracle JDK được Google sử dụng để lập trình cho các phiên bản trước đây của nền tảng Android đều thuộc quyền sở hữu của Oracle. Nghĩa là Google chỉ có thể kế thừa, phát triển bộ API này chứ không được phép chỉnh sửa, tùy biến theo mục đích khác. Tuy nhiên, Google cho rằng Oracle JDK của Oracle chỉ là công cụ để phát triển, sáng tạo ứng dụng nên nó không thể bị độc quyền. Tranh chấp pháp lý này đã kéo dài hơn 5 năm mà vẫn chưa có phán quyết cuối cùng của tòa án. Rất có thể, với việc chuyển sang sử dụng Open JDK sẽ là dấu hiệu chấm dứt vụ kiện giữa Google và Oracle.

Trước đó, người dùng đã thấy được sự thay đổi khi Google bắt đầu đưa OpenJDK code vào Android trong một đoạn code commit:

<Box không màu>

Initial import of OpenJdk files.

Create new libcore/ojluni directory with src/main/java and src/main/native subdirectiories.

Build ojluni into core-oj jar.

Use openjdk classes from java.awt.font package.

Copy all files from jdk/src/share/classes and jdk/src/solaris/classes directories in openjdk into libcore/ojluni/src/main/java.

Copy following native files from openjdk to libcore/ojluni/src/main/native: [long list of files]

Oracle JDK có tiền thân là Sun JDK (Sun Java Development Kit). Sun JDK được phát triển bởi Sun Microsystems. Tuy nhiên, năm 2009, Sun Microsystems đã bị Oracle mua lại và chuyển giấy phép sử dụng của JDK sang BCL (Oracle Binary Code License) nhằm mục đích thương mại hóa sản phẩm này.

Trong khi đó, Open JDK được phát triển từ mã nguồn của Sun JDK do Sun Microsystems đóng góp cho cộng đồng mã nguồn mở. Về cơ bản, base code của Open JDK và Oracle JDK là giống nhau (99%). Tuy nhiên, OpenJDK sở hữu nhiều tính năng mới, tốc độ nhanh hơn. Nhưng điểm mạnh của Oracle JDK là tính ổn định và chính xác, nên nó vẫn được ưu tiên khi phát triển phần mềm bằng ngôn ngữ Java, nhất là với những nền tảng lớn.