<html>
<head>
    <base href="https://wiki.asterisk.org/wiki">
            <link rel="stylesheet" href="/wiki/s/2042/1/7/_/styles/combined.css?spaceKey=AST&amp;forWysiwyg=true" type="text/css">
    </head>
<body style="background: white;" bgcolor="white" class="email-body">
<div id="pageContent">
<div id="notificationFormat">
<div class="wiki-content">
<div class="email">
    <h2><a href="https://wiki.asterisk.org/wiki/display/AST/Asterisk+Architecture%2C+The+Big+Picture">Asterisk Architecture, The Big Picture</a></h2>
    <h4>Page <b>edited</b> by             <a href="https://wiki.asterisk.org/wiki/display/~lmadsen">Leif Madsen</a>
    </h4>
        <div id="versionComment">
        <b>Comment:</b>
        Add a title to the tip.<br />
    </div>
        <br/>
                         <h4>Changes (2)</h4>
                                 
    
<div id="page-diffs">
                    <table class="diff" cellpadding="0" cellspacing="0">
    
            <tr><td class="diff-snipped" >...<br></td></tr>
            <tr><td class="diff-unchanged" >From a logistical standpoint, these modules are typically files with a *.so* file extension, which live in the Asterisk modules directory (which is typically */usr/lib/asterisk/modules*). When Asterisk starts up, it loads these files and adds their functionality to the system. <br> <br></td></tr>
            <tr><td class="diff-deleted-lines" style="color:#999;background-color:#fdd;text-decoration:line-through;">{tip} <br> <br>A Plethora of Modules <br> <br></td></tr>
            <tr><td class="diff-added-lines" style="background-color: #dfd;">{tip:title=A Plethora of Modules} <br></td></tr>
            <tr><td class="diff-unchanged" >Take just a minute and go look at the Asterisk modules directory on your system. You should find a wide variety of modules. A typical Asterisk system has over one hundred fifty different modules\! <br>{tip} <br></td></tr>
            <tr><td class="diff-snipped" >...<br></td></tr>
    
            </table>
    </div>                            <h4>Full Content</h4>
                    <div class="notificationGreySide">
        <p>Before we dive too far into the various types of modules, let's first take a step back and look at the overall architecture of Asterisk.</p>

<p> <span class="image-wrap" style=""><img src="/wiki/download/attachments/4817479/bigpicture.png?version=1&amp;modificationDate=1281467366282" width="300" style="border: 0px solid black" /></span></p>

<p>Asterisk Architecture</p>

<p>We need to add CEL and Bridge modules to this picture, and take CLI and Manager out for now</p>

<p>The heart of any Asterisk system is the <b>core</b>. The PBX core is the essential component that takes care of bridging calls. The core also takes care of other items like reading the configuration files and loading the other modules. We'll talk more about the core below, but for now just remember that all the other modules connect to it.<br/>