Bionic (software)
ಬಯೋನಿಕ್ ಎಂಬುದು ಗೂಗಲ್ ತನ್ನ ಆಂಡ್ರಾಯ್ಡ್ ಕಾರ್ಯಾಚರಣಾ ವ್ಯವಸ್ಥೆಗಾಗಿ ಅಭಿವೃದ್ಧಿಪಡಿಸಿದ ಸ್ಟ್ಯಾಂಡರ್ಡ್ ಸಿ ಲೈಬ್ರರಿಯ ಅನುಷ್ಠಾನವಾಗಿದೆ. ವಿಶಿಷ್ಟವಾದ ಲಿನಕ್ಸ್ ವ್ಯವಸ್ಥೆಗಿಂತ ಕಡಿಮೆ ಮೆಮೊರಿ ಮತ್ತು ಪ್ರೊಸೆಸರ್ ಶಕ್ತಿ ಹೊಂದಿರುವ ಸಾಧನಗಳಿಗಾಗಿ ವಿನ್ಯಾಸಗೊಳಿಸಲಾಗಿರುವ ಇದು ಗ್ನೂ ಸಿ ಲೈಬ್ರರಿಯಿಂದ (ಗ್ಲಿಬಿಸಿ) ಭಿನ್ನವಾಗಿದೆ. ಇದು ಗ್ನೂ ಲೆಸ್ಸರ್ ಜನರಲ್ ಪಬ್ಲಿಕ್ ಲೈಸೆನ್ಸ್ ಅನ್ನು ಬಳಸುವ ಗ್ಲಿಬ್ಸಿಯ ಬದಲು ಬಿಎಸ್ಡಿ ಪರವಾನಗಿ ಅಡಿಯಲ್ಲಿ ಬಿಡುಗಡೆಯಾದ ಫ್ರೀಬಿಎಸ್ಡಿ, ನೆಟ್ಬಿಎಸ್ಡಿ ಮತ್ತು ಓಪನ್ಬಿಎಸ್ಡಿಯ ಹೊಸ ಕೋಡ್ ಮತ್ತು ಕೋಡ್ನ ಸಂಯೋಜನೆಯಾಗಿದೆ. ಆಂಡ್ರಾಯ್ಡ್ನ ಆರಂಭಿಕ ದಿನಗಳಲ್ಲಿ ಈ ವ್ಯತ್ಯಾಸವು ಮುಖ್ಯವಾಗಿತ್ತು, ಸ್ಟ್ಯಾಟಿಕ್ ಲಿಂಕಿಂಗ್ ಸಾಮಾನ್ಯವಾಗಿದ್ದಾಗ, ಮತ್ತು ಮಾಲೀಕತ್ವದ ಕಾರ್ಯಾಚರಣಾ ವ್ಯವಸ್ಥೆಗಳಿಗೆ ಬಳಸುವ ಸಾಫ್ಟ್ವೇರ್ ಕಂಪನಿಗಳಿಗೆ ಆಂಡ್ರಾಯ್ಡ್ ಅನ್ನು ಪರಿಚಯಿಸುವಲ್ಲಿ ಇನ್ನೂ ಸಹಾಯಕವಾಗಿದೆ, ಅವರು ಎಲ್ಜಿಪಿಎಲ್ ಬಗ್ಗೆ ಜಾಗರೂಕರಾಗಿರಬಹುದು ಮತ್ತು ಅದರ ಮತ್ತು ಪೂರ್ಣ ಗ್ನೂ ಜನರಲ್ ಪಬ್ಲಿಕ್ ಲೈಸೆನ್ಸ್ (ಜಿಪಿಎಲ್) ನಡುವಿನ ವ್ಯತ್ಯಾಸಗಳ ಬಗ್ಗೆ ಅಸ್ಪಷ್ಟವಾಗಿರಬಹುದು. ಬಯೋನಿಕ್ ಲಿನಕ್ಸ್ ಕರ್ನಲ್ನೊಂದಿಗೆ ಬಳಸಲು ಸಿ ಲೈಬ್ರರಿಯಾಗಿದೆ ಮತ್ತು libc, libdl ಮತ್ತು libm ಅನ್ನು ಒದಗಿಸುತ್ತದೆ (libpthreed ಕಾರ್ಯಕ್ಷಮತೆಯು libcಯ ಭಾಗವಾಗಿದೆ, ಇತರ ಕೆಲವು ವ್ಯವಸ್ಥೆಗಳಂತೆ ಪ್ರತ್ಯೇಕ ಲೈಬ್ರರಿಯಲ್ಲ). ಇದು ಬಯೋನಿಕ್ ಕೋಡ್ ಅನ್ನು ಹಂಚಿಕೊಳ್ಳುವ ಬಿಎಸ್ಡಿ ಸಿ ಗ್ರಂಥಾಲಯಗಳಿಗಿಂತ ಭಿನ್ನವಾಗಿದೆ, ಏಕೆಂದರೆ ಅವುಗಳಿಗೆ ಬಿಎಸ್ಡಿ ಕರ್ನಲ್ ಅಗತ್ಯವಿರುತ್ತದೆ. ಮೂಲ ಗುರಿಗಳು ಬಯೋನಿಕ್ಗಾಗಿ ಸಾರ್ವಜನಿಕವಾಗಿ ಹೇಳಲಾದ ಮೂಲ ಗುರಿಗಳು ಈ ಕೆಳಗಿನಂತಿವೆಃ ಬಿಎಸ್ಡಿ-ಪರವಾನಗಿಃ ಗೂಗಲ್ ಸ್ವಾಮ್ಯದ ಬಳಕೆದಾರ-ಸ್ಥಳ ಮತ್ತು ಅಪ್ಲಿಕೇಶನ್ ಪರಿಸರ ವ್ಯವಸ್ಥೆಯನ್ನು ರಚಿಸಲು ಕಾಪಿಲೆಫ್ಟ್ ಪರವಾನಗಿಗಳ ಪರಿಣಾಮದಿಂದ ಆಂಡ್ರಾಯ್ಡ್ ಅಪ್ಲಿಕೇಶನ್ಗಳನ್ನು ಪ್ರತ್ಯೇಕಿಸಲು ಬಯಸಿದೆ, ಆದರೆಃ ಆಂಡ್ರಾಯ್ಡ್ ಲಿನಕ್ಸ್ ಕರ್ನಲ್ ಅನ್ನು ಆಧರಿಸಿದೆ, ಇದು ಕಾಪಿಲೆಫ್ಟ್ ಗ್ನೂ ಜನರಲ್ ಪಬ್ಲಿಕ್ ಲೈಸೆನ್ಸ್ (ಜಿಪಿಎಲ್) ಆವೃತ್ತಿ 2ಕ್ಕೆ ಒಳಪಟ್ಟಿರುತ್ತದೆ. ಲಿನಕ್ಸ್ ಕರ್ನಲ್ಗಾಗಿ ಅತ್ಯಂತ ವ್ಯಾಪಕವಾದ ಪ್ರಮಾಣಿತ ಸಿ ಗ್ರಂಥಾಲಯವೆಂದರೆ ಗ್ನೂ ಸಿ ಲೈಬ್ರರಿ (ಗ್ಲಿಬಿಸಿ), ಇದು ಗ್ನೂ ಲೆಸ್ಸರ್ ಜನರಲ್ ಪಬ್ಲಿಕ್ ಲೈಸೆನ್ಸ್ (ಎಲ್ಜಿಪಿಎಲ್) ಗೆ ಒಳಪಟ್ಟಿರುತ್ತದೆ, ಇದು ಕಾಪಿಲೆಫ್ಟ್ ಪರವಾನಗಿಯೂ ಆಗಿದೆ. ಜಿಪಿಎಲ್ಗೆ ವ್ಯತಿರಿಕ್ತವಾಗಿ, ಎಲ್ಜಿಪಿಎಲ್ ಡೈನಾಮಿಕ್ ಲಿಂಕಿಂಗ್ಗೆ ಸ್ಪಷ್ಟವಾಗಿ ಅವಕಾಶ ನೀಡುತ್ತದೆ ಆದರೆ ಇದು ಸೋರ್ಸ್ ಕೋಡ್ ಅಥವಾ ಲಿಂಕ್ ಮಾಡಬಹುದಾದ ಆಬ್ಜೆಕ್ಟ್ ಫೈಲ್ಗಳನ್ನು ಒದಗಿಸದೆ ಸ್ವಾಮ್ಯದ ಸಾಫ್ಟ್ವೇರ್ ಅನ್ನು ಸ್ಥಿರವಾಗಿ ಲಿಂಕ್ ಮಾಡಲು ಅನುಮತಿಸುವುದಿಲ್ಲ. ಅನುಮತಿಸುವ ಬಿಎಸ್ಡಿ ಪರವಾನಗಿಯು ಕಾಪಿಲೆಫ್ಟ್ ಅಲ್ಲದ ಪರವಾನಗಿಯಾಗಿದ್ದು ಅದು ಎರಡೂ ದಿಕ್ಕುಗಳಲ್ಲಿ ಹೊಂದಿಕೊಳ್ಳುತ್ತದೆ. ಬಿಎಸ್ಡಿ-ಪರವಾನಗಿ ಪಡೆದ ಗ್ಲಿಬ್ಸಿ ಪರ್ಯಾಯವು ಕಾಪಿಲೆಫ್ಟ್ ಕೋರ್ (ಕರ್ನಲ್) ಮತ್ತು ಕಾಪಿಲೆಫ್ಟ್ ಅಲ್ಲದ ಅಪ್ಲಿಕೇಶನ್ಗಳ ನಡುವೆ ಪ್ರತ್ಯೇಕ ಪದರವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ ಮತ್ತು ಆದ್ದರಿಂದ ಇದನ್ನು ಗೂಗಲ್ ತನ್ನ ಬಯೋನಿಕ್ಗಾಗಿ ಗ್ಲಿಬ್ಸಿ ಪರ್ಯಾಯವಾಗಿ ಆಯ್ಕೆ ಮಾಡಿತು. ಸಣ್ಣ ಗಾತ್ರಃ ಬಯೋನಿಕ್ ಗ್ನೂ ಸಿ ಲೈಬ್ರರಿಗಿಂತ ತುಂಬಾ ಚಿಕ್ಕದಾಗಿತ್ತು; ಹೆಚ್ಚು ಮುಖ್ಯವಾಗಿ ಅದರ ಮೆಮೊರಿ ಅವಶ್ಯಕತೆಗಳು ತುಂಬಾ ಕಡಿಮೆಯಾಗಿದ್ದವು (ಮತ್ತು ಉಳಿದಿವೆ). ವೇಗಃ ತುಲನಾತ್ಮಕವಾಗಿ ಕಡಿಮೆ ಗಡಿಯಾರ ಆವರ್ತನಗಳಲ್ಲಿ ಸಿಪಿಯುಗಳಿಗಾಗಿ ಬಯೋನಿಕ್ ಅನ್ನು ವಿನ್ಯಾಸಗೊಳಿಸಲಾಗಿದೆ. ಬೆಂಬಲಿತ ವಾಸ್ತುಶಿಲ್ಪಗಳು ಬಯೋನಿಕ್ ಲಿನಕ್ಸ್ ಕರ್ನಲ್ಗಳನ್ನು ಮಾತ್ರ ಬೆಂಬಲಿಸುತ್ತದೆ, ಆದರೆ ಪ್ರಸ್ತುತ ಆರ್ಮ್, ಆರ್ಮ್64, ರಿಸ್ಕಿವಿ64, x86, ಮತ್ತು x 86-64 ವಿನ್ಯಾಸಗಳನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ. ಆಂಡ್ರಾಯ್ಡ್ ನೇಟಿವ್ ಡೆವಲಪ್ಮೆಂಟ್ ಕಿಟ್ (ಎನ್. ಡಿ. ಕೆ.) ಎನ್. ಡಿ. ಕೆ. ಆರ್16ರವರೆಗೆ ಆರ್ಮ್ವಿ5 ಅನ್ನು (ಇದನ್ನು ಆರ್ಮೇಬಿ ಎಂದು ಕರೆಯಲಾಗುತ್ತಿತ್ತು) ಬೆಂಬಲಿಸುವುದನ್ನು ಮುಂದುವರೆಸಿದರೂ, ಮಾರ್ಷ್ಮ್ಯಾಲೋದ ನಂತರ ಪ್ಲಾಟ್ಫಾರ್ಮ್ಗೆ ಸ್ವತಃ ನಿಯಾನ್ನೊಂದಿಗೆ ಆರ್ಮ್ವಿ7 ಅಗತ್ಯವಿತ್ತು. ಎನ್. ಡಿ. ಕೆ. ಇನ್ನೂ ನಿಯಾನ್ನೊಂದಿಗೆ ಮತ್ತು ಇಲ್ಲದೆ ಆರ್ಮ್ವಿ7 ಅನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ. ಐತಿಹಾಸಿಕವಾಗಿ ಪ್ಲಾಟ್ಫಾರ್ಮ್ನಲ್ಲಿ ಭಾಗಶಃ ಎಸ್ಎಚ್-4 ಬೆಂಬಲವಿತ್ತು, ಆದರೆ ಯಾವುದೇ ಸಾಧನಗಳನ್ನು ಎಂದಿಗೂ ರವಾನಿಸಲಾಗಿಲ್ಲ ಮತ್ತು ಬೆಂಬಲವನ್ನು ತೆಗೆದುಹಾಕಲಾಗಿದೆ. ಎನ್. ಡಿ. ಕೆ. ಯು ಎಸ್. ಎಚ್-4 ಅನ್ನು ಎಂದಿಗೂ ಬೆಂಬಲಿಸಲಿಲ್ಲ, ಮತ್ತು ಆರ್ 17ರಲ್ಲಿ ಎನ್. ಡಿ. ಕೆ. ಯಿಂದ ಎಮ್. ಐ. ಪಿ. ಎಸ್. ಮತ್ತು ಎಮ್. ಐ. ಪಿ. ಎಸ್. 64 ಬೆಂಬಲವನ್ನು ತೆಗೆದುಹಾಕಲಾಯಿತು. ಘಟಕಗಳು ಸ್ಟಡಿಯೋದಂತಹ ಲಿಬ್ಸಿ ಮೂಲದ ಕೆಲವು ಭಾಗಗಳು ಬಿಎಸ್ಡಿಗಳಿಂದ (ಮುಖ್ಯವಾಗಿ ಓಪನ್ಬಿಎಸ್ಡಿ) ಬಂದಿವೆ, ಆದರೆ ಪಿಥ್ರೆಡ್ ಅನುಷ್ಠಾನದಂತಹ ಇತರ ಭಾಗಗಳನ್ನು ಮೊದಲಿನಿಂದ ಬರೆಯಲಾಗಿದೆ. ಡೈನಾಮಿಕ್ ಮೆಮೊರಿ ಅಲೋಕೇಟರ್ ಅನುಷ್ಠಾನವು ಕಾಲಾನಂತರದಲ್ಲಿ ಬದಲಾಗಿದೆ. ಲಾಲಿಪಾಪ್ಗೆ ಮೊದಲು, ಡಗ್ ಲೀಯವರ ಡಿಎಲ್ಮಲ್ಲೋಕ್ ಎಂಬ ಒಂದೇ ಸ್ಥಳೀಯ ಮೆಮೊರಿ ಅಲೋಕೇಟರ್ ಇತ್ತು. ಲಾಲಿಪಾಪ್ ಮತ್ತು ಮಾರ್ಷ್ಮ್ಯಾಲೋ ಎರಡು ಅನುಷ್ಠಾನಗಳನ್ನು ಹೊಂದಿದ್ದವುಃ ಡಿಎಲ್ಮ್ಯಾಲೋಕ್ ಮತ್ತು ಜೆಮ್ಯಾಲೋಕ್. ಜೆಮಾಲ್ಲಾಕ್ ಡಿಎಲ್ಮಾಲ್ಲಾಕ್ಗಿಂತ ಹೆಚ್ಚಿನ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ನೀಡುತ್ತದೆ, ಆದರೆ ಲೆಕ್ಕಪತ್ರ ನಿರ್ವಹಣೆಗೆ ಅಗತ್ಯವಾದ ಹೆಚ್ಚುವರಿ ಸ್ಮರಣೆಯ ವೆಚ್ಚದಲ್ಲಿ. ಹೆಚ್ಚಿನ ಸಾಧನಗಳು ಜೆಮಲ್ಲೋಕ್ ಅನ್ನು ಬಳಸುತ್ತಿದ್ದವು ಆದರೆ ಕಡಿಮೆ-ಮೆಮೊರಿ ಸಾಧನಗಳು ಇನ್ನೂ ಡಿಎಲ್ಮಲ್ಲೋಕ್ ಅನ್ನು ಬಳಸುತ್ತಿದ್ದವು. ಆಂಡ್ರಾಯ್ಡ್ 10 ಮೂಲಕ ನೌಗಾಟ್ಗಾಗಿ, ಎಲ್ಲಾ ಸಾಧನಗಳು ಜೆಮಾಲೋಕ್ ಅನ್ನು ಬಳಸುತ್ತವೆ. ಕಡಿಮೆ-ಮೆಮೊರಿ ಸಾಧನಗಳು ಜೆಮಲ್ಲೋಕ್ನ "ಸ್ವೆಲ್ಟ್" ಸಂರಚನೆಯನ್ನು ಬಳಸುತ್ತವೆ, ಇದು ಜೆಮಲ್ಲೋಕ್ನ ಹೆಚ್ಚಿನ ವೇಗವನ್ನು ಉಳಿಸಿಕೊಳ್ಳುವಾಗ ಡಿಎಲ್ಮಲ್ಲೋಕ್ನ ಕಡಿಮೆ ಮೆಮೊರಿ ಓವರ್ಹೆಡ್ಗೆ ಹೊಂದಿಕೆಯಾಗುವಂತೆ ಟಿಕ್ಯಾಶ್ ಅನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸುತ್ತದೆ. ಆಂಡ್ರಾಯ್ಡ್ 11ರಲ್ಲಿ, ಹೆಚ್ಚಿನ ಸಾಧನಗಳಿಗೆ ಮೆಮೊರಿ ಅಲೋಕೇಟರ್ ಅನ್ನು ಸ್ಕೂಡೋಗೆ ಬದಲಾಯಿಸಲಾಯಿತು, ಇದು ಹೆಚ್ಚುವರಿ ಭದ್ರತಾ ಗಟ್ಟಿಯಾಗಿಸುವ ವೈಶಿಷ್ಟ್ಯಗಳಿಗಾಗಿ ಜೆಮಲ್ಲೋಕ್ನ ಕೆಲವು ಉನ್ನತ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ತ್ಯಾಗ ಮಾಡುತ್ತದೆ. ಆದಾಗ್ಯೂ, ಕಡಿಮೆ-ಮೆಮೊರಿ ಸಾಧನಗಳಿಗೆ ಜೆಮಾಲೋಕ್ ಅನ್ನು ಬಳಸಲು ಇನ್ನೂ ಅನುಮತಿ ಇದೆ. ನೆಕ್ಸಸ್ 9 ನಂತಹ ಕೆಲವು 64-ಬಿಟ್ ಸಾಧನಗಳು ಪರಿಣಾಮಕಾರಿಯಾಗಿ ಕಡಿಮೆ-ಮೆಮೊರಿ ಸಾಧನಗಳಾಗಿವೆ, ಏಕೆಂದರೆ 64-ಬಿಟ್ ಪಾಯಿಂಟರ್ಗಳ ಹೆಚ್ಚುವರಿ ಸ್ಥಳಾವಕಾಶದ ಅವಶ್ಯಕತೆಗಳು ಮತ್ತು ಎರಡು ಝೈಗೋಟ್ಗಳ ಹೋಸ್ಟಿಂಗ್. (ಝೈಗೋಟ್ ಒಂದು ಆಂಡ್ರಾಯ್ಡ್ ಸಿಸ್ಟಮ್ ಸೇವೆಯಾಗಿದ್ದು ಅದು ಎಲ್ಲಾ ಆಂಡ್ರಾಯ್ಡ್ ಅಪ್ಲಿಕೇಶನ್ ಪ್ರಕ್ರಿಯೆಗಳ ಮೂಲವಾಗಿದೆ.) ಲಿಬ್ಮ್ ಮೂಲವು ಹೆಚ್ಚಾಗಿ ಫ್ರೀಬಿಎಸ್ಡಿಯದ್ದಾಗಿದೆ, ಆದರೆ ವಿವಿಧ ಎಸ್ಒಸಿ ಮಾರಾಟಗಾರರು ಕೊಡುಗೆ ನೀಡಿದ ಆಪ್ಟಿಮೈಸ್ಡ್ ಜೋಡಣೆಯೊಂದಿಗೆ. ಡೈನಾಮಿಕ್ ಲಿಂಕರ್ (ಮತ್ತು libdl) ಅನ್ನು ಮೊದಲಿನಿಂದ ಬರೆಯಲಾಗಿದೆ. ಬಯೋನಿಕ್ ಲಿಬ್ಥ್ರೆಡ್ _ ಡಿಬಿ (ಜಿ. ಡಿ. ಬಿ. ಸರ್ವರ್ನಿಂದ ಬಳಸಲ್ಪಡುತ್ತದೆ) ಅನ್ನು ಒಳಗೊಂಡಿರುವುದಿಲ್ಲ, ಆದರೆ ಎನ್. ಡಿ. ಕೆ. ಯನ್ನು ಒಳಗೊಂಡಿದೆ. ಆಂಡ್ರಾಯ್ಡ್ ಪ್ಲಾಟ್ಫಾರ್ಮ್ ಸ್ಥಿರವಾಗಿ ಲಿಂಕ್ ಮಾಡಲಾದ ಜಿ. ಡಿ. ಬಿ. ಸರ್ವರ್ ಅನ್ನು ಒಳಗೊಂಡಿದೆ, ಇದರಿಂದಾಗಿ ಡೆವಲಪರ್ಗಳು ಹಳೆಯ ಸಾಧನಗಳಲ್ಲಿಯೂ ಸಹ ಇತ್ತೀಚಿನ ಜಿ. ಡಿ. ಬಿ. ಯನ್ನು ಬಳಸಬಹುದು. ಆಂಡ್ರಾಯ್ಡ್ನಲ್ಲಿ ಪ್ರತ್ಯೇಕ ಲಿಬ್ಪ್ಥ್ರೆಡ್, ಲಿಬ್ರೆಸೊಲ್ವ್ ಅಥವಾ ಲೈಬ್ರರ್ಟ್ ಇಲ್ಲ, ಎಲ್ಲಾ ಕಾರ್ಯಗಳು ಲಿಬ್ಸಿಯಲ್ಲಿವೆ. ಲಿಬ್ಪ್ಥ್ರೆಡ್ಗಾಗಿ, ಏಕ-ಥ್ರೆಡ್ ಕೇಸ್ಗಾಗಿ ಅತ್ಯುತ್ತಮವಾಗಿಸಲು ಯಾವುದೇ ಪ್ರಯತ್ನವಿಲ್ಲ ಏಕೆಂದರೆ ಮೂರನೇ ವ್ಯಕ್ತಿಯ ಕೋಡ್ನ ಮೊದಲ ಸೂಚನೆಯನ್ನು ಚಲಾಯಿಸುವ ಮೊದಲೇ ಅಪ್ಲಿಕೇಶನ್ಗಳು ಬಹು-ಥ್ರೆಡ್ ಪರಿಸರದಲ್ಲಿರುತ್ತವೆ. ಆಂಡ್ರಾಯ್ಡ್ ಪ್ಲಾಟ್ಫಾರ್ಮ್ ಸಿ + + ಸ್ಟ್ಯಾಂಡರ್ಡ್ ಲೈಬ್ರರಿಗಾಗಿ ಲಿಬ್ಸಿ + + ಅನ್ನು ಬಳಸುತ್ತದೆ (ಲಾಲಿಪಾಪ್ ಬಳಸಿದ ಸ್ಟಲ್ಪೋರ್ಟ್ ಸೇರಿದಂತೆ). ಐತಿಹಾಸಿಕವಾಗಿ ಎನ್. ಡಿ. ಕೆ. ಯು. ಎಸ್. ಟಿ. ಎಲ್. ಪೋರ್ಟ್ ಮತ್ತು ಜಿ. ಎನ್. ಯು. ಲಿಬ್. ಎಸ್. ಟಿ. ಡಿ. ಸಿ + + ಅನ್ನು ನೀಡುತ್ತಿತ್ತು, ಆದರೆ ಅವುಗಳನ್ನು ಎನ್. ಡಿ. ಕೆ. ಆರ್ 18 ರಿಂದ ತೆಗೆದುಹಾಕಲಾಯಿತು. ಆಂಡ್ರಾಯ್ಡ್ ಅಪ್ಲಿಕೇಶನ್ನಲ್ಲಿನ ಯಾವುದೇ ಸ್ಥಳೀಯ ಕೋಡ್ ಸಿ + + ಅನ್ನು ಬಳಸಿದರೆ, ಎಲ್ಲಾ ಸಿ + + ಒಂದೇ ಎಸ್ಟಿಎಲ್ ಅನ್ನು ಬಳಸಬೇಕು ಎಂಬುದನ್ನು ಗಮನಿಸಿ. ಎಸ್ಟಿಎಲ್ ಅನ್ನು ಆಂಡ್ರಾಯ್ಡ್ ಓಎಸ್ ಒದಗಿಸುವುದಿಲ್ಲ ಮತ್ತು ಪ್ರತಿ ಅಪ್ಲಿಕೇಶನ್ನೊಂದಿಗೆ ಸಂಯೋಜಿಸಬೇಕು. ಬಯೋನಿಕ್ ಎಲ್ಲಾ ಸಿ11 ಮತ್ತು ಪೋಸಿಕ್ಸ್ ಅನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುವ ಗುರಿಯನ್ನು ಹೊಂದಿದ್ದರೂ, ಇನ್ನೂ (ಓರಿಯೊ ಪ್ರಕಾರ) ಸುಮಾರು 70 ಪೋಸಿಕ್ಸ್ ಕಾರ್ಯಗಳು ಲಿಬ್ಸಿಯಿಂದ ಕಾಣೆಯಾಗಿವೆ. ಪಾಸ್ವರ್ಡ್ ಡೇಟಾಬೇಸ್ ಇಲ್ಲದ ಕಾರಣ ಆಂಡ್ರಾಯ್ಡ್ಗೆ ಅನ್ವಯಿಸಲಾಗದ ಎಂಡ್ಪ್ವೆಂಟ್/ಗೆಟ್ಪ್ವೆಂಟ್/ಸೆಟ್ಪ್ವೆಂಟ್ ಕುಟುಂಬದಂತಹ ಪೋಸಿಕ್ಸ್ ಕಾರ್ಯಗಳು ಸಹ ಇವೆ. ಓರಿಯೊ ಪ್ರಕಾರ, ಲಿಬ್ಮ್ ಪೂರ್ಣಗೊಂಡಿದೆ. ಕೆಲವು ಕಾರ್ಯಗಳು ಉದ್ದೇಶಪೂರ್ವಕವಾಗಿ ಭದ್ರತಾ ಕಾರಣಗಳಿಗಾಗಿ ಪೋಸಿಕ್ಸ್ ಅಥವಾ ಸಿ ಮಾನದಂಡಗಳಿಗೆ ಹೊಂದಿಕೆಯಾಗುವುದಿಲ್ಲ, ಉದಾಹರಣೆಗೆ% n ಫಾರ್ಮ್ಯಾಟ್ ಸ್ಟ್ರಿಂಗ್ ಅನ್ನು ಬೆಂಬಲಿಸದ ಪ್ರಿಂಟ್ಎಫ್. ವಿವಿಧ ಬಿಎಸ್ಡಿ ವಿಸ್ತರಣೆಗಳಂತೆ ಹೆಚ್ಚು ಬಳಸಿದ ಅನೇಕ ಗ್ನೂ ವಿಸ್ತರಣೆಗಳನ್ನು ಬಯೋನಿಕ್ನಲ್ಲಿ ಅಳವಡಿಸಲಾಗಿದೆ. ಎನ್. ಡಿ. ಕೆ. ಪ್ಲಾಟ್ಫಾರ್ಮ್ ಕೋಡ್ಗೆ ಸಂಬಂಧವು ನೇರವಾಗಿ ಬಯೋನಿಕ್ ಅನ್ನು ಬಳಸುತ್ತದೆ, ಆದರೆ ಥರ್ಡ್-ಪಾರ್ಟಿ ಡೆವಲಪರ್ಗಳು ಆಂಡ್ರಾಯ್ಡ್ ನೇಟಿವ್ ಡೆವಲಪ್ಮೆಂಟ್ ಕಿಟ್ (ಎನ್. ಡಿ. ಕೆ.) ಅನ್ನು ಬಳಸುತ್ತಾರೆ. ಅನೇಕ ಥರ್ಡ್-ಪಾರ್ಟಿ ಡೆವಲಪರ್ಗಳು ಇನ್ನೂ ಹಳೆಯ ಓಎಸ್ ಬಿಡುಗಡೆಗಳನ್ನು ಗುರಿಯಾಗಿರಿಸಿಕೊಳ್ಳುತ್ತಾರೆ, ಇದು ಬಯೋನಿಕ್ ಅನೇಕ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಹೊಂದಿಲ್ಲ ಎಂಬ ವ್ಯಾಪಕ ನಂಬಿಕೆಗೆ ಕೊಡುಗೆ ನೀಡುತ್ತದೆ. ಜಿಂಜರ್ ಬ್ರೆಡ್ ಲಿಬ್ಸಿಯಿಂದ 803 ಕಾರ್ಯಗಳನ್ನು ರಫ್ತು ಮಾಡಿತು ಆದರೆ ಓರಿಯೊ 1278 ಅನ್ನು ರಫ್ತು ಮಾಡಿತು (1.6x ಹೆಚ್ಚಳ). ಐತಿಹಾಸಿಕವಾಗಿ ಎನ್. ಡಿ. ಕೆ ಮತ್ತು ಪ್ಲಾಟ್ಫಾರ್ಮ್ ಬೇರೆಯಾದವು, ಆದರೆ ಎನ್. ಡಿ. ಕೆ. ಆರ್11 ಮತ್ತು ನಂತರ ಎನ್. ಡಿ. ಕೆ. ಫೋರ್ಕ್ಗಳನ್ನು ಅವುಗಳ ಪ್ರಸ್ತುತ ಪ್ಲಾಟ್ಫಾರ್ಮ್ ಸಮಾನಗಳೊಂದಿಗೆ ಬದಲಾಯಿಸಿವೆ. ಈ ಕೆಲಸವು ಆರಂಭದಲ್ಲಿ ಜಿಸಿಸಿ ಮತ್ತು ಕ್ಲಾಂಗ್ ಕಂಪೈಲರ್ಗಳ ಮೇಲೆ ಕೇಂದ್ರೀಕೃತವಾಗಿತ್ತು. ಎನ್. ಡಿ. ಕೆ. ಆರ್. 14ಕ್ಕಿಂತ ಮೊದಲು, "ಏಕೀಕೃತ" ಶೀರ್ಷಿಕೆಗಳನ್ನು ಮೊದಲ ಬಾರಿಗೆ ಆಯ್ಕೆ ಆಧಾರದ ಮೇಲೆ ನೀಡಿದಾಗ, ಎನ್. ಡಿ. ಕೆ. ಯು ವಿವಿಧ ಎ. ಪಿ. ಐ. ಮಟ್ಟಗಳಿಗೆ ವೇದಿಕೆ ಶೀರ್ಷಿಕೆಗಳ ಪ್ರತಿಗಳನ್ನು ಫೋರ್ಕ್ ಮಾಡಿತ್ತು. ಇದರರ್ಥ ಹೆಡರ್-ಮಾತ್ರ ಪರಿಹಾರಗಳು (ಸ್ಥಿರ ಅಥವಾ ರಚನೆಯ ವ್ಯಾಖ್ಯಾನಗಳಿಗೆ ಪರಿಹಾರಗಳು, ಉದಾಹರಣೆಗೆ) ಹೆಚ್ಚಿನ ಎನ್. ಡಿ. ಕೆ ಬಳಕೆದಾರರಿಗೆ ಲಭ್ಯವಿರಲಿಲ್ಲ ಏಕೆಂದರೆ ಅವರು ಹಳೆಯ ಎಪಿಐ ಮಟ್ಟವನ್ನು ಗುರಿಯಾಗಿರಿಸಿಕೊಳ್ಳುತ್ತಿದ್ದರು, ಆದರೆ ಪ್ಲಾಟ್ಫಾರ್ಮ್ ಪರಿಹಾರಗಳು ಪ್ರಸ್ತುತ ಪ್ಲಾಟ್ಫಾರ್ಮ್ ಹೆಡರ್ಗಳಿಗೆ ಮಾತ್ರ ಹೋಗುತ್ತಿದ್ದವು. ಓರಿಯೊ ಅಭಿವೃದ್ಧಿ ಅವಧಿಯಲ್ಲಿ ಪ್ಲಾಟ್ಫಾರ್ಮ್ ಹೆಡರ್ಗಳನ್ನು ಎಪಿಐ ಮಟ್ಟದ ಮಾಹಿತಿಯೊಂದಿಗೆ ಟಿಪ್ಪಣಿ ಮಾಡಲಾಗಿದೆ, ಇದರಿಂದಾಗಿ ಎಲ್ಲಾ ಎಪಿಐ ಮಟ್ಟಗಳಿಗೆ ಒಂದೇ ರೀತಿಯ ಹೆಡರ್ಗಳನ್ನು ಬಳಸಬಹುದು, ಡೆವಲಪರ್ಗಳ ಉದ್ದೇಶಿತ ಎಪಿಐ ಮಟ್ಟದಲ್ಲಿ ಲಭ್ಯವಿರುವ ಕಾರ್ಯಗಳು ಮಾತ್ರ ಗೋಚರಿಸುತ್ತವೆ. ಇವು "ಏಕೀಕೃತ" ಶೀರ್ಷಿಕೆಗಳು ಎಂದು ಕರೆಯಲ್ಪಡುತ್ತವೆ ಮತ್ತು ಎನ್. ಡಿ. ಕೆ. ಆರ್15 ರಿಂದ ಪೂರ್ವನಿಯೋಜಿತವಾಗಿವೆ. ಎನ್. ಡಿ. ಕೆ. ಆರ್16ಕ್ಕಿಂತ ಮೊದಲು, ಎನ್. ಡಿ. ಕೆ. ಯು ಲಿಬ್ಸಿ + + ಬಳಸಿ ಕೋಡ್ಗೆ libandroid_support.a ಎಂಬ ಗ್ರಂಥಾಲಯವನ್ನು ಜೋಡಿಸಿತ್ತು. ಇದು ಹಳೆಯ ಓಎಸ್ ಬಿಡುಗಡೆಗಳಲ್ಲಿಲ್ಲದ libc + + ಗೆ ಅಗತ್ಯವಾದ ಕಾರ್ಯಗಳನ್ನು ಒದಗಿಸಿತು. ಇದು ಪ್ಲಾಟ್ಫಾರ್ಮ್ ಬಳಸುವ ಅದೇ ಕೋಡ್ ಆಗಿರಲಿಲ್ಲ ಮತ್ತು ಹಲವಾರು ದೋಷಗಳನ್ನು ಪರಿಚಯಿಸಿತು (ಉದಾಹರಣೆಗೆ libc + + ಅನ್ನು ಬಳಸುವ ಯಾವುದೇ ಕೋಡ್ನಲ್ಲಿ ಪ್ರಿಂಟ್ಎಫ್ ಕುಟುಂಬಕ್ಕೆ ಸ್ಥಾನಿಕ ವಾದಗಳನ್ನು ಮುರಿಯುವುದು). ಎನ್. ಡಿ. ಕೆ. ಯಲ್ಲಿ ಆರ್16 libandroid_support.a ಇನ್ನೂ ಅಸ್ತಿತ್ವದಲ್ಲಿದೆ, ಆದರೆ ಈಗ ಅದನ್ನು ನೇರವಾಗಿ ಪ್ಲಾಟ್ಫಾರ್ಮ್ ಮೂಲದಿಂದ ನಿರ್ಮಿಸಲಾಗಿದೆ (ಎನ್. ಡಿ. ಕೆ. ನಿರ್ಮಿಸಿದ ಸಮಯದಲ್ಲಿ ಪ್ರಸ್ತುತ). ಆಂಡ್ರಾಯ್ಡ್ ಜೆಲ್ಲಿ ಬೀನ್ ಎಂಆರ್1 (4.2) ರಂತೆ, ಬಯೋನಿಕ್ ಗ್ಲಿಬ್ಸಿಯ _ ಫೋರ್ಟಿಫೈ _ ಸೋರ್ಸ್ಗೆ ಹೋಲುವ ಕಾರ್ಯವನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ, ಇದು ಅಸುರಕ್ಷಿತ ಸ್ಟ್ರಿಂಗ್ ಮತ್ತು ಮೆಮೊರಿ ಕಾರ್ಯಗಳು (ಉದಾಹರಣೆಗೆ ಸ್ಟ್ರಾಸ್ಪಿ (), ಸ್ಟ್ರಾಕ್ಯಾಟ್ (), ಮತ್ತು ಮೆಮ್ಸಿಪಿ ()) ಬಫರ್ ಓವರ್ರನ್ಗಳಿಗಾಗಿ ಚೆಕ್ಗಳನ್ನು ಒಳಗೊಂಡಿರುವ ಒಂದು ವೈಶಿಷ್ಟ್ಯವಾಗಿದೆ. ಬಫರ್ ಗಾತ್ರಗಳನ್ನು ಕಂಪೈಲ್ ಸಮಯದಲ್ಲಿ ಅಥವಾ ರನ್-ಟೈಮ್ನಲ್ಲಿ ನಿರ್ಧರಿಸಬಹುದಾದರೆ ಈ ಚೆಕ್ಗಳನ್ನು ಕಂಪೈಲ್ ಸಮಯದಲ್ಲಿ ನಡೆಸಲಾಗುತ್ತದೆ. ಫೋರ್ಟಿಫೈ ಲಿಬ್ಸಿಯಿಂದ ರನ್ಟೈಮ್ ಬೆಂಬಲವನ್ನು ಅವಲಂಬಿಸಿರುವುದರಿಂದ, ಹಳೆಯ ಆಂಡ್ರಾಯ್ಡ್ ಬಿಡುಗಡೆಗಳಿಗೆ ಅದರ ಪೋರ್ಟಬಿಲಿಟಿ ಸೀಮಿತವಾಗಿದೆ. ಪ್ಲಾಟ್ಫಾರ್ಮ್ ಅನ್ನು ಸ್ವತಃ _ FORTIFY _ SORCE ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಿ ನಿರ್ಮಿಸಲಾಗಿದೆ. ಐತಿಹಾಸಿಕವಾಗಿ, ಫೋರ್ಟಿಫೈನ ಒಂದು ನ್ಯೂನತೆಯೆಂದರೆ ಅದು ಜಿಸಿಸಿಯೊಂದಿಗೆ ನಿಕಟ ಸಂಬಂಧವನ್ನು ಹೊಂದಿದೆ, ಇದು ಕ್ಲಾಂಗ್ನಂತಹ ಇತರ ಕಂಪೈಲರ್ಗಳಲ್ಲಿ ಉತ್ತಮವಾಗಿ ಬೆಂಬಲಿಸುವುದನ್ನು ತುಂಬಾ ಕಷ್ಟಕರವಾಗಿಸುತ್ತದೆ. ಇದರರ್ಥ ಆಂಡ್ರಾಯ್ಡ್ ತನ್ನ ಪೂರ್ವನಿಯೋಜಿತ ಕಂಪೈಲರ್ ಆಗಿ ಕ್ಲಾಂಗ್ಗೆ ಬದಲಾದಾಗ, ಬಯೋನಿಕ್ನ ಫೋರ್ಟಿಫೈ ಅನುಷ್ಠಾನವು ಗಣನೀಯವಾಗಿ ಕಡಿಮೆ ಉಪಯುಕ್ತವಾಯಿತು. ಆಂಡ್ರಾಯ್ಡ್ ಓರಿಯೊದಲ್ಲಿ (8.0), ಬಯೋನಿಕ್ನ ಫೋರ್ಟಿಫೈಯನ್ನು ಕ್ಲಾಂಗ್ ಅನ್ನು ಗಮನದಲ್ಲಿಟ್ಟುಕೊಂಡು ಕೂಲಂಕಷವಾಗಿ ಪರಿಷ್ಕರಿಸಲಾಯಿತು, ಇದರ ಪರಿಣಾಮವಾಗಿ ಕ್ಲಾಂಗ್ನಲ್ಲಿ ಫೋರ್ಟಿಫೈಯು ಜಿಸಿಸಿಯಲ್ಲಿ ಫೋರ್ಟಿಫೈಯೊಂದಿಗೆ ಸಮಾನವಾದ ಅನುಭವವನ್ನು ಒದಗಿಸುತ್ತದೆ. ಈ ಕೂಲಂಕುಷ ಪರೀಕ್ಷೆಯ ನಂತರ, ಕೋಡ್ ಅನ್ನು ಹಿಡಿಯಲು ಗ್ಲಿಬ್ಸ್ನ ಮೇಲೆ ಮತ್ತು ಅದರಾಚೆ ಕೆಲವು ಚೆಕ್ಗಳನ್ನು ಸೇರಿಸಲಾಗಿದೆ-ಇದು ವಿವರಿಸಲಾಗದ ನಡವಳಿಕೆಯನ್ನು ಉಂಟುಮಾಡದಿದ್ದರೂ-ನಿಸ್ಸಂಶಯವಾಗಿ ತಪ್ಪಾಗಿದೆ. ಈ ಹೊಸ ಅನುಷ್ಠಾನಕ್ಕೆ ಹಿಂದಿನದಕ್ಕಿಂತ ಹೆಚ್ಚಿನ ಲಿಬ್ಸಿ ಬೆಂಬಲದ ಅಗತ್ಯವಿಲ್ಲವಾದ್ದರಿಂದ, ಕ್ಲಾಂಗ್-ನಿರ್ದಿಷ್ಟ ವರ್ಧನೆಗಳು ಓರಿಯೊಗಿಂತ ಮೊದಲು ಆಂಡ್ರಾಯ್ಡ್ನ ಆವೃತ್ತಿಗಳನ್ನು ಗುರಿಯಾಗಿಸುವ ಅಪ್ಲಿಕೇಶನ್ಗಳಿಗೆ ಲಭ್ಯವಿವೆ. ವಿವಾದಗಳು ಬಯೋನಿಕ್ ಸೃಷ್ಟಿಗಾಗಿ, ಗೂಗಲ್ ಜಿಪಿಎಲ್ವಿ2-ಪರವಾನಗಿ ಪಡೆದ ಲಿನಕ್ಸ್ ಕರ್ನಲ್ ಹೆಡರ್ ಫೈಲ್ಗಳನ್ನು ಬಳಸಿತು. ಜಿಪಿಎಲ್ ಅನ್ನು ತೊಡೆದುಹಾಕಲು, ಗೂಗಲ್ ಯಾವುದೇ ಹಕ್ಕುಸ್ವಾಮ್ಯ-ಯೋಗ್ಯ ಕೆಲಸದಿಂದ ಹೆಡರ್ ಫೈಲ್ಗಳನ್ನು ಸ್ವಚ್ಛಗೊಳಿಸಿದೆ ಎಂದು ಹೇಳಿಕೊಂಡಿದ್ದು, ಅವುಗಳನ್ನು ಕೃತಿಸ್ವಾಮ್ಯವಲ್ಲದ "ಸಂಗತಿಗಳಿಗೆ" ಇಳಿಸಿದೆ. ಲಿನಕ್ಸ್ ಸೃಷ್ಟಿಕರ್ತ ಲಿನಸ್ ಟೊರ್ವಾಲ್ಡ್ಸ್ ಗೂಗಲ್ನ ನಡವಳಿಕೆಯನ್ನು ಸ್ವೀಕಾರಾರ್ಹವೆಂದು ಪರಿಗಣಿಸಿದ್ದಾರೆ, ಆದರೆ ಜಿಪಿಎಲ್ನ ಗೂಗಲ್ನ ವ್ಯಾಖ್ಯಾನವನ್ನು ಪ್ರಶ್ನಿಸಲಾಗಿದೆ, ಉದಾಹರಣೆಗೆ ಹೂಸ್ಟನ್ ವಿಶ್ವವಿದ್ಯಾಲಯದ ಕಾನೂನು ಕೇಂದ್ರದ ಕಾನೂನು ಪ್ರಾಧ್ಯಾಪಕ ರೇಮಂಡ್ ನಿಮ್ಮರ್. ಹೈಬ್ರಿಸ್ (ಲಿಬಿಬ್ರಿಸ್ ಎಂದೂ ಕರೆಯಲಾಗುತ್ತದೆ) ಮಸಲ್ ಟಾಯ್ಬಾಕ್ಸ್ ಉಲ್ಲೇಖಗಳು ಬಾಹ್ಯ ಕೊಂಡಿಗಳು ಡೆವಲಪರ್ ಹೋಮ್ ಪೇಜ್ ಫಾರ್ ಆಂಡ್ರಾಯ್ಡ್ ಆಂಡ್ರಾಯ್ಡ್ ನೇಟಿವ್ ಡೆವಲಪ್ಮೆಂಟ್ ಕಿಟ್ (ಎನ್. ಡಿ. ಕೆ) ಹೋಮ್ ಪೇಜ್ ಬಯೋನಿಕ್ ಮೂಲಗಳು (ಅಧಿಕೃತ ಭಂಡಾರ) ಬಯೋನಿಕ್ ಟಿಪ್ಪಣಿಗಳು eLinux.org ಆಂಡ್ರಾಯ್ಡ್ (ಆಪರೇಟಿಂಗ್ ಸಿಸ್ಟಮ್) ಸಿ ಸ್ಟ್ಯಾಂಡರ್ಡ್ ಲೈಬ್ರರಿ ಬಿಎಸ್ಡಿ ಪರವಾನಗಿಯನ್ನು ಬಳಸಿಕೊಂಡು ಲಿನಕ್ಸ್ ಕರ್ನಲ್ ಸಾಫ್ಟ್ವೇರ್ನ ಇಂಟರ್ಫೇಸ್ಗಳು