struct class 구조체와 class_create()함수 질문있습니다.
안녕하세요 디바이스 드라이버를 공부하고 있는 학생입니다. 예제 소스부터 분석하고 있는데요
struct class가 정확히 어떤 것을 의미하는지 모르겠습니다.
class_create()함수가 책에서는 sysfs항목을 설정한다. 인터넷에선 드라이버 종류를 설정한다 이렇게 나오는데 class_create()함수를 커널 파고 들어가도 어떤것을 의미하는지 파악을 못 하겠습니다...
239 struct class *__class_create(struct module *owner, const char *name,
240 struct lock_class_key *key)
241 {
242 struct class *cls;
243 int retval;
244
245 cls = kzalloc(sizeof(*cls), GFP_KERNEL);
246 if (!cls) {
247 retval = -ENOMEM;
248 goto error;
249 }
250
251 cls->name = name;
252 cls->owner = owner;
253 cls->class_release = class_create_release;
254
255 retval = __class_register(cls, key);
256 if (retval)
257 goto error;
258
259 return cls;
260
261 error:
262 kfree(cls);
263 return ERR_PTR(retval);
264 }
댓글 달기