Author: Sandy Original works reproduced please indicate the source"Linux kernel Analysis" MOOC course http://mooc.study.163.com/course/USTC-1000029000 "Experimental environment: C+linux64 bit (32-bit system may result in different)In accordance with the academic integrity of the terms, I guarantee that the answer for my original, all the references to the external materials have been marked by provenance.
S
Based on Linux kernel 3.2.1
Original works, reprint please mark http://blog.csdn.net/yming0221/article/details/7984238
For more information, see column http://blog.csdn.net/column/details/linux-kernel-net.html
Author: Yan Ming
1. during system initialization, The sock_init function will be called to initialize the sock
After the BIOS triggers a 0x19 interrupt, the first sector (512B) of the disk is loaded into memory. The computer really starts running programs on disk. And this 512B program is BOOTSECT.S, at this time the processor is still in real mode memory addressing the maximum range is 1M (0X0000-0XFFFF), next we look at Bootsect.s in the first batch of code to do?The code above declares the assignment of a series of variables for memory planningThis command means to jump to the new copy of Bootsect whe
Gconfig:gnome desktop environment, need to install graphics development LibraryMake KCONFIG:KDE desktop environment, need to install graphics development LibraryMake Menuconfig:First download the kernel files and extract them into the/USR/SRC directory.[[email protected] ~]# LS see if the downloaded kernel compressed package existsAnaconda-ks.cfg install.log linux1.jpg Public video document musichttpd-2.0.
Linux kernel ———— queueLinux kernel--queueDefined:[CPP]View Plaincopy
struct __kfifo{
unsigned int in; //Queue offset, write index
unsigned int out; //Queue offset, read index
unsigned int mask;
unsigned int esize;
void *data;
}
Use:Create a queue that creates and initializes a kfifo of size:[CPP]View Plaincopy
__kfi
Release date:Updated on: 2010-09-17
Affected Systems:Linux kernel 2.6.xDescription:--------------------------------------------------------------------------------Bugtraq id: 43229Cve id: CVE-2010-3297
Linux Kernel is the Kernel used by open source Linux.
Drivers/net/eql.
Release date:Updated on: 2010-09-17
Affected Systems:Linux kernel 2.6.xDescription:--------------------------------------------------------------------------------Bugtraq id: 43226Cve id: CVE-2010-3298
Linux Kernel is the Kernel used by open source Linux.
Drivers/net/usb/
Release date:Updated on: 2010-09-17
Affected Systems:Linux kernel 2.6.xDescription:--------------------------------------------------------------------------------Bugtraq id: 43221Cve id: CVE-2010-3296
Linux Kernel is the Kernel used by open source Linux.
The cxgb_extensi
How the computer worksThree Magic Weapon: Store program computer, function call stack, interrupt mechanism.StackFunction call FrameworkPassing parametersSave return addressProvides local variable spaceStack-related registersESP stacking pointer (stack pointer)EBP base point pointer (base pointer)Stack operationsPush;popEBP serves as a record of the current function call base-Other key registersInterruptCall command: 1, the EIP of the next instruction to save the address a at the top of the stack
Solve:Boot into the kernel system before upgrading and then perform the uninstall VMware command# vmware- Uninstall you have gotten Thismessage because you is either downgrading vmwareworkstation, Player, or VIX, or because you attempted to run Eitherv Mware-uninstall or vmware-uninstall-The Vix. If you is downgrading, please uninstall all newer versions first, Theninstall again. The VMware-uninstall*scripts has been deprecated. Instead, please use
Release date:Updated on: 2010-09-17
Affected Systems:Linux kernel 2.6.xDescription:--------------------------------------------------------------------------------Cve id: CVE-2010-3295
Linux Kernel is the Kernel used by open source Linux.
Drivers/net/tulip/de4x5. the de4x
Linux development module, the method of viewing debugging information on this machine has gone through. Current version number 2.6.32-32-genericUname–rable to queryHere take Module_param () as a sample. the macro is defined in the Include/linux/moduleparam.h file and is defined in detail such as the following:#define MODULE_PARAM (name, type, perm)Module_param_named (name, name, type, perm)it uses 3 paramet
One pageThe kernel takes the physical page as the basic unit of memory management; the Memory Management Unit (MMU) transforms the virtual address into a physicalAddresses, which are typically processed in pages. The MMU manages the tables in the system in the page size unit.32-bit system: Page size 4KB64-bit system: Page size 8KBThe kernel represents each physical page in the system with the corresponding
Introduction to Linux Kernel
Now let's look at the architecture of the Gnu/linux operating system from a relatively high altitude. You can consider the operating system from two levels, as shown in Figure 2.
Figure 2. Basic architecture of Gnu/linux operating system
The top is the user (or application) space. This
In the previous article, a process was introduced, and the process of stack changes when calling subroutines was analyzed. This article describes the process of multi-process execution, when a process needs to stop to wait for a certain condition or the CPU to allocate the time slice run out need to switch to another process, when the switch first generates an interrupt, then the CPU will perform the corresponding interrupt processing operation, An important operation, for example, is to protect
Linux Kernel series-10. Operating System Development kernel HelloWorld, linuxhelloworld
A. Let's first try assembly programming in Linux. For details, refer to the code.
[Section. data]; data in strHellodb "Hello, world! ", 0 AhSTRLENequ $-strHello [section. text]; Code in this global _ start; we must export the _ star
]; Code in this global _start; We must export the _start to allow the linker to identify the global myprint; Export this function in order for BAR.C to use _start:pushdword [num2nd]; '. Pushdword [num1st]; | Callchoose; | Choose (num1st, num2nd); Addesp, 8; /MOVEBX, 0moveax, 1; sys_exitint0x80; system calls; void Myprint (char* msg, int len) Myprint:movedx, [ESP + 8]; LENMOVECX, [ESP + 4]; MSGMOVEBX, 1moveax, 4; sys_writeint0x80; System call RET1. Because the function myprint () is used in bar
Linux development module, the method of viewing debugging information on this machine has gone through. Current version 2.6.32-32-genericUname–rcan queryTake Module_param () as an example here. the macro is defined in the Include/linux/moduleparam.h file and is defined as follows:#define MODULE_PARAM (name, type, perm)Module_param_named (name, name, type, perm)3 parameters are used: The parameter variable n
Last introduced the Linus Torvalds, this time introduced him to develop the "kernel".Often hear people mention "linux kernel", but if asked what is the "kernel? , it would be surprisingly difficult to answer.So, what exactly is kernel? "
Signal mechanism in Linux kernel-from user layer to kernel layer
Kernel version:2.6.14
CPU architecture:ARM920T
Author:Ce123. (http://blog.csdn.net/ce123)
1. Introduction
If a process needs to process a signal, it must register the signal in the process. The registration signal is mainly used to determine the ing rela
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.