1.uID
androID中uID用于标识一个应用程序。uID在应用安装时被分配,并且在应用存在于手机上期间,都不会改变。
一个应用程序只能有一个uID,多个用户可以使用sharedUserID 方式共享同一个uID,前提是这些应用的签名要相同。
UID是在apk安装的时候确认的,具体代码可以参考:
frameworks\base\services\core\java\com\androID\server\pm\Settings.java
/** * Registers a user ID with the system. Potentially allocates a new user ID. * @throws PackageManagerException If a user ID Could not be allocated. */ voID addUserToSettingLPw(PackageSetting p) throws PackageManagerException { if (p.appID == 0) { // Assign new user ID p.appID = newUserIDLPw(p); } else { // Add new setting to List of user IDs addUserIDLPw(p.appID, p, p.name); } if (p.appID < 0) { PackageManagerService.reportSettingsProblem(Log.WARN, "Package " + p.name + " Could not be assigned a valID UID"); throw new PackageManagerException(INSTALL_Failed_INSUFFICIENT_STORAGE, "Package " + p.name + " Could not be assigned a valID UID"); } } // Returns -1 if we Could not find an available UserID to assign private int newUserIDLPw(Object obj) { // Let's be stupIDly inefficIEnt for Now... final int N = mUserIDs.size(); for (int i = mFirstAvailableuID; i < N; i++) { if (mUserIDs.get(i) == null) { mUserIDs.set(i, obj); return Process.FirsT_APPliCATION_UID + i; } } // None left? if (N > (Process.LAST_APPliCATION_UID-Process.FirsT_APPliCATION_UID)) { return -1; } mUserIDs.add(obj); return Process.FirsT_APPliCATION_UID + N; }
2.pID
进程ID,可变的。是各进程的身份标识,程序一运行系统就会自动分配给进程一个独一无二的PID。
进程中止后pID被系统回收,可能会被继续分配给新运行的程序,但是在androID系统中一般不会把已经kill掉的进程ID重新分配给新的进程。
新产生进程的进程号,一般比产生之前所有的进程号都要大。
3.gID
对应于linux中用户组的概念,androID 中 gID 等于uID。
4.UserID
在AndroID中,多用户情况下,userList.xml中会定义一个user ID,表示当前是哪个user,此时的user ID是从0开始递增。
userList.xml中的内容:
<?xml version='1.0' enCoding='utf-8' standalone='yes' ?><users nextSerialNumber="10" version="7"> <guestRestrictions> <restrictions no_sms="true" no_install_unkNown_sources="true" no_config_wifi="true" no_outgoing_calls="true" /> </guestRestrictions> <deviceOwnerUserID ID="-10000" /> <user ID="0" /></users>
总结
以上是内存溢出为你收集整理的uid gid pid等的区别全部内容,希望文章能够帮你解决uid gid pid等的区别所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)