الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

سؤال عن بعض دوال السى

مغلق
بدأه mohammed 123 في 24 مارس 2007 · 10 رد · 1,043 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

أولا أحب أن أوضح مدى سعادتى لأنضمامى لهذا المنتدى والصرح الكبير

ثانيا أتاسف لأنى هتقل عليكم بهذة الأسئلة ولكنى بالفعل أريد أن أعرف ما عملها بالضبط وكيفية أستخدامها

وهى ديه الدوال

int	 execl(char *path, char *arg0, ...);
int	 execle(char *path, char *arg0, ...);
int	 execlp(char *path, char *arg0, ...);
int	 execlpe(char *path, char *arg0, ...);
int	 execv(char *path, char *argv[]);
int	 execve(char *path, char *argv[], char **env);
int	 execvp(char *path, char *argv[]);
int	 execvpe(char *path, char *argv[], char **env);
int	 spawnl(int mode, char *path, char *arg0, ...);
int	 spawnle(int mode, char *path, char *arg0, ...);
int	 spawnlp(int mode, char *path, char *arg0, ...);
int	 spawnlpe(int mode, char *path, char *arg0, ...);
int	 spawnv(int mode, char *path, char *argv[]);
int	 spawnve(int mode, char *path, char *argv[], char **env);
int	 spawnvp(int mode, char *path, char *argv[]);
int	 spawnvpe(int mode, char *path, char *argv[], char **env);
int	  bioscom(int cmd, char abyte, int port);
int	 biosdisk(int cmd, int drive, int head, int track, int sector,
			int nsects, void *buffer);
int	 biosequip(void);
int	 bioskey(int cmd);
int	 biosmemory(void);
int	 biosprint(int cmd, int abyte, int port);
long	 biostime(int cmd, long newtime);

وشكرا مقدما

#2

للرفع

#3
اقتباس
للرفع
#4

تقول الحكمه "لا تعطينيسمكه .. بل علمني كيف اصطاد "

أخي الفاضل قد تجد كثير بل الاكثر من المبرمجين اصحاب الخبرات يجهلون هذة الدوال

لانها تتعلق ب system programing وليس ب لغه البرمجه

بمعنى ان هذة الدوال ليست جزء من السي انما جزء من نظام التشغيل

كي لا اطيل عليك الدوال من عائله exec

تاخذ اسم برنامج معين وتبدله ببرنامج الحالي مع الاحتفاظ بجميع الملفات المفتوحه من البرنامج السابق

ويكمل البرنامج الجديد عمله حتى ينتهي اما البرنامج الذي دعا الدله فينتهي به المطاف عندها

و عائله الداله spawn

اولا تقوم بنسخ البرنامج بنفس حالته في بروسس جديدة ثم تنادي exec

ليبدله ب برنامج جديد

اما bois

لا اخفي جهلي بها الا ان اسمها ينبي عن عملها

فهي تتعلق ب وظائف ال bios والله اعلم

هذا شي من الاختصار ول اتمام الحكمه المبدوء بها

Read this

http://www.yolinux.com/TUTORIALS/ForkExecProcesses.html

#5
اقتباس
بمعنى ان هذة الدوال ليست جزء من السي انما جزء من نظام التشغيل

هي لأي نظام تشغيل؟ Linux ؟

إن كانت تلك الدوال في Linux فأعتقد أنك ستجد شرحاً كافٍ لها في كتب برمجة نظام linux ..

---

الدوال التي ذكرها الأخ موجودة أيضاً ضمن مكتبات Turbo C ..

إن كان الأخ يستعمل Turbo C For DOS فأظن أن الشرح في Turbo C Help يفي بالغرض كما أن لكل دالة مثال خاص بها ...

وإن كانت الدوال المقصودة غير ذلك فيرجى التوضيح هي في أي نظام تشغيل أو في مكتبات أي مترجم ..

تم تعديل هذه المشاركة بواسطة cipher في 27 مارس 2007 في 07:37

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#6

ياريت لو توضح السؤال الله يبارك فيك

موقوف من المشاركة لقلة الأدب

============================

#7

أنا أسف أخوتى على هذا التغيب

وفعلا أنا وجدت هذه الدوال فى مكتبة التربو وأنا لا أوافقك الرأى أخى DUB

اقتباس
أخي الفاضل قد تجد كثير بل الاكثر من المبرمجين اصحاب الخبرات يجهلون هذة الدوال

لانها تتعلق ب system programing وليس ب لغه البرمجه

بمعنى ان هذة الدوال ليست جزء من السي انما جزء من نظام التشغيل

هذه الدوال أخى من ضمن مكتبة السى القياسية ولا أظن أن مبرمج قد وصل درجة الخبرة فى لغة لم يطلع على دوالها القياسية!

أذا كان هذا فأن أذا خبير!!!

#8

السلام عليكم

ليس لدي خبرة للاسف في لغة الـ C و مكتباتها و لكن وجدت هذا الموقع الذي يشرح ما تريده على ما أعتقد :

http://mkssoftware.com/docs/man3/execl.3.asp

http://poli.cs.vsb.cz/c/help/process0.htm

http://gd.tuwien.ac.at/languages/c/program...rown/advcw2.htm

لدي ملاحظة و هي أن بعض المكتبات التي تأتي مع المترجمات ليس قياسية مثل conio في Turbo بشكل خاص

تحياتي ,,

#9

أخى خالد

شكرا أولا على الروابط

وثانيا أنا أتفق معك على ملاحظتك ولكن أنا لا أقول أن كل المكتبات القادمة معها قياسية وألا فيما يتفوق مترجم على مترجم ونسخة على نسخة بالإضافة إلى المهام الجديدة المضافة أو زيادة مرونة التعامل مع كلا الأثنين المبرمج والنظام ,, وشكرا ثانية .

تم تعديل هذه المشاركة بواسطة mohammed 123 في 28 مارس 2007 في 16:11

#10

إن كنت تستخدم Turbo C فالشرح والأمثلة في الـ Help تكفي لتعطيك فكرة مبدئية عن جميع الدوال التي ذكرتها ..

شخصياً تعاملت مع بعض هذه الدوال حين كنت أستخدم Turbo C - قبل 6 سنوات أو أكثر :) -.

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#11

اخي العزيز ليس كل ماهو في ال stdlib.h جزء من ال c

السي هي كما شرحت في كتاب the c programming langue

ل Dennis M.Ritche & Bain W.Kernighan

اما مايظاف من قبل النظام و موزعي المترجم امر اخر

ونصيحتي لمن يريد تعلم البرمجه لا تبدا بال c لانها ليست كما تبدو في كتب التعليم

ولكن ابدا بلعه مثل pascal , Basic

حتى تتمكن من المنط وتتقن الاساليب البرمجيه ثم ادخل على ما تريد من عالم البرمجه

هذا الموضوع مغلق.

مواضيع مشابهة