Expert C Programming
banana() { asm("nop"); } Here's how you embed assembly language instructions using Microsoft C on a PC: __asm mov ah, 2 __asm mo ...
The Intel 80x86 Family Modern Intel processors can trace their heritage all the way back to the earliest Intel chips. As custome ...
the chip that got Intel started, the 8080 was the chip that made its fortune, boosting the company's turnover to more than $1 bi ...
Intel and Microsoft have effectively become the new IBM, reaping undeserved windfall profits from their closed proprietary syste ...
bundled with alarmingly useless Intel boards and chips, to fulfill the letter of their contract with Microsoft. Don't feel too s ...
Different-Looking Pointers, Same Address An address on the Intel 8086 is formed by combining a 16-bit segment with a 16-bit offs ...
While on the subject of these numbers, note that all disk manufacturers use decimal rather than binary notation for disk capacit ...
system use: segment reserved for F0000 to FFFFF 64 Kb for permanent ROM area BIOS, diagnostics, etc. D0000 to EFFFF 128 Kb for c ...
Microsoft C recognizes these non-standard keywords; when applied to an object pointer or a function pointer, they override the m ...
It is very inconvenient for a program to be restricted by the amount of main memory installed on a machine, as happens on MS-DOS ...
Processes on SunOS execute in a 32-bit address space. The OS arranges matters so that each process thinks it has exclusive acces ...
Virtual memory is organized into "pages." A page is the unit that the OS moves around and protects, typically a few Kbytes in si ...
How Much Memory Can You Allocate? Run the following program to see how much memory you can allocate in your process. #include &l ...
All modern processors use cache memory. Whenever data is read from memory, an entire "line" (typically 16 or 32 bytes) is brough ...
In both cases, the instruction stream continues as soon as the cache access completes, without waiting for slower memory to catc ...
#define SMARTCOPY memcpy(destination, source, 65536) main() { char source[65536], destination[65536]; int i, j; for (j = 0; j &l ...
Everything in the heap is anonymous—you cannot access it directly by name, only indirectly through a pointer. The malloc (and fr ...
Malloced memory is always aligned appropriately for the largest size of atomic access on a machine, and a malloc request may be ...
Avoiding Memory Leaks Whenever you write malloc, write a corresponding free statement. If you don't know where to put the "free" ...
Type the command three or four times over the space of a minute or two, to see if available swap space keeps getting smaller. Yo ...
«
3
4
5
6
7
8
9
10
11
12
»
Free download pdf