Tags: flags div led inline Description Ted always store compilationIn the Linux kernel (linux-4.14.12/mm/slab.c#3389), at first glance at the bottom of the code, it seems that L3389 have a bug, so I read around the interest of a bit local_irq_save/local_irq_ The source code of the restore./*linux-4.14.12/mm/slab.c#3389*/3377 Static__always_inlinevoid*3378Slab_alloc (structKmem_cache *cachep, gfp_t flags, u
match. */ void (*init)(struct ipt_entry_match *m, unsigned int *nfcache); /* Function which parses command options; returns true if it ate an option */ int (*parse)(int c, char **argv, int invert, unsigned int *flags, const struct ipt_entry *entry, unsigned int *nfcache, struct ipt_entry_match **match); /* Final check; exit if not ok. */ void (*final_check)(unsigned int
. The net/IPv4/Netfilter/ipt_iprange.c module is provided in the kernel to match the address segment. We can modify the module and add the address "hole. First, you must define the data structure to be matched to describe the matching conditions. modify it to/* include/Linux/netfilter_ipv4/ipt_iprangehole.h */# ifndef _ ipt_iprangehole_h Based on the ipt_iprange.h header file
# DEFINE _ ipt_iprangehole_h # define iprange_src 0x01/* match source IP address */
# Define iprange_dst 0x02/* match des
The status of processes in the Linux kernel is mainly in several states:1. Running state: that the process is running on the CPU, it is occupying the CPU at the moment;2. Ready state: The process, in addition to the CPU, has been able to run all the conditions, in the ready queue waiting for the scheduler (schedule) scheduling;3. Blocking state: The process in addition to the lack of CPU, but also lack of other conditions, waiting in the queue to wait for the required conditions;Describes the or
Note: The article is reproduced in the network.C-priority list
Precedence
Operator
Description
Example
Associativity
1 () [] -> . :: + + - -
Grouping operator Array access Member access from a pointer Member access from an object scoping operator Post-increment post-decrement
(A + b)/4; ARRAY[4] = 2; Ptr->age = 34; Obj.age = 34; Class::age = 2; for (i = 0; i for (i = ten; i > 0; i--) ...
Left-to-righ
, closing connections, and so on, because the flag bit separates the stages of the connection, So that the process of different stages can be modeled, that is, events .So to figure out the triggering process of the previous blog post event, it is essential to understand how fossa and mongoose use the flag bit to represent each phase of the connection. Fossa official documentation indicates that each connection has a flag bit field. Fossa defines a variety of
For the call of the mount system involved in the installation of the preceding root directory file system, we consider that a file system will be installed on an installed file system, that is, call the mount system call implementation. The mount system call is used to install a common file system. its... for the call of the mount system involved in the installation of the preceding root directory file system, we consider that a file system will be installed on an installed file system, that is,
certain period of time, thread B wants to wake up the thread in the queue Q. It only needs to obtain the TCB pointer of thread a and set the thread a status to ready. Wait for thread a to resume running, and then exit node n to wait for queue Q to complete the entire process from blocking to recovery.
The principle is boring. Let's look at the code below. We avoid complicated task status transition and scheduling. Even the analysis of the waiting queue is in the order from basic to extended. Th
For the call of the mount System Involved in the installation of the preceding root directory file system, we consider that a file system will be installed on an installed file system, that is, call the mount System Call implementation. The mount System Call is used to install a common file system. Its service routine is sys_mount ()./* Sys_mount system call *//* Dev_name is the path name of the device to be installed;Dir_name is the installed path name;Type is a string that represents the file
() Textstorecommand.encode () textstorecommand.encodevalue () Serializingtranscoder.encode ( ) Baseserializingtranscoder.serialize ()First call the Xmemcacheclient.set (final string key, Final int exp, final Object value) method, the key parameter corresponds to the string "key", and the exp parameter corresponds to the integer 0 (the expression cache never expires). The value parameter corresponds to the string "Hello world!". After a series of method calls, the final cal
is 0, and the result is opposite to B;
3. Usage: mask
Bitwise operators are commonly used in masks. Masks refer to bitwise combinations set to on (1) or off (0.
Why is it called a mask?
What happens after we combine a volume with a mask:
For example, assume that the definition of the symbolic constant MAS is 2 (that is, the binary form is 00000010), only 1 is 1, and other bits are 0
Flag = 10010110b
Flags = flags
is a byte, how does it fit in kb_value?
5. I personally think that the key value is obtained through the read in keyboardeventthread (), because the relevant code after reading can be clearly seen:
For (I = 0; I Dfbinputevent EVT; // defines an input event
EVT. type = (BUF [I] 0x80 )? Diet_keyrelease: diet_keypress); // the maximum value of the standard keyboard key value (mediumraw mode) is 0 or 1 to distinguish the press and release keys.EVT. Flags
This paper mainly talks about the ZEROMQ message system zmq_msg_t and its related operation functions.
Because TCP is a type of byte-throttling protocol, wood has boundaries, so the development of the message boundary is left to the application layer. There are usually two ways to achieve this:
1. Add delimiters to the transmitted data.
2. Add the Size field to each message.
And ZEROMQ could say that the second way was chosen.
Let's look at the basic data structure of zmq_msg_t.
/* A message. N
The sound card has no driver. Could you help me! -- Linux general technology-Linux technology and application information. For details, refer to the following section. This is the information I obtained using lspci-v.
00:00. 0 Host bridge: Intel Corporation Mobile PM965/GM965/r Hub (rev 03)
Subsystem: Acer inreceivated [ALI] Unknown device
Flags: bus master, fast devsel, latency 0
Capabilities: [e0] Vendor Specific Information
00:02. 0 VGA compatible
address)
# VI/ETC/HOSTNAME.IXGBE1TEST-IXGBE1 netmask + broadcast + group Ipmp0 deprecated-failover upThe setting here is the same as the previous meaning, because the IPMP0 group has been established, so there is no need to build it again, add the group name Ipmp0 directlyc) View results# ifconfig-aLo0:flags=2001000849inet 127.0.0.1 netmask ff000000IXGBE0: flags=1000843inet 192.168.0.100 netmask fffff
()
Call XMemcacheClient first. set (final String key, final int exp, final Object value) method, the key parameter corresponds to the String "key", and the exp parameter corresponds to the integer 0 (indicating that the cache will never expire ), the value parameter corresponds to the string "Hello World! ". After a series of method calls, the SerializingTranscoder. encode (Object o) method is finally called. At this time, the real parameter value received by the form parameter o is the set stri
/handle.c file at the location of the IRQ subsystem) to process. For an already threaded situation, the interrupt processing thread is awakened and starts to run, and the DO_HARDIRQ (defined in the file kernel/irq/manage.c in the location of the IRQ subsystem in the source tree) is invoked to handle the corresponding interrupts. The function will determine if there is an interrupt to be processed (the interrupt Descriptor's status flag irq_inprogress), and if so, call handle_irq_event to process
This article was reproduced from: http://blog.chinaunix.net/uid-26859697-id-5573776.htmlKmalloc () is implemented on the basis of the Slab/slob/slub allocation algorithm, and many places use it as the entrance to the Slab/slob/slub allocation algorithm, which is actually slightly different.Now analyze the implementation:
"File:/include/linux/slab.h"
/**
* Kmalloc-allocate Memory
* @size: How many bytes of memory is required.
* @flags: The
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.