Android 8 storaged
জন্য সমর্থন যোগ করে, একটি অ্যান্ড্রয়েড নেটিভ ডেমন যা অ্যান্ড্রয়েড ডিভাইসে স্টোরেজ মেট্রিক্স সংগ্রহ ও প্রকাশ করে।
- দৈনিক ডিস্কস্ট্যাটের জন্য,
storaged
পর্যায়ক্রমে/sys/block/mmcblk0/stat
(eMMC স্টোরেজ ডিভাইস) অথবা/sys/block/sda/stat
(নন-eMMC ডিভাইস) পার্স করে। - eMMC আজীবনের জন্য,
storaged
পার্স/d/mmc0/mmc0:001/ext_csd
(যদি পাওয়া যায়)। - অ্যাপ I/O দোষারোপ করার জন্য,
storaged
পর্যায়ক্রমে/proc/uid_io/stats
অতিক্রম করে এবং পার্স করা ডেটা রক্ষণাবেক্ষণ করে, যার মধ্যে সমস্ত অ্যাপের ডেটা অন্তর্ভুক্ত থাকে (শুধু চলমান অ্যাপ নয়)।dumpsys
একটি বাগ রিপোর্টে অ্যাপ I/O ব্যবহার লগ করার জন্যstoraged
কল করতে পারে।
ডিস্কস্ট্যাট (স্টলড ডিস্কস্ট্যাট সহ) এবং eMMC তথ্য Android ইভেন্ট লগে লগ করা হয়, যেখানে একটি প্ল্যাটফর্ম চেকইন পরিষেবা লগগুলি সংগ্রহ করে।
storaged
ক্রিয়াকলাপগুলি স্বয়ংক্রিয়ভাবে ঘটে এবং সম্পূর্ণরূপে অ্যান্ড্রয়েড ফ্রেমওয়ার্ক দ্বারা পরিচালিত হয়, তাই আপনাকে কোন বাস্তবায়ন কাজ করতে হবে না। এই পৃষ্ঠায় storaged
নকশা (নতুন ইন্টারফেস সহ) এবং কার্নেল থেকে I/O স্ট্যাটাস পেতে কীভাবে ব্যবহার করতে হবে তা বর্ণনা করা হয়েছে।
সঞ্চিত নকশা
অ্যাকাউন্টিং এবং অনুমতির নমনীয়তার জন্য, storaged
একটি কার্নেল মডিউল হিসাবে প্রয়োগ করা হয় যা প্রতি-uid I/O তথ্য প্রদান করে (স্ট্যান্ডার্ড proc/PID/io
ব্যবহার করার পরিবর্তে)। প্রতিটি I/O অনুরোধের জন্য কাঁচা I/O ডেটা কার্নেল task_struct
এ সংরক্ষিত এবং আপডেট করা অব্যাহত থাকে এবং কার্নেল কখন একটি প্রক্রিয়া প্রস্থান করে তা ট্র্যাক রাখে যাতে এটি শেষ storaged
পোলিং ইভেন্ট থেকে ঘটে যাওয়া I/O ব্যবহার মিস না করে।
মডিউলটি কাঁচা ডেটা পড়ে এবং শুধুমাত্র যখন ফ্রেমওয়ার্ক এটিকে একটি uid ফোরগ্রাউন্ড/ব্যাকগ্রাউন্ড সুইচ সম্পর্কে অবহিত করে বা যখন storaged
ডেমন একটি রিপোর্টের অনুরোধ করে তখনই এটি প্রক্রিয়া করে। সেই সময়ে, ফ্রেমওয়ার্ক এবং storaged
ডেমনের সাথে যোগাযোগের জন্য মডিউল কার্নেল থেকে একটি ফাইল নোড রপ্তানি করে।
storaged
/proc/uid_io/stats
ইন্টারফেস প্রবর্তন করে, যা সিস্টেমের প্রতিটি UID-র জন্য I/O পরিসংখ্যানের একটি তালিকা প্রদান করে। বিন্যাস হল:
<uid>: <foreground read bytes> <foreground write bytes> <foreground read chars> <foreground write chars> <background read bytes> <background write bytes> <background read chars> <background write chars>
- রিড/রাইট বাইট হল স্টোরেজ ডিভাইসের I/O ইভেন্ট।
- রিড/রাইট অক্ষর (বাইটেও) রিড/রাইট সিস্কাল দ্বারা অনুরোধ করা ডেটা।
কার্নেল থেকে I/O স্থিতি পান
কার্নেল থেকে I/O ব্যবহার ডাম্প করতে, -u
বিকল্পের সাথে storaged
কমান্ড ব্যবহার করুন।
কমান্ড: storaged -u
কমান্ড আউটপুট বিন্যাস: name/uid fg_rchar fg_wchar fg_rbytes fg_wbytes bg_rchar bg_wchar bg_rbytes bg_wbytes fg_fsync bg_fsync
দ্রষ্টব্য: এই আউটপুটটি proc/uid_io/stats
এর আউটপুটের অনুরূপ। এর কারণ হল storaged
ডেটা /proc/uid_io/stats
থেকে প্রসেস করে এবং নিজস্ব ডেটা তৈরি করে।
উদাহরণ আউটপুট:
com.google.android.backuptransport 2269 60 0 0 1719845663 143912573 149065728 184180736 com.android.vending 2170 60 0 0 219904796 38693092 174436352 18944000