انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید


توزیع گنو/لینوکس اوبونتو ۲۰ ساله شد 🎉

نویسنده موضوع: نوشتن کرنل  (دفعات بازدید: 4699 بار)

0 کاربر و 1 مهمان درحال مشاهده موضوع.

آفلاین parsaz

  • Full Member
  • *
  • ارسال: 124
نوشتن کرنل
« : 19 شهریور 1390، 11:19 ب‌ظ »
سلام دوستان عزیز

چطوری میشه یک کرنل نوشت ؟


آفلاین ham!d

  • High Sr. Member
  • *
  • ارسال: 599
پاسخ به: نوشتن کرنل
« پاسخ #1 : 20 شهریور 1390، 12:12 ق‌ظ »

آفلاین parsaz

  • Full Member
  • *
  • ارسال: 124
پاسخ به: نوشتن کرنل
« پاسخ #2 : 20 شهریور 1390، 04:17 ب‌ظ »
سلام

اگه میشه سورس کرنل 3 رو اینجا بزارین و یکم توضیح هم در باره ساختارش بدین

مرسی

آفلاین ٍاحسان ترکم

  • High Hero Member
  • *
  • ارسال: 1039
  • جنسیت : پسر
  • Open your source, Open your mind
پاسخ به: نوشتن کرنل
« پاسخ #3 : 21 شهریور 1390، 01:26 ق‌ظ »
سلام

اگه میشه سورس کرنل 3 رو اینجا بزارین و یکم توضیح هم در باره ساختارش بدین

مرسی

اول از همه باید بدونی سیستم عامل چیه و ساختارش چیه ( چند جلد کتاب)

بعد زبان سی رو فول باشی

اونوقت بشینی رو هسته ی لینوکس کار کنی.
بین نرم‌افزار open source و نرم‌افزارهای Free Software تفاوت در روش تبلیغ و گرایش‌های عرضه‌كنندگان آن‌ها نهفته است.
در واقع كاركرد شما به عنوان عرضه كننده نرم‌افزار تفاوتی نمی‌كند،



آفلاین parsaz

  • Full Member
  • *
  • ارسال: 124
پاسخ به: نوشتن کرنل
« پاسخ #4 : 21 شهریور 1390، 01:31 ق‌ظ »
خوب یا قرض ‌+ همه این موارد

من می خوام برا یک توزیع شخصی بر پایه ی اوبونتو کرنل بنویسم

نه از اول رو همون کرنل نوشته شده کار کنم ولی از یکی کمک می خوام که با ساختارش منو آشنا کنه .


ممنون

آفلاین Mohammad Reza Soltany

  • Full Member
  • *
  • ارسال: 182
  • جنسیت : پسر
    • وب نوشته های یک مینی روزنامه نگار
پاسخ به: نوشتن کرنل
« پاسخ #5 : 21 شهریور 1390، 11:12 ق‌ظ »
خب اگه بخواین یه توزیع شخصی بنویسین که بر پایه ی اوبونتو باشه که دیگه نیازی به نوشتن کرنل جدید نیست....
اگه شما بتونین کرنل جدید بنویسین که خب اصلا میشه یه سیستم جدید جدا از لینوکس...

آفلاین parsaz

  • Full Member
  • *
  • ارسال: 124
پاسخ به: نوشتن کرنل
« پاسخ #6 : 21 شهریور 1390، 04:03 ب‌ظ »
من می خوام تغییراتی در کرنل ایجاد کنم .

اگه میشه شما دوستان بگیید که چه تغییراتی میشه در کرنل ایجاد کرد ؟

آفلاین mrmrn

  • High Hero Member
  • *
  • ارسال: 1490
  • جنسیت : پسر
  • آقا مرتضی
پاسخ به: نوشتن کرنل
« پاسخ #7 : 21 شهریور 1390، 05:28 ب‌ظ »
من می خوام تغییراتی در کرنل ایجاد کنم .

اگه میشه شما دوستان بگیید که چه تغییراتی میشه در کرنل ایجاد کرد ؟

خب شما نکنه منظورتون اینه که میخواین یه کرنل سفارشی برا توزیع خودتون بسازین؟این خب یه حرف دیگس و شما نیاز دارین کرنل رو دانلود کنین و بیفتین به جونش.بعدش چندتا پچ بسته به کارتون بهش اعمال کنین.
اگر مدل دیگه ای هم بشه اینکار رو کرد که در حد برنامه نویسی و اینا نباشه من نمیدونم!!اگرم همینه یه سر به novid.ir بزنید "هرنفر یک کرنل" رو بخونین.

