This document provides an overview of a presentation on the basics of Linux based on the LPIC-1 certification. It discusses topics 101 and 102 from the LPIC-1 exam, including system architecture, hardware configuration, booting, runlevels, disk partitioning, installing boot managers, managing shared libraries, and using Debian and RPM package management. The presentation aims to teach basic Linux skills like command line work, user administration, backups and restores, and connecting Linux systems to networks.
Some basic knowledges required for beginners in writing linux kernel module - with a description of linux source tree, so that the idea of where and how develops. The working of insmod and rmmod commands are described also.
This course gets you started with writing device drivers in Linux by providing real time hardware exposure. Equip you with real-time tools, debugging techniques and industry usage in a hands-on manner. Dedicated hardware by Emertxe's device driver learning kit. Special focus on character and USB device drivers.
The Linux Block Layer - Built for Fast StorageKernel TLV
The arrival of flash storage introduced a radical change in performance profiles of direct attached devices. At the time, it was obvious that Linux I/O stack needed to be redesigned in order to support devices capable of millions of IOPs, and with extremely low latency.
In this talk we revisit the changes the Linux block layer in the
last decade or so, that made it what it is today - a performant, scalable, robust and NUMA-aware subsystem. In addition, we cover the new NVMe over Fabrics support in Linux.
Sagi Grimberg
Sagi is Principal Architect and co-founder at LightBits Labs.
File system is an approach on how the data can be
organized in order to have a meaningful read or write in a
system. File systems provides a very easy way of identifying data like where it begins and ends. The group of such data can be called as “Files”. The method used to manage these groups of data can be called as “File systems”
Some basic knowledges required for beginners in writing linux kernel module - with a description of linux source tree, so that the idea of where and how develops. The working of insmod and rmmod commands are described also.
This course gets you started with writing device drivers in Linux by providing real time hardware exposure. Equip you with real-time tools, debugging techniques and industry usage in a hands-on manner. Dedicated hardware by Emertxe's device driver learning kit. Special focus on character and USB device drivers.
The Linux Block Layer - Built for Fast StorageKernel TLV
The arrival of flash storage introduced a radical change in performance profiles of direct attached devices. At the time, it was obvious that Linux I/O stack needed to be redesigned in order to support devices capable of millions of IOPs, and with extremely low latency.
In this talk we revisit the changes the Linux block layer in the
last decade or so, that made it what it is today - a performant, scalable, robust and NUMA-aware subsystem. In addition, we cover the new NVMe over Fabrics support in Linux.
Sagi Grimberg
Sagi is Principal Architect and co-founder at LightBits Labs.
File system is an approach on how the data can be
organized in order to have a meaningful read or write in a
system. File systems provides a very easy way of identifying data like where it begins and ends. The group of such data can be called as “Files”. The method used to manage these groups of data can be called as “File systems”
Overview of the architecture of the Linux kernel, based on "Anatomy of the Linux Kernel" by M. Tim Jones (IBM Developerworks), http://www.ibm.com/developerworks/linux/library/l-linux-kernel/
Tracing MariaDB server with bpftrace - MariaDB Server Fest 2021Valeriy Kravchuk
Bpftrace is a relatively new eBPF-based open source tracer for modern Linux versions (kernels 5.x.y) that is useful for analyzing production performance problems and troubleshooting software. Basic usage of the tool, as well as bpftrace one liners and advanced scripts useful for MariaDB DBAs are presented. Problems of MariaDB Server dynamic tracing with bpftrace and some possible solutions and alternative tracing tools are discussed.
Linux offers an extensive selection of programmable and configurable networking components from traditional bridges, encryption, to container optimized layer 2/3 devices, link aggregation, tunneling, several classification and filtering languages all the way up to full SDN components. This talk will provide an overview of many Linux networking components covering the Linux bridge, IPVLAN, MACVLAN, MACVTAP, Bonding/Team, OVS, classification & queueing, tunnel types, hidden routing tricks, IPSec, VTI, VRF and many others.
Video and slides synchronized, mp3 and slide download available at URL http://bit.ly/2X8uz92.
Alex Bradbury gives an overview of the status and development of RISC-V as it relates to modern operating systems, highlighting major research strands, controversies, and opportunities to get involved. Filmed at qconlondon.com.
Alex Bradbury is co-founder of lowRISC CIC, aiming to bring the benefits of open source development to the hardware industry by producing a high quality, secure, and open source SoC and associated infrastructure. He is a well-known member of the LLVM community, and is code owner and primary author of the upstream RISC-V back-end.
Introduction to binary translation in QEMU(TCG). Describe how it works. In addition, there is a section which demonstrate qemu-monitor, a debug tool for AArch64/QEMU.
There are lots of animations in the slides so download and open it with Microsoft PowerPoint for the best experience. Below is the download link.
Google Driver Link: http://goo.gl/XXMC9X
In this talk Liran will discuss interrupt management in Linux, effective handling, how to defer work using tasklets, workqueues and timers. We'll learn how to handle interrupts in userspace and talk about the performance and latency aspects of each method as well as look at some examples from the kernel source.
Liran is the CTO at Mabel technology and co-founder of DiscoverSDK - Software Libraries directory and DiscoverCloud - Business Apps directory.
More than 20 years of training experience including courses in: Linux, Android, Real-time and Embedded systems, and many more.
Tutorial WiFi driver code - Opening Nuts and Bolts of Linux WiFi SubsystemDheryta Jaisinghani
While we understand the complex interplay of OSI layers, in theory, in practice understanding their implementation is a non-trivial task. The implementation details that enables a network interface card to communicate with its peers are oblivious to the end-users. Developers venturing into this domain for the first time often find it hard to find relevant tutorials that enable them to understand these implementation details. The aim of this talk is to provide an overview of WiFi Subsystem implemented in the Linux operating system. Specifically, this talk will explain the sequence of events that occur from application layer till physical layer when a connection is established over WiFi. After this talk, the audience will understand
(1) the bird's eye view of Linux WiFi Subsystem,
(2) what happens in an operating system when a WiFi card is plugged-in,
(3) how is a packet received/transmitted from physical layer to operating system kernel and vice-versa,
(4) brief overview of code structure of open-source drivers, and lastly
(5) important pointers to kick start driver code modifications.
Video Available here: https://www.youtube.com/watch?v=pa1oEyc7Dm0
OpenWrt is a Linux distribution for embedded systems that runs on many routers and networking devices today. In this session we'll talk about OpenWrt's origins, architecture and get down to building apps for the platform.
Along the way we will touch on some basic firmware concepts and at last present the final working OpenWrt router and its capabilities.
Anton Lerner, Architect at Sitaro, computer geek, developer and occasional maker.
Sitaro provides total cyber protection for small business and home networks. Sitaro prevents massive scale IoT cyber attacks.
Find out more information in the meetup event page - https://www.meetup.com/Tel-Aviv-Yafo-Linux-Kernel-Meetup/events/245319189/
SOSCON 2019.10.17
What are the methods for packet processing on Linux? And how fast are each packet processing methods? In this presentation, we will learn how to handle packets on Linux (User space, socket filter, netfilter, tc), and compare performance with analysis of where each packet processing is done in the network stack (hook point). Also, we will discuss packet processing using XDP, an in-kernel fast-path recently added to the Linux kernel. eXpress Data Path (XDP) is a high-performance programmable network data-path within the Linux kernel. The XDP is located at the lowest level of access through SW in the network stack, the point at which driver receives the packet. By using the eBPF infrastructure at this hook point, the network stack can be expanded without modifying the kernel.
Daniel T. Lee (Hoyeon Lee)
@danieltimlee
Daniel T. Lee currently works as Software Engineer at Kosslab and contributing to Linux kernel BPF project. He has interest in cloud, Linux networking, and tracing technologies, and likes to analyze the kernel's internal using BPF technology.
Dutch: Het bouwen van een embedded Linux systeem lijkt vaak op toveren. Toch kan het ook met een systematische aanpak. Dat is goedkoper en levert een beter product op. Op een pragmatische manier wordt getoond hoe die, o-zo belangrijke "herhaalbaarheid" voor embedded systemen, ook met embedded Linux mogelijk is.
University of Virginia
cs4414: Operating Systems
http://rust-class.org
For embedded notes, see:
http://rust-class.org/class-21-bakers-and-philosophers.html
Overview of the architecture of the Linux kernel, based on "Anatomy of the Linux Kernel" by M. Tim Jones (IBM Developerworks), http://www.ibm.com/developerworks/linux/library/l-linux-kernel/
Tracing MariaDB server with bpftrace - MariaDB Server Fest 2021Valeriy Kravchuk
Bpftrace is a relatively new eBPF-based open source tracer for modern Linux versions (kernels 5.x.y) that is useful for analyzing production performance problems and troubleshooting software. Basic usage of the tool, as well as bpftrace one liners and advanced scripts useful for MariaDB DBAs are presented. Problems of MariaDB Server dynamic tracing with bpftrace and some possible solutions and alternative tracing tools are discussed.
Linux offers an extensive selection of programmable and configurable networking components from traditional bridges, encryption, to container optimized layer 2/3 devices, link aggregation, tunneling, several classification and filtering languages all the way up to full SDN components. This talk will provide an overview of many Linux networking components covering the Linux bridge, IPVLAN, MACVLAN, MACVTAP, Bonding/Team, OVS, classification & queueing, tunnel types, hidden routing tricks, IPSec, VTI, VRF and many others.
Video and slides synchronized, mp3 and slide download available at URL http://bit.ly/2X8uz92.
Alex Bradbury gives an overview of the status and development of RISC-V as it relates to modern operating systems, highlighting major research strands, controversies, and opportunities to get involved. Filmed at qconlondon.com.
Alex Bradbury is co-founder of lowRISC CIC, aiming to bring the benefits of open source development to the hardware industry by producing a high quality, secure, and open source SoC and associated infrastructure. He is a well-known member of the LLVM community, and is code owner and primary author of the upstream RISC-V back-end.
Introduction to binary translation in QEMU(TCG). Describe how it works. In addition, there is a section which demonstrate qemu-monitor, a debug tool for AArch64/QEMU.
There are lots of animations in the slides so download and open it with Microsoft PowerPoint for the best experience. Below is the download link.
Google Driver Link: http://goo.gl/XXMC9X
In this talk Liran will discuss interrupt management in Linux, effective handling, how to defer work using tasklets, workqueues and timers. We'll learn how to handle interrupts in userspace and talk about the performance and latency aspects of each method as well as look at some examples from the kernel source.
Liran is the CTO at Mabel technology and co-founder of DiscoverSDK - Software Libraries directory and DiscoverCloud - Business Apps directory.
More than 20 years of training experience including courses in: Linux, Android, Real-time and Embedded systems, and many more.
Tutorial WiFi driver code - Opening Nuts and Bolts of Linux WiFi SubsystemDheryta Jaisinghani
While we understand the complex interplay of OSI layers, in theory, in practice understanding their implementation is a non-trivial task. The implementation details that enables a network interface card to communicate with its peers are oblivious to the end-users. Developers venturing into this domain for the first time often find it hard to find relevant tutorials that enable them to understand these implementation details. The aim of this talk is to provide an overview of WiFi Subsystem implemented in the Linux operating system. Specifically, this talk will explain the sequence of events that occur from application layer till physical layer when a connection is established over WiFi. After this talk, the audience will understand
(1) the bird's eye view of Linux WiFi Subsystem,
(2) what happens in an operating system when a WiFi card is plugged-in,
(3) how is a packet received/transmitted from physical layer to operating system kernel and vice-versa,
(4) brief overview of code structure of open-source drivers, and lastly
(5) important pointers to kick start driver code modifications.
Video Available here: https://www.youtube.com/watch?v=pa1oEyc7Dm0
OpenWrt is a Linux distribution for embedded systems that runs on many routers and networking devices today. In this session we'll talk about OpenWrt's origins, architecture and get down to building apps for the platform.
Along the way we will touch on some basic firmware concepts and at last present the final working OpenWrt router and its capabilities.
Anton Lerner, Architect at Sitaro, computer geek, developer and occasional maker.
Sitaro provides total cyber protection for small business and home networks. Sitaro prevents massive scale IoT cyber attacks.
Find out more information in the meetup event page - https://www.meetup.com/Tel-Aviv-Yafo-Linux-Kernel-Meetup/events/245319189/
SOSCON 2019.10.17
What are the methods for packet processing on Linux? And how fast are each packet processing methods? In this presentation, we will learn how to handle packets on Linux (User space, socket filter, netfilter, tc), and compare performance with analysis of where each packet processing is done in the network stack (hook point). Also, we will discuss packet processing using XDP, an in-kernel fast-path recently added to the Linux kernel. eXpress Data Path (XDP) is a high-performance programmable network data-path within the Linux kernel. The XDP is located at the lowest level of access through SW in the network stack, the point at which driver receives the packet. By using the eBPF infrastructure at this hook point, the network stack can be expanded without modifying the kernel.
Daniel T. Lee (Hoyeon Lee)
@danieltimlee
Daniel T. Lee currently works as Software Engineer at Kosslab and contributing to Linux kernel BPF project. He has interest in cloud, Linux networking, and tracing technologies, and likes to analyze the kernel's internal using BPF technology.
Dutch: Het bouwen van een embedded Linux systeem lijkt vaak op toveren. Toch kan het ook met een systematische aanpak. Dat is goedkoper en levert een beter product op. Op een pragmatische manier wordt getoond hoe die, o-zo belangrijke "herhaalbaarheid" voor embedded systemen, ook met embedded Linux mogelijk is.
University of Virginia
cs4414: Operating Systems
http://rust-class.org
For embedded notes, see:
http://rust-class.org/class-21-bakers-and-philosophers.html
Want to make rsyslog talk to some not-yet-supported output? With v8 it's extremly simple.This presentation contains everything you need to know about writing great plugins in ANY language (like perl or pyton).
University of Virginia
cs4414: Operating Systems
http://rust-class.org
What is special about the kernel
Privileged Instructions
How many processes should a browser have?
gash demo
University of Virginia
cs4414: Operating Systems
http://rust-class.org
Explicit Memory Management
4.3BSD
Morris Worm
fingerd code
NX bit
For embedded notes, see: http://rust-class.org/class-8-managing-memory.html
University of Virginia
cs4414: Operating Systems
Rust Expressions and Higher-Order Procedures
How to Share a Processor
Non-Preemptive and Preemptive Multitasking
Kernel Timer Interrupt
cs4414: Operating Systems
http://rust-class.org/class-1-what-is-an-operating-system.html
Class 1: What is an Operating System?
Why so many programming languages?
Introducing Rust
Invent the Future (Operating Systems in 2029)David Evans
University of Virginia
cs4414: Operating Systems
http://rust-class.org
For embedded notes, see:
http://rust-class.org/class-23-invent-the-future.html
"Even so, mankind will suffer badly from the disease of boredom, a disease spreading more widely each year and growing in intensity. This will have serious mental, emotional and sociological consequences, and I dare say that psychiatry will be far and away the most important medical specialty in 2014. The lucky few who can be involved in creative work of any sort will be the true elite of mankind, for they alone will do more than serve a machine.
Indeed, the most somber speculation I can make about A.D. 2014 is that in a society of enforced leisure, the most glorious single word in the vocabulary will have become work!"
Isaac Asimov, visit to the 2014 World's Fair, 1964
This presentation is given at EuroBSDCon. Based on FreeBSD -source code, syslogd is extended (as proof of concept) with syslog-sign. This presentations shows the concepts, design and implementation. The code is available on SF.net.
Most of this session will focus on Kernel Module Programming. We will briefly talk about the interaction of different layers of operating system from userspace to kernel space. Starting from simple Hello World kernel modules, we will learn the development of more sophisticated modules related to device drivers and interrupt handlers. We will also briefly touch upon the shell scripts and how they can be used to extract system level information. Since, this will be a hands on session, attendees are expected to try the examples on their machines. Basic understanding of operating systems and C programming is expected for the tutorial.
The second part of Linux Internals covers system calls, process subsystem and inter process communication mechanisms. Understanding these services provided by Linux are essential for embedded systems engineer.
This Slide was presented as an introduction to Linux . Students with little experience in free operating systems were encouraged to take up Linux based operating systems.
Talk from Embedded Linux Conference, http://elcabs2015.sched.org/event/551ba3cdefe2d37c478810ef47d4ca4c?iframe=no&w=i:0;&sidebar=yes&bg=no#.VRUCknSQQQs
The U-Boot is an "Universal Bootloader" ("Das U-Boot") is a monitor program that is under GPL. This production quality boot-loader is used as default boot loader by several board vendors. It is easily portable and easy to port and to debug by supporting PPC, ARM, MIPS, x86,m68k, NIOS, Microblaze architectures. Here is a presentation that introduces U-Boot.
Embedded Fest 2019. Руслан Биловол. Linux Boot: The Big Bang theoryEmbeddedFest
Many Linux developers and users know that Bootloader boots Linux Kernel which starts Userspace.
But what is behind that?
Linux Boot process is very similar to the Big Bang which happened in our world: from singularity to the whole beautiful Universe of running Linux processes. What do you think is a black hole equivalent in the Linux? Come to hear about all of that from an engineer who worked on a new processors and boards bringup, Linux boot process modifications and did boot time optimization many times.
Developing new feature in Joomla - Joomladay UK 2016Peter Martin
Presentation "The Category Item Counter - developing a new feature" at Joomladay UK 2016 on February 13th in London, UK.
How does a new feature end up in Joomla? Peter talked about the new Category Item Counter feature that will be available in Joomla 3.5:
* the purpose of the feature
* where & how the idea for the "Nice" feature originated
* how the community helped to develop this feature
* how Joomla's development cycle works, including patch testing procedure, and who's Travis?
* the problems with differences in core components
* the hidden secret of com_categories
* how to add a Category Item Counter to your own component
Presentation video: http://www.youtube.com/watch?v=CK_tYC-Yy_c?t=45s
JCE editor optimaliseren (Joomla Den Bosch 2016)Peter Martin
Presentatie + demonstratie over het optimaliseren van JCE editor voor Joomla zodat het gemakkelijker werken is. Gegeven op 4 januari 2016 in de Joomla Gebruikersgroep 's-Hertogenbosch
Internet of Things - Linux Usergroup NijmegenPeter Martin
A network is formed by connecting some computers. Connecting networks of connected computers to other networks, in combination with an (Internet) protocol, forms the Internet.
What happens if you have other devices to link this network of networks? Peter tells something about the Internet of Things (IoT), Web services, and how a sandwich (cheese, pesto and salad) inspired him to develop a "presence indicator" for his co-work.
Over the past 10 years Joomla! CMS has improved considerably. This presentation shows the history and progress of Joomla CMS.
This year, 2015, Joomla is 10 years old. Over the past 10 years Joomla CMS has improved considerably. At Joomladay France 2015 in Nice, Peter Martin spoke about the history of Joomla and progress of the CMS on the basis of different versions: Mambo, Joomla 1.0, Joomla 1.5, Joomla 2.5 to Joomla 3.x.
Joomla bestaat dit jaar (2015) 10 jaar en is in de loop der jaren enorm verbeterd.
Deze presentatie toont de geschiedenis & vooruitgang van Joomla aan de hand van Mambo, Joomla 1.0, Joomla 1.5, Joomla 1.6/1.7/2.5 en Joomla 3.x.
De Linux command line is een zeer krachtig stuk gereedschap. De meerderheid van de webservers draait op Linux/Unix. Sommige hosting bedrijven bieden SSH toegang aan tot hun hosting omgeving. Via SSH kun je dan inloggen en de Linux Command Line gebruiken.
In deze presentatie toont Peter enkele tijdsbesparende Command Line commando's die je kunt gebruiken bij jouw Joomla websites:
Enkele SSH command line commando's;
Analyseren en ongedaan maken van een gehackte website;
Een backup maken van een website;
Ongebruikte bestanden vinden;
Het opzetten van een test omgeving.
GNU Radio & digitaal vliegtuig spottenPeter Martin
De ether hangt vol met radiogolven: radio & tv uitzendingen, mobiele telefonie, wifi. En communicatie vanuit vliegtuigen. Peter vertelt iets over Software-Defined-Radio (SDR). En hij laat zien hoe je met een goedkope Windows USB TV dongle op een Linux computer het vliegverkeer in kaart kunt brengen.
Help mijn website is gehackt - Joomla User Group Den Bosch 2014Peter Martin
Bij een routine controle ontdekte Peter dat de website van een klant enkele vreemde nieuwe bestanden bevatte. Na enkele grondige scans ontdekte hij dat de website was "gehacked".
Wat te doen als je website is gehackt? In deze presentatie (gegeven bij Joomla User Group Den Bosch) bespreekt Peter waarom websites worden gehackt, toont hij enkele website hacks, en laat zien hoe je een website kunt herstellen.
Music Trackers - Linux Usergroup Nijmegen 2014Peter Martin
Muziek is tegenwoordig vooral beschikbaar in MP3 formaat. In de jaren '80 & '90 was dat anders: MP3 was nog niet beschikbaar en computers hadden onvoldoende geheugen, opslag en netwerk capiciteit.
In deze presentatie vertelt over oude muziek formaten en laat zien hoe hij recentelijk "oude" muziek bestanden (Commodore Amiga tracker files: MOD, IT & XM) op Linux afgespeeld kreeg.
linux-commandline-magic-Joomla-World-Conference-2014Peter Martin
The Linux command line is a powerful tool. The majority of webservers run on Linux/Unix. Some hosting companies offer SSH access to their hosting environment. Via SSH you can login and use the Linux command line.
In this presentation, Peter will show you some time-saving command line commands that you can use for certain tasks on your Joomla websites:
some basic SSH command line commands
Analyzing & recovering a hacked website
Backup a website or move it to another server
Finding unused files
Setting up a test environment
Information Technology is an integral part of our daily life. Have you ever wondered what happens under the hood when you visit a webpage? Or what OOP actually means?
In this presentation, Peter explains common concepts like Operating System, Internet, Server, Website, Object Oriented Programming, Joomla in plain English.
In this keynote for Joomladay UK 2014 Peter explains the following subjects:
Computer
Operating System
Local Area Network (LAN)
Internet (Wide Area Network (WAN))
Server
Email
WWW
Website & PHP/MySQL
Object Oriented Programming (OOP)
Joomla
Developing a Joomla 3.x Component using RAD/FOF - Joomladay UK 2014Peter Martin
One of the new feature since Joomla 3.2 is Rapid Application Development (RAD) framework.
A Joomla component is a PHP/MySQL web application that uses Joomla's framework. You can build your components on Joomla's framework and Joomla will take care of the database connection, the design (using templates), access levels, forms (JForms), etc. Using Joomla's framework saves you a lot of work and development time. However, it can be even faster!
Most Joomla components include the same functionality: In the front-end a list of records from the database hyperlinked to pages with details of each record individually. In the back-end the component list records from the database, with a link to a form where you can change the data and save.
Using the Rapid Application Development Framework (also known as FOF (Framework On Framework)) allows you to develop a component with common functionality with far fewer lines of code.
In this presentation, Peter shows how you can use Joomla's RAD to build a simple Joomla component to manage locations and categories and present those on the front-end to visitors on a Google Map.
Developing a Joomla 3.x Component using RAD FOF- Part 2: Front-end + demo - J...Peter Martin
One of the new feature since Joomla 3.2 is Rapid Application Development (RAD) framework.
A Joomla component is a PHP/MySQL web application that uses Joomla's framework. You can build your components on Joomla's framework and Joomla will take care of the database connection, the design (using templates), access levels, forms (JForms), etc. Using Joomla's framework saves you a lot of work and development time. However, it can be even faster!
Most Joomla components include the same functionality: In the front-end a list of records from the database hyperlinked to pages with details of each record individually. In the back-end the component list records from the database, with a link to a form where you can change the data and save.
Using the Rapid Application Development Framework (also known as FOF (Framework On Framework)) allows you to develop a component with common functionality with far fewer lines of code.
In this presentation, Peter shows how you can use Joomla's RAD to build a simple Joomla component to manage locations and categories and present those on the front-end to visitors on a Google Map.
Contents:
* Programming a simple front-end component using FOF
* Demo with programming, github & local web environment
Developing a Joomla 3.x Component using RAD FOF- Part 1: Back-end - Joomladay...Peter Martin
One of the new feature since Joomla 3.2 is Rapid Application Development (RAD) framework.
A Joomla component is a PHP/MySQL web application that uses Joomla's framework. You can build your components on Joomla's framework and Joomla will take care of the database connection, the design (using templates), access levels, forms (JForms), etc. Using Joomla's framework saves you a lot of work and development time. However, it can be even faster!
Most Joomla components include the same functionality: In the front-end a list of records from the database hyperlinked to pages with details of each record individually. In the back-end the component list records from the database, with a link to a form where you can change the data and save.
Using the Rapid Application Development Framework (also known as FOF (Framework On Framework)) allows you to develop a component with common functionality with far fewer lines of code.
In this presentation, Peter shows how you can use Joomla's RAD to build a simple Joomla component to manage locations and categories and present those on the front-end to visitors on a Google Map.
Contents:
* The Basics of FOF
* Programming a back-end component using FOF
Note: It *is* possible to attend this session without attending Part 2: Front-end After this session you should have an idea what FOF is and how to create your own back-end component using FOF.
Troubleshooting Joomla! problems - Joomladay Germany 2014Peter Martin
Blank screens, deprecated errors, missing Class errors, can't login, can't install, my website is slow, my website got hacked... We all have run into one or two of those. If not, other people have... If you don't believe me, just visit http://forum.joomla.org/ :-)
On the basis of the 10 most common problems seen in Joomla Forum, Peter will learn you to:
* identify a problem
* identify the real problem behind it
* solve that problem
* or get help quickly by asking the right questions
In the process you might learn something more about Joomla's Debug mode, .htaccess, phpMyAdmin, permissions, XAMPP, Akeeba Backup, Admin Tools, Google Chrome Inspect Element, FireFox Firebug, diff...
Information Technology is an integral part of our daily life. Have you ever wondered what happens under the hood when you visit a webpage? Or what OOP actually means?
In this presentation for Joomladay Germany 2014 in Cologne, Peter Martin explains common concepts like Operating System, Internet, Server, Website, Object Oriented Programming, Joomla in plain English.
Contents:
1. Computer
2. Operating System
3. Network
4. Internet
5. Server
6. Email
7. WWW
8. Website
9. OOP
10. Joomla
Linux Nijmegen - Webserver (LAMP stack) opzetten met VirtualbBox & VagrantPeter Martin
Veel webservers draaien op basis van LAMP (Linux, Apache, MySQL en PHP). Een LAMP stack is eenvoudig op te zetten. In deze presentatie wordt een LAMP stack opgezet in een virtuele omgeving mbv VirtualBox, Vagrant en een Vagrant Box.
Problemen oplossen in Joomla - Joomladagen 2014Peter Martin
Witte schermen, deprecated errors, missing Class errors, kan niet inloggen, kan niet installeren, mijn website is langzaam, mijn website is gehacked..." We hebben allemaal wel eens dergelijke problemen. En als je me niet gelooft, kijk gerust op http://forum.joomla.org/ In deze presentatie leert Peter je:
identificeren van een probleem
identificeren van het achterliggende probleem
het probleem op te lossen
of hulp te krijgen door de juiste vragen te stellen
En tijdens het probleem oplossen, leer je tevens iets over Joomla's debug modus, .htaccess, phpMyAdmin, XAMPP, Akeeba Backup, Admin Tools, Google Chrome Inspect Element, FireFox Firebug, diff...
Joomla 3 Component programmeren met RAD - Joomladagen 2014Peter Martin
Het Rapid Application Development (RAD) framework is een nieuw feature in Joomla 3.2.
Een Joomla component is een PHP/MySQL webapplicatie die gebruik maakt van Joomla's framework. In plaats van zelf een database connectie op te hoeven bouwen, kun je Joomla's database object aanspreken. Ook de vormgeving via templates, toegangsniveaus, opbouw van formulieren (JForms) kun je via Joomla's framework laten afhandelen. Dit scheelt veel werk en ontwikkeltijd. Toch kan het nog sneller!
De meeste Joomla componenten bevatten dezelfde functionaliteit:
In de front-end worden lijsten met gegevens uit de database getoond, met een hyperlink naar een pagina met detailweergave.
In de back-end worden vaak lijsten met gegevens uit de database getoond, met een hyperlink naar een formulier waarmee je de gegevens kunt wijzigen en opslaan.
Door gebruik van het Rapid Application Development framework (dat is gebaseerd op FOF (Framework On Framework) kun je die veelvoorkomende functionaliteit met veel minder regels code programmeren.
In deze presentatie laat Peter zien hoe je met RAD een eenvoudig Joomla component kunt bouwen om locaties & categorien te beheren en aan bezoekers (in combinatie met Google Maps) te tonen.
Component beschikbaar op: https://github.com/pe7er/db8locate
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
Neuro-symbolic (NeSy) AI is on the rise. However, simply machine learning on just any symbolic structure is not sufficient to really harvest the gains of NeSy. These will only be gained when the symbolic structures have an actual semantics. I give an operational definition of semantics as “predictable inference”.
All of this illustrated with link prediction over knowledge graphs, but the argument is general.
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
Connector Corner: Automate dynamic content and events by pushing a buttonDianaGray10
Here is something new! In our next Connector Corner webinar, we will demonstrate how you can use a single workflow to:
Create a campaign using Mailchimp with merge tags/fields
Send an interactive Slack channel message (using buttons)
Have the message received by managers and peers along with a test email for review
But there’s more:
In a second workflow supporting the same use case, you’ll see:
Your campaign sent to target colleagues for approval
If the “Approve” button is clicked, a Jira/Zendesk ticket is created for the marketing design team
But—if the “Reject” button is pushed, colleagues will be alerted via Slack message
Join us to learn more about this new, human-in-the-loop capability, brought to you by Integration Service connectors.
And...
Speakers:
Akshay Agnihotri, Product Manager
Charlie Greenberg, Host
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
1. Basis Linux
(aan de hand van LPIC-1)
Peter Martin, twitter: @pe7er
Linux User Group Nijmegen, 11 februari 2014
2. Overzicht Presentatie
● Introductie
● Topic 101:
System Architecture
● Topic 101.1–101.3
● Topic 102:
Linux Installation
and Package Management
● Topic 102.1–102.5
3. LPIC-1 – Junior Level Linux Certification
● Basisvaardigheden Linux:
● Werken op de command line
● Eenvoudige onderhoudstaken uitvoeren: gebruikers
ondersteunen, gebruikers toevoegen aan systeem,
backup & restore, shutdown & reboot
● Installeren en configureren van een werkstation (incl. X)
en aan LAN netwerk verbinden, of stand-alone PC via
modem aan het Internet.
● Distributie onafhankelijk
● Gecertificeerd door National Commission For
Certifying Agencies
5. LPIC-1 – Exam 101
● Topic 101: System Architecture
● Topic 102: Linux Installation and Package
Management
● Topic 103: GNU and Unix Commands
● Topic 104: Devices, Linux Filesystems, Filesystem
Hierarchy Standard
6. LPIC-1 – Exam 102
● Topic 105: Shells, Scripting and Data Management
● Topic 106: User Interfaces and Desktops
● Topic 107: Administrative Tasks
● Topic 108: Essential System Services
● Topic 109: Networking Fundamentals
● Topic 110: Security
7. Topic 101 + 102 van Exam 101
● Topic 101: System Architecture
● 101.1 Determine and configure hardware settings
● 101.2 Boot the system
● 101.3 Change runlevels and shutdown or reboot system
● Topic 102: Linux Installation and Package Management
● 102.1 Design hard disk layout
● 102.2 Install a boot manager
● 102.3 Manage shared libraries
● 102.4 Use Debian package management
● 102.5 Use RPM and YUM package management
10. 101.1 Determine and configure hardware settings (w-2)
Candidates should be able to determine and configure fundamental system
hardware.
●
Key Knowledge Areas:
● Enable and disable integrated peripherals.
● Configure systems with or without external peripherals such as keyboards.
● Differentiate between the various types of mass storage devices.
● Set the correct hardware ID for different devices, especially the boot device.
● Know the differences between coldplug and hotplug devices.
● Determine hardware resources for devices.
● Tools and utilities to list various hardware information (e.g. lsusb, lspci, etc.)
● Tools and utilities to manipulate USB devices
● Conceptual understanding of sysfs, udev, hald, dbus
● Terms and Utilities: /sys /proc /dev modprobe lsmod lspci lsusb
11. 101.1 Determine and configure hardware settings (w-2)
Opstarten van PC + besturingssysteem:
● BIOS – Basic Input/Output System
● Power On Self Test (POST)
● Datum/tijd
● Configuratie (boot order)
● Inladen bootroutine
● Master Boot Record (MBR)
● Inladen boot manager (Lilo/Grub)
● Inladen van kernel
● Aanmaken RAM disk voor “init”
● Inladen van allerlei software
12. 101.1 Determine and configure hardware settings (w-2)
● HAL - Hardware Abstraction Layer
(aka “hald” → HAL daemon)
● Intel® Centrino® Advanced-N 6200 → wlan0
● dbus
● D-Bus = inter-process communication (IPC) system.
Voornamelijk communicatie tussen componenten van Gnome, KDE,
XFCE
● udev
● automatic hardware discovery and initialization
● device manager voor Linux kernel
mounten van /dev/sda1 als bijv /dev/camera
13. 101.1 Determine and configure hardware settings (w-2)
● Sysfs = virtual filesystem = ~ “system filesystem”
● /sys → HAL’s database
● Procfs = proc filesystem = over “processes”
● /proc
● Device File = interface for device driver that appears
in a file system as if it were an ordinary file.
● /dev
– /dev/null
– /dev/random
14. 101.1 Determine and configure hardware settings (w-2)
ls – list files
● lsmod = list kernel modules
● lsusb = list usb devices
● lspci = list pci devices
16. 101.2 Boot the system (w-2)
Candidates should be able to guide the system
through the booting process.
● Key Knowledge Areas:
● Provide common commands to the boot loader and
options to the kernel at boot time.
● Demonstrate knowledge of the boot sequence from
BIOS to boot completion.
● Check boot events in the log files.
● Terms and Utilities: /var/log/messages dmesg BIOS
bootloader kernel init
20. 101.3 Change runlevels and shutdown or reboot system (w-3)
Candidates should be able to manage the runlevel of the system. This
objective includes changing to single user mode, shutdown or rebooting
the system.
Candidates should be able to alert users before switching run level and
properly terminate processes. This objective also includes setting the
default run level. It also includes basic feature knowledge of potential
replacements to init.
● Key Knowledge Areas:
● Set the default runlevel.
● Change between run levels including single user mode.
● Shutdown and reboot from the command line.
● Alert users before switching runlevels or other major system event.
● Properly terminate processes.
● Knowledge of basic features of systemd and Upstart
● Terms and Utilities: /etc/inittab shutdown init /etc/init.d telinit
21. 101.3 Change runlevels and shutdown or reboot system (w-3)
Runlevels – manier om systeem verschillend te gebruiken.
Runlevel bepaalt wat wel/niet wordt ingeladen
● /etc/inittab -> configuratie van runlevels & init process
● runlevels verschillen tussen distros!
● 0 – Halt
● 1 – single user mode (recovery)
● 2 – .deb default (GUI/txt)
● 3 – .rpm txt
● 4 – wildcard (kun je zelf bepalen)
● 5 – .rpm GUI
● 6 – Reboot
22. 101.3 Change runlevels and shutdown or reboot system (w-3)
● /etc/init.d/ -> scripts om services te laden
● bijv /etc/init.d/exim4
→ status / stop / start
● /etc/rc.d/ bevat folders met scripts voor runlevels
● rc.local → bij elke runlevel
● rc.sysinit → bij elke runlevel
● /etc/rc.d/rc1.d → scripts voor runlevel 1 (single user recover mode)
– Symbolic links naar scripts (Kill, Start)
● /etc/rc.d/rc2.d → scripts voor runlevel 2 (debian default)
– Symbolic links naar scripts
23. 101.3 Change runlevels and shutdown or reboot system (w-3)
● Wisselen tussen runlevels:
$ sudo init [runlevel nummer]
● telinit = init
● Shutdown / reboot
● shutdown -r now → nu reboot
● shutdown -h +5 → over 5 minuten shutdown
● shutdown -h 23:55 Some system maintenance
message
26. 102.1 Design hard disk layout (w-2)
Candidates should be able to design a disk partitioning
scheme for a Linux system.
● Key Knowledge Areas:
● Allocate filesystems and swap space to separate
partitions or disks.
● Tailor the design to the intended use of the system.
● Ensure the /boot partition conforms to the hardware
architecture requirements for booting.
● Knowledge of basic features of LVM
● Terms and Utilities: / (root) filesystem /var filesystem
/home filesystem swap space mount points partitions
27. 102.1 Design hard disk layout (w-2)
● Partitions / disks
● Filesystems
● Mount points
● mount
● /etc/fstab = file systems table, o.a. mountpoints bij startup
● SWAP space
● Superblock = meta info over filesysteem, soort “FAT”
● MBR – Master Boot Record
● LVM – logical volume manager for Linux kernel that
manages disk drives and similar mass-storage devices
→ volgens 3rd editie nog geen deel van examen
28. 102.1 Design hard disk layout (w-2)
● Opzet van Harddisk afhankelijk van:
● Grootte van diskruimte
● Grootte van het systeem
● Gebruik van systeem
● Hoe & waar backups
29. 102.1 Design hard disk layout (w-2)
●
Desktop
●
/boot/ 100MB
● swap (not mounted) swap size = 2x RAM
● Network workstation
●
/
●
/boot/
●
/home/ ->NFS, SMB, SSH. Elke gebruiker eigen /home/subfolder/
●
swap (not mounted)
● Server
●
/
● /boot/
●
/home/
●
/opt/
●
/usr/ bijv /usr/bin/apache -> zelfde versie voor alle gebruikers
●
/var/
●
swap (not mounted)
31. 102.2 Install a boot manager (w-2)
Candidates should be able to select, install and
configure a boot manager.
● Key Knowledge Areas:
● Providing alternative boot locations and backup boot
options.
● Install and configure a boot loader such as GRUB
Legacy.
● Perform basic configuration changes for GRUB 2.
● Interact with the boot loader
● Terms and Utilities: /boot/grub/menu.lst grub-install
MBR superblock
32. 102.2 Install a boot manager (w-2)
● Lilo (“Linux Loader”)
● bootloader & command
● Grub (GRand Unified Bootloader)
● /boot/grub/menu.lst (grub1)
● /boot/grub/grub.cfg (grub2)
● Grub-install
● MBR backup
● -> 1e hd bepalen
$ mount
● Bit-voor-bit copy dmv disk dump:
$ sudo dd if=/dev/sda of=/root/backup.mbr bs=512 count=1
34. 102.3 Manage shared libraries (w-1)
Candidates should be able to determine the shared
libraries that executable programs depend on and
install them when necessary.
● Key Knowledge Areas:
● Identify shared libraries
● Identify the typical locations of system libraries
● Load shared libraries
● Terms and Utilities: ldd ldconfig /etc/ld.so.conf
LD_LIBRARY_PATH
36. 102.4 Use Debian package management (w-3)
Candidates should be able to perform package
management using the Debian package tools.
● Key Knowledge Areas:
● Install, upgrade and uninstall Debian binary packages.
● Find packages containing specific files or libraries which
may or may not be installed.
● Obtain package information like version, content,
dependencies, package integrity and installation status
(whether or not the package is installed).
● Terms and Utilities: /etc/apt/sources.list dpkg dpkg-
reconfigure apt-get apt-cache aptitude
38. 102.5 Use RPM and YUM package management (w-3)
Candidates should be able to perform package
management using RPM and YUM tools.
● Key Knowledge Areas:
● Install, re-install, upgrade and remove packages using
RPM and YUM.
● Obtain information on RPM packages such as version,
status, dependencies, integrity and signatures.
● Determine what files a package provides, as well as
find which package a specific file comes from.
● Terms and Utilities: rpm rpm2cpio /etc/yum.conf
/etc/yum.repos.d/ yum yumdownloader