.\" -*- coding: UTF-8 -*- '\" t .\" Copyright 1995, James R. Van Zandt .\" Copyright 1995, Andries E. Brouwer .\" Copyright 1995, Rickard E. Faith .\" Copyright 1995, H. Peter Anvin .\" Copyright, the authors of the Linux man-pages project .\" .\" SPDX-License-Identifier: GPL-2.0-or-later .\" .\" FIXME The following are not documented: .\" KDFONTOP (since Linux 2.1.111) .\" KDGKBDIACRUC (since Linux 2.6.24) .\" KDSKBDIACR .\" KDSKBDIACRUC (since Linux 2.6.24) .\" KDKBDREP (since Linux 2.1.113) .\" KDMAPDISP (not implemented as at Linux 2.6.27) .\" KDUNMAPDISP (not implemented as at Linux 2.6.27) .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH ioctl_kd 2 "8 فبراير 2026" "صفحات دليل لينكس 6.18" .SH الاسم ioctl_kd \- أوامر ioctl للطرفية التحكمية ووحدات التحكم الافتراضية .SH موجز .nf \fB#include \fP /* Definition of op constants */ \fB#include \fP .P \fBint ioctl(int \fP\fIfd\fP\fB, unsigned long \fP\fIop\fP\fB, void *\fP\fIargp\fP\fB);\fP .fi .SH الوصف عمليات \fBioctl\fP(2) الخاصة بلينكس التالية مدعومة لمحطات الطرفية ووحدات التحكم الافتراضية. .TP \fBKDGETLED\fP احصل على حالة مصابيح LED. يشير \fIargp\fP إلى \fIuint8_t\fP. تُضبط البتات الثلاث السفلى من \fI*argp\fP على حالة مصابيح LED، كما يلي: .TS l l l. LED_CAP 0x04 مصباح قفل الأحرف الكبيرة LED_NUM 0x02 مصباح قفل الأرقام LED_SCR 0x01 مصباح قفل التمرير .TE .TP \fBKDSETLED\fP اضبط مصابيح LED. تُضبط مصابيح LED لتتوافق مع البتات الثلاث السفلى من العدد الصحيح الطويل غير الموقّع في \fIargp\fP. ومع ذلك، إذا تم ضبط بت ذو ترتيب أعلى، تعود مصابيح LED إلى الوضع الطبيعي: عرض حالة وظائف لوحة المفاتيح لقفل الأحرف الكبيرة وقفل الأرقام وقفل التمرير. .P قبل لينكس 1.1.54، كانت مصابيح LED تعكس فقط حالة أعلام لوحة المفاتيح المقابلة، وكانت KDGETLED/KDSETLED تغير أيضًا أعلام لوحة المفاتيح. منذ لينكس 1.1.54، يمكن جعل مصابيح LED تعرض معلومات عشوائية، لكنها مبدئيًا تعرض أعلام لوحة المفاتيح. يُستخدم أمرا ioctl التاليان للوصول إلى أعلام لوحة المفاتيح. .TP \fBKDGKBLED\fP احصل على أعلام لوحة المفاتيح CapsLock وNumLock وScrollLock (وليس الأضواء). يشير \fIargp\fP إلى \fIuint8_t\fP يُضبط على حالة العلم. تحصل البتات الثلاث السفلى (قناع 0x7) على حالة العلم الحالية، وتحصل البتات السفلى من النيبل التالي (قناع 0x70) على حالة العلم المبدئية. (منذ لينكس 1.1.54.) .TP \fBKDSKBLED\fP اضبط أعلام لوحة المفاتيح CapsLock وNumLock وScrollLock (وليس الأضواء). \fIargp\fP هو عدد صحيح طويل غير موقّع يحتوي على حالة العلم المطلوبة. تحتوي البتات الثلاث السفلى (قناع 0x7) على حالة العلم، وتحتوي البتات السفلى من النيبل التالي (قناع 0x70) على حالة العلم المبدئية. (منذ لينكس 1.1.54.) .TP \fBKDGKBTYPE\fP احصل على نوع لوحة المفاتيح. يُرجع هذا القيمة KB_101، المُعرّفة كـ 0x02. .TP \fBKDADDIO\fP أضف منفذ إدخال/إخراج كصالح. مكافئ لـ \fIioperm(arg,1,1)\fP. .TP \fBKDDELIO\fP احذف منفذ إدخال/إخراج كصالح. مكافئ لـ \fIioperm(arg,1,0)\fP. .TP \fBKDENABIO\fP فعّل الإدخال/الإخراج إلى بطاقة الفيديو. مكافئ لـ \fIioperm(0x3b4, 0x3df\-0x3b4+1, 1)\fP. .TP \fBKDDISABIO\fP عطّل الإدخال/الإخراج إلى بطاقة الفيديو. مكافئ لـ \fIioperm(0x3b4, 0x3df\-0x3b4+1, 0)\fP. .TP \fBKDSETMODE\fP اضبط وضع النص/الرسوميات. \fIargp\fP هو عدد صحيح غير موقّع يحتوي على واحد من: .TS l l. KD_TEXT 0x00 KD_GRAPHICS 0x01 .TE .TP \fBKDGETMODE\fP الحصول على وضع النص/الرسوميات. يشير \fIargp\fP إلى \fIint\fP يُضبط على إحدى القيم الموضحة أعلاه لـ \fBKDSETMODE\fP. .TP \fBKDMKTONE\fP توليد نغمة بطول محدد. تحدد الـ 16 بت السفلية من العدد الصحيح الطويل غير الموقع في \fIargp\fP الفترة بدورات الساعة، وتعطي الـ 16 بت العلوية المدة بالميلي ثانية. إذا كانت المدة صفرًا، يُطفأ الصوت. تعود السيطرة فورًا. على سبيل المثال، \fIargp\fP = (125<<16) + 0x637 سيحدد الصفير المرتبط عادةً بـ ctrl\-G. (وهكذا، منذ Linux 0.99pl1؛ معطل في Linux 2.1.49\-50.) .TP \fBKIOCSOUND\fP بدء أو إيقاف توليد الصوت. تحدد الـ 16 بت السفلية من \fIargp\fP الفترة بدورات الساعة (أي \fIargp\fP = 1193180/التردد). \fIargp\fP = 0 يطفئ الصوت. في كلتا الحالتين، تعود السيطرة فورًا. .TP \fBGIO_CMAP\fP الحصول على خريطة الألوان المبدئية الحالية من النواة. يشير \fIargp\fP إلى مصفوفة بحجم 48 بايت. (منذ Linux 1.3.3.) .TP \fBPIO_CMAP\fP تغيير خريطة الألوان المبدئية لوضع النص. يشير \fIargp\fP إلى مصفوفة بحجم 48 بايت تحتوي، بالترتيب، على قيم الأحمر والأخضر والأزرق للألوان الـ 16 المتاحة للشاشة: 0 يعني إيقاف، و255 يعني شدة كاملة. الألوان المبدئية هي، بالترتيب: أسود، أحمر داكن، أخضر داكن، بني، أزرق داكن، أرجواني داكن، سماوي داكن، رمادي فاتح، رمادي داكن، أحمر ساطع، أخضر ساطع، أصفر، أزرق ساطع، أرجواني ساطع، سماوي ساطع، وأبيض. (منذ Linux 1.3.3.) .TP \fBGIO_FONT\fP الحصول على خط الشاشة ذي 256 حرفًا بشكل موسع. يشير \fIargp\fP إلى مصفوفة بحجم 8192 بايت. يفشل مع رمز الخطأ \fBEINVAL\fP إذا كان الخط المحمل حاليًا هو خط ذو 512 حرفًا، أو إذا لم تكن وحدة التحكم في وضع النص. .TP \fBGIO_FONTX\fP الحصول على خط الشاشة والمعلومات المرتبطة به. يشير \fIargp\fP إلى \fIstruct consolefontdesc\fP (انظر \fBPIO_FONTX\fP). عند الاستدعاء، يجب ضبط حقل \fIcharcount\fP على أقصى عدد من الأحرف التي قد تتسع في المخزن المؤقت المشار إليه بـ \fIchardata\fP. عند العودة، يُملأ كل من \fIcharcount\fP و \fIcharheight\fP بالبيانات الخاصة بالخط المحمل حاليًا، وتحتوي مصفوفة \fIchardata\fP على بيانات الخط إذا كانت القيمة الأولية لـ \fIcharcount\fP تشير إلى توفر مساحة كافية؛ وإلا، يبقى المخزن المؤقت دون تغيير ويُضبط \fIerrno\fP على \fBENOMEM\fP. (منذ Linux 1.3.1.) .TP \fBPIO_FONT\fP ضبط خط الشاشة ذي 256 حرفًا. تحميل الخط في مولد الأحرف EGA/VGA. يشير \fIargp\fP إلى خريطة بحجم 8192 بايت، مع 32 بايت لكل حرف. يُستخدم فقط أول \fIN\fP منها لخط 8x\fIN\fP (0 < \fIN\fP <= 32). يُبطل هذا الاستدعاء أيضًا تعيين Unicode. .TP \fBPIO_FONTX\fP ضبط خط الشاشة ومعلومات العرض المرتبطة به. يشير \fIargp\fP إلى .IP .in +4n .EX struct consolefontdesc { unsigned short charcount; /* characters in font (256 or 512) */ unsigned short charheight; /* scan lines per character (1\-32) */ char *chardata; /* font data in expanded form */ }; .EE .in .IP إذا لزم الأمر، سيُعاد تحجيم الشاشة بشكل مناسب، ويُرسل \fBSIGWINCH\fP إلى العمليات المناسبة. يُبطل هذا الاستدعاء أيضًا تعيين Unicode. (منذ Linux 1.3.1.) .TP \fBPIO_FONTRESET\fP إعادة ضبط خط الشاشة وحجمه وتعيين Unicode إلى الإعدادات المبدئية للإقلاع. \fIargp\fP غير مستخدم، ولكن يجب ضبطه على NULL لضمان التوافق مع الإصدارات المستقبلية من Linux. (منذ Linux 1.3.28.) .TP \fBGIO_SCRNMAP\fP الحصول على تعيين الشاشة من النواة. يشير \fIargp\fP إلى منطقة بحجم E_TABSZ، تُحمّل بمواضع الخط المستخدمة لعرض كل حرف. من المحتمل أن يعيد هذا الاستدعاء معلومات غير مفيدة إذا كان الخط المحمل حاليًا يحتوي على أكثر من 256 حرفًا. .TP \fBGIO_UNISCRNMAP\fP الحصول على تعيين Unicode الكامل للشاشة من النواة. يشير \fIargp\fP إلى منطقة بحجم \fIE_TABSZ*sizeof(unsigned short)\fP، تُحمّل بـ Unicodes التي يمثلها كل حرف. تُستخدم مجموعة خاصة من Unicodes، تبدأ من U+F000، لتمثيل تعيينات "مباشرة إلى الخط". (منذ Linux 1.3.1.) .TP \fBPIO_SCRNMAP\fP تحميل الجدول "القابل للتعريف من قبل المستخدم" (الرابع) في النواة الذي يعيّن البايتات إلى رموز شاشة وحدة التحكم. يشير \fIargp\fP إلى منطقة بحجم E_TABSZ. .TP \fBPIO_UNISCRNMAP\fP تحمّل الجدول "القابل للتعريف من قبل المستخدم" (الرابع) في النواة الذي يربط البايتات بـ Unicodes، والتي تُترجم بعد ذلك إلى رموز شاشة وفقًا لخريطة Unicode\-to\-font المحملة حاليًا. يمكن استخدام Unicodes الخاصة التي تبدأ بـ U+F000 للربط مباشرة برموز الخط. (منذ Linux 1.3.1.) .TP \fBGIO_UNIMAP\fP الحصول على خريطة Unicode\-to\-font من النواة. يشير \fIargp\fP إلى .IP .in +4n .EX struct unimapdesc { unsigned short entry_ct; struct unipair *entries; }; .EE .in .IP حيث يشير \fIentries\fP إلى مصفوفة من .IP .in +4n .EX struct unipair { unsigned short unicode; unsigned short fontpos; }; .EE .in .IP (منذ Linux 1.1.92.) .TP \fBPIO_UNIMAP\fP وضع خريطة unicode\-to\-font في النواة. يشير \fIargp\fP إلى \fIstruct unimapdesc\fP. (منذ Linux 1.1.92) .TP \fBPIO_UNIMAPCLR\fP مسح الجدول، مع إمكانية تقديم نصيحة لخوارزمية التجزئة. يشير \fIargp\fP إلى .IP .in +4n .EX struct unimapinit { unsigned short advised_hashsize; /* 0 if no opinion */ unsigned short advised_hashstep; /* 0 if no opinion */ unsigned short advised_hashlevel; /* 0 if no opinion */ }; .EE .in .IP (منذ Linux 1.1.92.) .TP \fBKDGKBMODE\fP يحصل على وضع لوحة المفاتيح الحالي. يشير \fIargp\fP إلى \fIlong\fP يُضبط على أحد هذه: .TS l l. K_RAW 0x00 /* وضع خام (scancode) */ K_XLATE 0x01 /* ترجمة keycodes باستخدام keymap */ K_MEDIUMRAW 0x02 /* وضع خام متوسط (scancode) */ K_UNICODE 0x03 /* وضع Unicode */ K_OFF 0x04 /* وضع معطل (منذ Linux 2.6.39) */ .\" K_OFF: commit 9fc3de9c83565fcaa23df74c2fc414bb6e7efb0a .TE .TP \fBKDSKBMODE\fP يضبط وضع لوحة المفاتيح الحالي. \fIargp\fP هو \fIlong\fP يساوي إحدى القيم المعروضة لـ \fBKDGKBMODE\fP. .TP \fBKDGKBMETA\fP يحصل على وضع معالجة مفتاح meta. يشير \fIargp\fP إلى \fIlong\fP يُضبط على أحد هذه: .TS l l l. K_METABIT 0x03 تعيين البت الأعلى رتبة K_ESCPREFIX 0x04 بادئة الهروب .TE .TP \fBKDSKBMETA\fP يضبط وضع معالجة مفتاح الميتا. \fIargp\fP هو \fIlong\fP يساوي إحدى القيم الموضحة أعلاه لـ \fBKDGKBMETA\fP. .TP \fBKDGKBENT\fP يجلب مدخلة واحدة في جدول ترجمة المفاتيح (من رمز المفتاح إلى رمز الإجراء). \fIargp\fP يشير إلى .IP .in +4n .EX struct kbentry { unsigned char kb_table; unsigned char kb_index; unsigned short kb_value; }; .EE .in .IP مع تعبئة أول عضوين: \fIkb_table\fP يختار جدول المفاتيح (0 <= \fIkb_table\fP < MAX_NR_KEYMAPS)، و \fIkb_index\fP هو رمز المفتاح (0 <= \fIkb_index\fP < NR_KEYS). يُضبط \fIkb_value\fP على رمز الإجراء المقابل، أو K_HOLE إذا لم يكن هناك مفتاح من هذا القبيل، أو K_NOSUCHMAP إذا كان \fIkb_table\fP غير صالح. .TP \fBKDSKBENT\fP يضبط مدخلة واحدة في جدول الترجمة. \fIargp\fP يشير إلى \fIstruct kbentry\fP. .TP \fBKDGKBSENT\fP يجلب سلسلة مفتاح وظيفة واحد. \fIargp\fP يشير إلى .IP .in +4n .EX struct kbsentry { unsigned char kb_func; unsigned char kb_string[512]; }; .EE .in .IP يُضبط \fIkb_string\fP على السلسلة (المنتهية بقيمة خالية) المقابلة لرمز إجراء مفتاح الوظيفة رقم \fIkb_func\fP. .TP \fBKDSKBSENT\fP يضبط مدخلة سلسلة مفتاح وظيفة واحد. \fIargp\fP يشير إلى \fIstruct kbsentry\fP. .TP \fBKDGKBDIACR\fP يقرأ جدول التشكيل في النواة. \fIargp\fP يشير إلى .IP .in +4n .EX struct kbdiacrs { unsigned int kb_cnt; struct kbdiacr kbdiacr[256]; }; .EE .in .IP حيث \fIkb_cnt\fP هو عدد المدخلات في المصفوفة، كل منها هو .IP .in +4n .EX struct kbdiacr { unsigned char diacr; unsigned char base; unsigned char result; }; .EE .in .TP \fBKDGETKEYCODE\fP يقرأ مدخلة جدول رموز المفاتيح في النواة (من رمز المسح إلى رمز المفتاح). \fIargp\fP يشير إلى .IP .in +4n .EX struct kbkeycode { unsigned int scancode; unsigned int keycode; }; .EE .in .IP يُضبط \fIkeycode\fP ليتوافق مع \fIscancode\fP المعطى. (فقط 89 <= \fIscancode\fP <= 255. بالنسبة لـ 1 <= \fIscancode\fP <= 88، \fIkeycode\fP==\fIscancode\fP.) (منذ Linux 1.1.63.) .TP \fBKDSETKEYCODE\fP يكتب مدخلة جدول رموز المفاتيح في النواة. \fIargp\fP يشير إلى \fIstruct kbkeycode\fP. (منذ Linux 1.1.63.) .TP \fBKDSIGACCEPT\fP تشير العملية المستدعية إلى استعدادها لقبول الإشارة \fIargp\fP عند توليدها بالضغط على تركيبة مفاتيح مناسبة. (1 <= \fIargp\fP <= NSIG). (انظر \fIspawn_console\fP() في \fIlinux/drivers/char/keyboard.c\fP.) .SH "قيمة الإرجاع" يُعاد 0 عند النجاح (إلا في الحالات الموضحة). ويُعاد \-1 عند الفشل، وتُضبط \fIerrno\fP للإشارة إلى الخطأ. .SH الأخطاء .TP \fBEINVAL\fP \fIargp\fP غير صالح. .SH المعايير لينكس. .SH "انظر أيضًا" \fBioctl\fP(2)، \fBioctl_console\fP(2) .PP .SH ترجمة تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي . .PP هذه الترجمة هي وثيقة مجانية؛ راجع .UR https://www.gnu.org/licenses/gpl-3.0.html رخصة جنو العامة الإصدار 3 .UE أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات. .PP إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: .MT kde-l10n-ar@kde.org .ME .