No description
Change the way zip archives are handled. This is necessary to deal with very large (~1GB) APK files, for which our current approach of mapping the entire file falls over. We now do the classic scavenger hunt for the End Of Central Directory magic on a buffer of data read from the file, instead of a memory-mapped section. We use what we find to create a map that covers the Central Directory only. If the caller is interested in unpacking the file contents, we have to do an additional file read to discover the size of the Local File Header section so we can skip past it. This is based on Change I745fb15abb in the dalvik tree. Both implementations share a common ancestry, but the cost of unifying them outweighs the benefits of wrapping C calls. Change-Id: Iddacb50fe913917c2845708a530872d65fdbe620 |
||
|---|---|---|
| adb | ||
| charger | ||
| cpio | ||
| debuggerd | ||
| fastboot | ||
| fastbootd | ||
| fs_mgr | ||
| gpttool | ||
| healthd | ||
| include | ||
| init | ||
| libcorkscrew | ||
| libctest | ||
| libcutils | ||
| libdiskconfig | ||
| libion | ||
| liblinenoise | ||
| liblog | ||
| libmincrypt | ||
| libnetutils | ||
| libnl_2 | ||
| libpixelflinger | ||
| libs/utils | ||
| libsparse | ||
| libsuspend | ||
| libsync | ||
| libsysutils | ||
| libusbhost | ||
| libzipfile | ||
| logcat | ||
| logwrapper | ||
| mkbootimg | ||
| netcfg | ||
| reboot | ||
| rootdir | ||
| run-as | ||
| sdcard | ||
| sh | ||
| toolbox | ||
| .gitignore | ||
| Android.mk | ||
| CleanSpec.mk | ||
| MODULE_LICENSE_APACHE2 | ||
| NOTICE | ||
| README | ||
| ThirdPartyProject.prop | ||
The system/ directory is intended for pieces of the world that are the core of the embedded linux platform at the heart of Android. These essential bits are required for basic booting, operation, and debugging. They should not depend on libraries outside of system/... (some of them do currently -- they need to be updated or changed) and they should not be required for the simulator build. The license for all these pieces should be clean (Apache2, BSD, or MIT). Currently system/bluetooth/... and system/extra/... have some pieces with GPL/LGPL licensed code. Assorted Issues: - pppd depends on libutils for logging - pppd depends on libcrypt/libcrypto - init, linker, debuggerd, toolbox, usbd depend on libcutils - should probably rename bionic to libc