پی نوشت: الان که به http://www.kernel.org/ یر زدم دیدم در دسترس نیست.کاشف به عمل اومد که بله kernel.org در اول سپتامبر مورد حمله قرار گرفت و دلیل down بودن اون اینه که مدیران سیستم مشغول نصب مجدد تمامی سیستم‌ها هستن. حمله به Linux.com و LinuxFoundation.org هم در ۸ سپتامبر کشف شده و اونها هم مشغول به بازسازی هستن. هیچ آسیبی به مخازن کد منبع لینوکس وارد نشده.نقل از آلن باغومیان
« آخرین ویرایش: 21 شهریور 1390، 05:34 ب‌ظ توسط mrmrn »
پدرم به رحمت خدا رفتن. شادی روحش صلوات.

آفلاین ham!d

  • High Sr. Member
  • *
  • ارسال: 599
پاسخ به: نوشتن کرنل
« پاسخ #8 : 21 شهریور 1390، 08:49 ب‌ظ »
شما نیاز دارین کرنل رو دانلود کنین و بیفتین به جونش.بعدش چندتا پچ بسته به کارتون بهش اعمال کنین. یه سر به novid.ir بزنید "هرنفر یک کرنل" رو بخونین.
اینم لینک مطلبی که آقای mrmrn معرفی کردن: http://www.novid.ir/each-a-kernel.html



http://www.novid.ir/tag/%DA%A9%D8%B1%D9%86%D9%84
http://www.digitalhermit.com/linux/Kernel-Build-HOWTO.html
« آخرین ویرایش: 21 شهریور 1390، 09:46 ب‌ظ توسط Dream »

آفلاین Keivan

  • Full Member
  • *
  • ارسال: 191
  • جنسیت : پسر
پاسخ به: نوشتن کرنل
« پاسخ #9 : 21 شهریور 1390، 11:59 ب‌ظ »
یه کتابی هست به نام Linux Kernel Development Second Edition . من این کتابو به فرمت chm دارم. البته شاید ورژن جدیدش هم اومه باشه. من نخوندمش ولی فکر کنم احتیاج به همچین کتابی داری. سوال شما در حد بحث داخل فوروم نیست. توسعه دهنده کرنل لینوکس در ایران هم خیلی کمیابه. ببین با دانیال بهزادی میتونی تماس بگیری که کمکت کنه.

من هنوز شک دارم شما واقعا میخوای برای کرنل برنامه یا ماجولی چیزی بنویسی یا میخوای فقط config کنیش؟

آفلاین parsaz

  • Full Member
  • *
  • ارسال: 124
پاسخ به: نوشتن کرنل
« پاسخ #10 : 22 شهریور 1390، 12:01 ق‌ظ »
من الان تو فکر نوشتن یک کرنلم اگه نشد فقط کامپایلش میکنم :) وتغییرات کوچیکی میدم اگه لینکشو داری لطف کن بذار :)

با تشکر از همه دوستان برا راهنمایی هایی که کردید

اگه سوالی بود مزاحمتون میشم :)

آفلاین ham!d

  • High Sr. Member
  • *
  • ارسال: 599
کتاب درباره‌ی کرنل لینوکس
« پاسخ #11 : 22 شهریور 1390، 01:22 ق‌ظ »
نقل‌قول
گه لینکشو داری لطف کن بذار
لینک دانلود رو نمیشه اینجا گذاشت.

Linux kernel development +Robert Love +2005 +404 Pages
The Linux kernel is one of the most important and far-reaching open-source projects. That is why Novell Press is excited to bring you the second edition of Linux Kernel Development, Robert Love's widely acclaimed insider's look at the Linux kernel. This authoritative, practical guide will helps developers better understand the Linux kernel through updated coverage of all the major subsystems, new features associated with Linux 2.6 kernel and insider information on not-yet-released developments. You'll be able to take an in-depth look at Linux kernel from both a theoretical and an applied perspective as you cover a wide range of topics, including algorithms, system call interface, paging strategies and kernel synchronization. Get the top information right from the source in Linux Kernel Development.
The Linux Kernel API +Lambert M. Surhone, Miriam T. Timpledon, Susan F. Marseken +2010 +391 Pages +Publisher: Betascript Publishing
High Quality Content by WIKIPEDIA articles! The Linux Kernel API is an application programming interface providing a uniform method for device drivers and other low-level software written for the Linux kernel to access system resources and services. An application programming interface (API) is an interface implemented by a software program which enables it to interact with other software. It facilitates interaction between different software programs similar to the way the user interface facilitates interaction between humans and computers. An API is implemented by applications, libraries, and operating systems to determine their vocabularies and calling conventions, and is used to access their services. It may include specifications for routines, data structures, object classes, and protocols used to communicate between the consumer and the implementer of the API.
   Understanding the LINUX Kernel +Daniel Pierre Bovet, Marco Cesati +2005 +Publisher: O'Reilly Media
