memtrack_module স্ট্রাকট রেফারেন্স

memtrack_module স্ট্রাকট রেফারেন্স

#include < memtrack.h >

ডেটা ক্ষেত্র

struct hw_module_t সাধারণ
int(* init )(const struct memtrack_module *মডিউল)
int(* getMemory )(const struct memtrack_module *module, pid_t pid, int টাইপ, struct memtrack_record *রেকর্ড, size_t *সংখ্যা_রেকর্ড)

বিস্তারিত বিবরণ

প্রতিটি হার্ডওয়্যার মডিউলে অবশ্যই HAL_MODULE_INFO_SYM নামে একটি ডেটা স্ট্রাকচার থাকতে হবে এবং এই ডাটা স্ট্রাকচারের ক্ষেত্রগুলি অবশ্যই hw_module_t দিয়ে শুরু হতে হবে এবং তারপরে মডিউল নির্দিষ্ট তথ্য থাকবে৷

memtrack.h ফাইলের 120 লাইনে সংজ্ঞা।

ফিল্ড ডকুমেন্টেশন

struct hw_module_t সাধারণ

memtrack.h ফাইলের 121 লাইনে সংজ্ঞা।

int(* getMemory)(const struct memtrack_module *module, pid_t pid, int টাইপ, struct memtrack_record *রেকর্ড, size_t *সংখ্যা_রেকর্ড)

(*getMemory)() রেকর্ড অবজেক্টের একটি অ্যারে আশা করে এবং মেমরির মাপ এবং সেই মেমরির জন্য সংশ্লিষ্ট পতাকা সহ *সংখ্যা_রেকর্ড স্ট্রাকচার পর্যন্ত পূরণ করে। এটি *সংখ্যা_রেকর্ডের মোট সংখ্যার সাথে আপডেট করে যদি এটি ফেরত দিতে পারে যদি *সংখ্যা_রেকর্ডগুলি পাস করার সময় যথেষ্ট বড় হয়। সাইজ 0 সহ রেকর্ড ফেরত দেওয়া প্রত্যাশিত, একই মেমরি টাইপের জন্য getMemory-এ কলগুলির মধ্যে রেকর্ডের সংখ্যা পরিবর্তিত হওয়া উচিত নয়, এমনকি বিভিন্ন পিডের জন্য।

কলার প্রায়শই getMemory-কে একটি টাইপ এবং পিডের জন্য *num_records == 0 এর জন্য কল করে তা নির্ধারণ করতে কত রেকর্ডের জন্য রুম বরাদ্দ করতে হবে, এই কেসটি HAL-এ একটি ফাস্ট-পাথ হওয়া উচিত, একটি ধ্রুবক ফেরত দেয় এবং কোনো কার্নেল ফাইল অনুসন্ধান না করে। যদি *সংখ্যা_রেকর্ডগুলি 0 হয়, তাহলে রেকর্ডগুলি NULL হতে পারে।

এই ফাংশনটি অবশ্যই থ্রেড-নিরাপদ হতে হবে, এটি একই সময়ে একাধিক থ্রেড থেকে কল করা যেতে পারে।

সাফল্যে 0 ফেরত দেয়, -ENODEV যদি টাইপটি সমর্থিত না হয়, -অন্যান্য ত্রুটির ক্ষেত্রে errno।

memtrack.h ফাইলের 151 লাইনে সংজ্ঞা।

int(* init)(const struct memtrack_module *মডিউল)

(*init)() মেমট্র্যাক ম্যানেজমেন্ট সেটআপ অ্যাকশন সঞ্চালন করে এবং getMemory()- এ যেকোনো কল করার আগে একবার কল করা হয়। সাফল্যের উপর 0 ফেরত দেয়, -ত্রুটির উপর ত্রুটি।

memtrack.h ফাইলের 128 লাইনে সংজ্ঞা।


এই কাঠামোর জন্য ডকুমেন্টেশন নিম্নলিখিত ফাইল থেকে তৈরি করা হয়েছিল:
  • hardware/libhardware/include/hardware/ memtrack.h