Vi flyttar från butik till nätet - så funkar det framåt
Professional Linux Kernel Architecture | 1:a upplagan
- Häftad, Engelska, 2008
- Författare: Wolfgang Maurer
- Betyg:
Butikslager
Onlinelager
Ej i lager
$event.detail.name === 'store-selector' ? isOpen = true : ''"
@close-drawer.window="() => $event.detail.name === 'store-selector' ? isOpen = false : ''"
@keydown.escape.window="isOpen = false"
x-init="$watch('isOpen', value => {
if (value) {
$refs.dialog.showModal();
document.body.style.overflow = 'hidden';
//emit onDrawerOpen event
$dispatch('drawer-opened', {
name: 'store-selector'
});
} else {
setTimeout(() => {
$refs.dialog.showModal();
$refs.dialog.close();
}, 300);
document.body.style.overflow = '';
$dispatch('drawer-closed', {
name: 'store-selector'
});
}
});"
class="h-full"
>
Beskrivning
The book provides an introduction to architecture, concepts and algorithms of the Linux kernel. The guiding principle is to keep balance between the description of concepts and the corresponding in-kernel implementation. We achieve this by discussing the relevant data structures and the algorithmic code, but also keep a special focus on connection and interplay of all parts in the 'big picture'. The huge size of the kernel sources and the large number of connections between the numerous subsystems require providing clear guidance to the reader. The book is a translation sponsored by Hewlett-Packard, and has been updated to kernel version 2.6.78, a recent release in the stable series. The chapters are conceptually divided into three parts: An overview summarizes relevant structures and functions exported by the kernel to userland, especially if they tend to be unknown to the average programmer (for instance memory mappings, how system call tracing is implemented, etc.).A short, informal treatment of theoretical and conceptual aspects helps to put the problems into context within the Linux kernel as well as within different Unix derivatives and other operating systems. A description of the data structures employed in the particular subsystem follows the introduction. Special emphasis is placed on the interconnection between the structures. This is usually not directly visible from the definition alone, but very important for a deeper understanding of the kernel. A thorough analysis of the algorithms which manipulate the data structures and interact with userland follows. Code flow diagrams are extensively employed to visualize the program logic and code paths in a clear and concise manner - the book contains more than 230 figures.To keep close contact with the sources, the most important parts are discussed line by line. Great care is taken to ensure that code doesn't take too much space, because we don't simply want to be a listing of the Linux source code as some other books are. One of the foremost concerns is to reduce the vast amount of information contained in the kernel sources and to split the comprehensive material into easily digestible pieces. Connections between different subsystems are illuminated, to assist the reader in gaining all skills necessary to understand the sources on his or her own. (Bookdata)
Om denna bok
Professional Linux Kernel Architecture av Wolfgang Maurer är en Häftad bok med 1368 sidor på Engelska. Detta är den 1:a upplagan som utgavs 2008 av John Wiley And Sons Ltd.
Spara pengar – köp begagnad från Campusbokhandeln
Köp Professional Linux Kernel Architecture begagnad från Campusbokhandeln och spara upp till 25% jämfört med nypris. Du kan bevaka den här boken så får du ett mail så fort vi får in den i lager som begagnad.
Genom att köpa & sälja begagnat sänker du kostnaden för studier både för dig och nästa student samtidigt som du gör nytta för klimatet.
Produktinformation
Kategori:
Data & IT
Bandtyp:
Häftad
Språk:
Engelska
ISBN:
9780470343432
Upplaga:
1
Utgiven:
2008-10-31
Förlag:
John Wiley And Sons Ltd
Sidantal:
1368
$event.detail.name === 'primary-menu' ? isOpen = true : ''"
@close-drawer.window="() => $event.detail.name === 'primary-menu' ? isOpen = false : ''"
@keydown.escape.window="isOpen = false"
x-init="$watch('isOpen', value => {
if (value) {
$refs.dialog.showModal();
document.body.style.overflow = 'hidden';
//emit onDrawerOpen event
$dispatch('drawer-opened', {
name: 'primary-menu'
});
} else {
setTimeout(() => {
$refs.dialog.showModal();
$refs.dialog.close();
}, 300);
document.body.style.overflow = '';
$dispatch('drawer-closed', {
name: 'primary-menu'
});
}
});"
class="h-full"
>
$event.detail.name === 'mobile-search' ? isOpen = true : ''"
@close-drawer.window="() => $event.detail.name === 'mobile-search' ? isOpen = false : ''"
@keydown.escape.window="isOpen = false"
x-init="$watch('isOpen', value => {
if (value) {
$refs.dialog.showModal();
document.body.style.overflow = 'hidden';
//emit onDrawerOpen event
$dispatch('drawer-opened', {
name: 'mobile-search'
});
} else {
setTimeout(() => {
$refs.dialog.showModal();
$refs.dialog.close();
}, 300);
document.body.style.overflow = '';
$dispatch('drawer-closed', {
name: 'mobile-search'
});
}
});"
class="h-full"
>
$event.detail.name === 'mini-cart' ? isOpen = true : ''"
@close-drawer.window="() => $event.detail.name === 'mini-cart' ? isOpen = false : ''"
@keydown.escape.window="isOpen = false"
x-init="$watch('isOpen', value => {
if (value) {
$refs.dialog.showModal();
document.body.style.overflow = 'hidden';
//emit onDrawerOpen event
$dispatch('drawer-opened', {
name: 'mini-cart'
});
} else {
setTimeout(() => {
$refs.dialog.showModal();
$refs.dialog.close();
}, 300);
document.body.style.overflow = '';
$dispatch('drawer-closed', {
name: 'mini-cart'
});
}
});"
class="h-full"
>
$event.detail.name === 'add-to-cart' ? isOpen = true : ''"
@close-drawer.window="() => $event.detail.name === 'add-to-cart' ? isOpen = false : ''"
@keydown.escape.window="isOpen = false"
x-init="$watch('isOpen', value => {
if (value) {
$refs.dialog.showModal();
document.body.style.overflow = 'hidden';
//emit onDrawerOpen event
$dispatch('drawer-opened', {
name: 'add-to-cart'
});
} else {
setTimeout(() => {
$refs.dialog.showModal();
$refs.dialog.close();
}, 300);
document.body.style.overflow = '';
$dispatch('drawer-closed', {
name: 'add-to-cart'
});
}
});"
class="h-full"
>