Understanding the Linux Kernel is intended to be read by those who are happy to check points off against the source code. The first thing you learn is how Linux, released from commercial constraints, is able to take advantage of the best ideas from other systems, implemented in wonderfully flexible ways. A good example is the Virtual File System (VFS), which has made it easy to add support for file systems from almost every other OS. It's fascinating to find out how such features are implemented. Then, there are loadable modules, I/O, scheduling, multitasking, multiprocessing, interrupts, spin locks, semaphores, and all of the other goodies that are involved in making a kernel work.The authors are concerned primarily with the Linux 2.2 kernel. They discuss how Linus Torvald's decisions on kernel issues translate into architecture; for example, how the Linux memory management uses a slab allocator on top of a buddy system for greater efficiency. Similarly, at the cost of a little complexity, the decision to use three-level memory paging, when two work fine on 32-bit systems, makes it possible to port to 64-bit processors without changes. The tradeoffs between complexity and efficiency are discussed for most kernel features, and each chapter finishes with related new features in kernel 2.4.Despite the lucid and knowledgeable writing, you'll come up against some brain-stretching complexity. Nevertheless, this book is an important addition to the Linux canon.
Professional Linux kernel architecture +Wolfgang Mauerer +2008 +Publisher: Wrox +1370 Pages
Find an introduction to the architecture, concepts and algorithms of the Linux kernel in Professional Linux Kernel Architecture , a guide to the kernel sources and large number of connections among subsystems. Find an introduction to the relevant structures and functions exported by the kernel to userland, understand the theoretical and conceptual aspects of the Linux kernel and Unix derivatives, and gain a deeper understanding of the kernel. Learn how to reduce the vast amount of information contained in the kernel sources and obtain the skills necessary to understand the kernel sources.
The Linux Kernel Module Programming Guide +Peter Jay Salzman, Michael Burian, Ori Pomerantz +2009 +82 Pages +Publisher: CreateSpace
So, you want to write a kernel module. You know C, you've written a number of normal programs to run as processes, and now you want to get to where the real action is, to where a single wild pointer can wipe out your file system and a core dump means a reboot. Welcome to the club. Linux Kernel Module Programming Guide is for people who want to write kernel modules. It takes a hands-on approach starting with writing a small "hello, world" program, and quickly moves from there. Far from a boring text on programming, Linux Kernel Module Programming Guide has a lively style that entertains while it educates. Linux Kernel Module Programming Guide is one of the key documents of the Linux Documentation Project, an online compilation of freely distributed manuals and how-to guides on the popular Linux operating system. This book is a printed version of the online documentation, and is provided as a convenience for those who prefer printed manuals. iUniverse.com Computer Books are composed of freely available online computer manuals, industry standard specifications, and electronically distributed computer-programming guides. They include open documents' collections of industry specifications and standards and a collection of the best open source documentation on the Web...the most complete open source library available anywhere. Each book contains the complete, unabridged text of the original document. The on-demand publishing process gives you the actual text of the online document in a convenient, inexpensive, easy-to-use format. And remember...iUniverse.com donates a portion of the profits from open document and open source books to support the mission of the free software community.
Linux Kernel in a Nutshell +Greg Kroah-Hartman +2006 +198 Pages +Publisher:O'Reilly Media, Inc
An operating system's kernel handles all interactions between the CPU and the external world, and determines which programs will share processor time, in what order. This in-depth reference documents Version 2.6 of the Linux kernel, which has seen significant changes to nearly every kernel subsystem, particularly in the areas of memory management and block devices. "Linux Kernel in a Nutshell" explains the conditions that bring out Linux's best performance, and how the OS meets the challenge of providing good system response during process scheduling, file access, and memory management in a wide variety of environments. The 2.6 kernel has brought Linux into the heart of corporate IT environments. This reference shows system administrators and developers how to tweak and configure the kernel for optimal performance.
Linux System Programming: Talking Directly to the Kernel and C Library +Robert Love +2007 +Publisher: O'Reilly Media +387 Pages
This book is about writing software that makes the most effective use of the system you're running on -- code that interfaces directly with the kernel and core system libraries, including the shell, text editor, compiler, debugger, core utilities, and system daemons. The majority of both Unix and Linux code is still written at the system level, and Linux System Programming focuses on everything above the kernel, where applications such as Apache, bash, cp, vim, Emacs, gcc, gdb, glibc, ls, mv, and X exist. Written primarily for engineers looking to program (better) at the low level, this book is an ideal teaching tool for any programmer. Even with the trend toward high-level development, either through web software (such as PHP) or managed code (C#), someone still has to write the PHP interpreter and the C# virtual machine. Linux System Programming gives you an understanding of core internals that makes for better code, no matter where it appears in the stack. Debugging high-level code often requires you to understand the system calls and kernel behavior of your operating system, too. Key topics include: An overview of Linux, the kernel, the C library, and the C compiler Reading from and writing to files, along with other basic file I/O operations, including how the Linux kernel implements and manages file I/O Buffer size management, including the Standard I/O library Advanced I/O interfaces, memory mappings, and optimization techniques The family of system calls for basic process management Advanced process management, including real-time processes File and directories-creating, moving, copying, deleting, and managing them Memory management -- interfaces for allocating memory, managing the memory you have, and optimizing your memory access Signals and their role on a Unix system, plus basic and advanced signal interfaces Time, sleeping, and clock management, starting with the basics and continuing through POSIX clocks and high resolution timers With Linux System Programming, you will be able to take an in-depth look at Linux from both a theoretical and an applied perspective as you cover a wide range of programming topics.
The Linux Kernel Primer: A Top-Down Approach for x86 and PowerPC Architectures +Claudia Salzberg Rodriguez, Gordon Fischer, Steven Smolski +2005 +648 Pages
---
Unreliable guide to hacking the Linux kernel Series +Russell P.R. +2000 +32 Pages
---
Linux kernel internals +Beck M., Bohme H., Dziadzka M. +1997
---
Linux-Kernelprogrammierung. Algorithmen und Strukturen der Version 2.4 +Michael Beck +Language: German +Publisher:   Addison-Wesley +519 Pages
Eine Awendung -- ob nun für Unix oder ein anderes Betriebssystem -- zu entwickeln, ist schon schwierig genug. Systemnahe Programme sind dann bereits eine Wissenschaft für sich. Aber am Kernel mitzuentwickeln, für Verbesserungen, Bug Fixing oder Treiber, ist die Krone der Entwicklung für ein Betriebssystem. Für Linux, dem freien Betriebssystem von Linus Torvalds, ist dies theoretisch beonders leicht möglich. Die Quellen sind frei verfügbar und auf Websites und in Newsgroups sind genug Informationen verfügbar.
« آخرین ویرایش: 22 شهریور 1390، 01:32 ق‌ظ توسط Dream »

آفلاین parsaz

  • Full Member
  • *
  • ارسال: 124
پاسخ به: نوشتن کرنل
« پاسخ #12 : 30 شهریور 1390، 11:37 ب‌ظ »
کرنل لینوکسو در حال حاضر از کجا میتونم دانلود کنم !!!!!! ](*,)

آفلاین سیروس

  • High Sr. Member
  • *
  • ارسال: 615
پاسخ به: نوشتن کرنل
« پاسخ #13 : 31 شهریور 1390، 12:02 ق‌ظ »
تا اونجایی که من میدونم کرنل لینوکس متن باز نیست و نمیشه دستکاریش کرد.کد داره آقا

آفلاین ٍاحسان ترکم

  • High Hero Member
  • *
  • ارسال: 1039
  • جنسیت : پسر
  • Open your source, Open your mind
پاسخ به: نوشتن کرنل
« پاسخ #14 : 31 شهریور 1390، 12:37 ق‌ظ »
تا اونجایی که من میدونم کرنل لینوکس متن باز نیست و نمیشه دستکاریش کرد.کد داره آقا

 :o
بین نرم‌افزار open source و نرم‌افزارهای Free Software تفاوت در روش تبلیغ و گرایش‌های عرضه‌كنندگان آن‌ها نهفته است.
در واقع كاركرد شما به عنوان عرضه كننده نرم‌افزار تفاوتی نمی‌كند،