免费Google地图API使用说明(转)

转自:http://www.cnblogs.com/mypig/articles/1936154.html
01事件监视
02  
03GEvent.addListener用来注册事件监视器,在这个例子中,在用户移动或拖拽地图后,输出地图中心点的经/纬.
04  
05  
06var map = new GMap(document.getElementById("map"));
07GEvent.addListener(map, "moveend", function() {
08var center = map.getCenterLatLng();
09var latLngStr = '(' + center.y + ', ' + center.x + ')';
10document.getElementById("message").innerHTML = latLngStr;
11});
12map.centerAndZoom(new GPoint(-122.141944, 37.441944), 4);

 

view sourceprint?
1显示信息浮窗
2  
3这个范例显示一个指向地图中心点的"Hello world"信息浮窗,这里信息浮窗显示在指向点的上面,而实际上,信息窗能在地图的任何地方显示.
4  
5  
6var map = new GMap(document.getElementById("map"));
7map.centerAndZoom(new GPoint(-122.141944, 37.441944), 4);
8map.openInfoWindow(map.getCenterLatLng(),
9document.createTextNode("Hello world"));

 

view sourceprint?
01地图标注
02  
03本范例通过创建10个随机的标注和折线来说明地图标注的用法.
04  
05  
06// Center the map on Palo Alto
07var map = new GMap(document.getElementById("map"));
08map.addControl(new GSmallMapControl());
09map.addControl(new GMapTypeControl());
10map.centerAndZoom(new GPoint(-122.141944, 37.441944), 4);
11  
12// Add 10 random markers in the map viewport using the default icon
13var bounds = map.getBoundsLatLng();
14var width = bounds.maxX - bounds.minX;
15var height = bounds.maxY - bounds.minY;
16for (var i = 0; i < 10; i++) {
17var point = new GPoint(bounds.minX + width * Math.random(),
18bounds.minY + height * Math.random());
19var marker = new GMarker(point);
20map.addOverlay(marker);
21}
22  
23// Add a polyline with 4 random points. Sort the points by longitude so that
24// the line does not intersect itself.
25var points = [];
26for (var i = 0; i < 5; i++) {
27points.push(new GPoint(bounds.minX + width * Math.random(),
28bounds.minY + height * Math.random()));
29}
30points.sort(function(p1, p2) { return p1.x - p2.x; });
31map.addOverlay(new GPolyline(points));

 

view sourceprint?
01响应用户点击
02  
03本范例在用户点击地图时,在相应的点创建一个标记,用户点击标记时,移除这个标记.
04  
05  
06var map = new GMap(document.getElementById("map"));
07map.addControl(new GSmallMapControl());
08map.addControl(new GMapTypeControl());
09map.centerAndZoom(new GPoint(-122.141944, 37.441944), 4);
10  
11GEvent.addListener(map, 'click', function(overlay, point) {
12if (overlay) {
13map.removeOverlay(overlay);
14} else if (point) {
15map.addOverlay(new GMarker(point));
16}
17});

 

view sourceprint?
01在标记上显示信息浮窗
02  
03在这个例子中,点击每一个标记,就会在标记上面显示一个自定义的信息浮窗.
04  
05  
06// Center the map on Palo Alto
07var map = new GMap(document.getElementById("map"));
08map.addControl(new GSmallMapControl());
09map.addControl(new GMapTypeControl());
10map.centerAndZoom(new GPoint(-122.141944, 37.441944), 4);
11  
12// Creates a marker whose info window displays the given number
13function createMarker(point, number) {
14var marker = new GMarker(point);
15  
16// Show this marker's index in the info window when it is clicked
17var html = "Marker #<b>" + number + "</b>";
18GEvent.addListener(marker, "click", function() {
19marker.openInfoWindowHtml(html);
20});
21  
22return marker;
23}
24  
25// Add 10 random markers in the map viewport
26var bounds = map.getBoundsLatLng();
27var width = bounds.maxX - bounds.minX;
28var height = bounds.maxY - bounds.minY;
29for (var i = 0; i < 10; i++) {
30var point = new GPoint(bounds.minX + width * Math.random(),
31bounds.minY + height * Math.random());
32var marker = createMarker(point, i + 1);
33map.addOverlay(marker);
34}

 

view sourceprint?
01创建图标
02  
03创建一种新图标,就像在Google Ride Finder上面使用的迷你标记一样.必须给图标指定前景图片、阴影图片、图标在地图上的点和信息浮窗在图标上的点.
04  
05  
06// Create our "tiny" marker icon
07var icon = new GIcon();
08icon.image = "http://labs.google.com/ridefinder/images/mm_20_red.png";
09icon.shadow = "http://labs.google.com/ridefinder/images/mm_20_shadow.png";
10icon.iconSize = new GSize(12, 20);
11icon.shadowSize = new GSize(22, 20);
12icon.iconAnchor = new GPoint(6, 20);
13icon.infoWindowAnchor = new GPoint(5, 1);
14  
15// Center the map on Palo Alto
16var map = new GMap(document.getElementById("map"));
17map.addControl(new GSmallMapControl());
18map.addControl(new GMapTypeControl());
19map.centerAndZoom(new GPoint(-122.141944, 37.441944), 4);
20  
21// Creates one of our tiny markers at the given point
22function createMarker(point) {
23var marker = new GMarker(point, icon);
24map.addOverlay(marker);
25GEvent.addListener(marker, "click", function() {
26marker.openInfoWindowHtml("You clicked me!");
27});
28}
29  
30// Place the icons randomly in the map viewport
31var bounds = map.getBoundsLatLng();
32var width = bounds.maxX - bounds.minX;
33var height = bounds.maxY - bounds.minY;
34for (var i = 0; i < 10; i++) {
35createMarker(new GPoint(bounds.minX + width * Math.random(),
36bounds.minY + height * Math.random()));
37}

 

view sourceprint?
01使用图标类
02  
03多数情况下,使用的图标可能前景图片不同,可是形状和阴影是一样的,达到这种效果最简单的方法是使用GIcon类的copy方法来构造.这样可以将一个Icon对象的所有属性复制到一个新的Icon对象中.
04  
05  
06// Create a base icon for all of our markers that specifies the shadow, icon
07// dimensions, etc.
08var baseIcon = new GIcon();
09baseIcon.shadow = "http://www.google.com/mapfiles/shadow50.png";
10baseIcon.iconSize = new GSize(20, 34);
11baseIcon.shadowSize = new GSize(37, 34);
12baseIcon.iconAnchor = new GPoint(9, 34);
13baseIcon.infoWindowAnchor = new GPoint(9, 2);
14baseIcon.infoShadowAnchor = new GPoint(18, 25);
15  
16// Center the map on Palo Alto
17var map = new GMap(document.getElementById("map"));
18map.addControl(new GSmallMapControl());
19map.addControl(new GMapTypeControl());
20map.centerAndZoom(new GPoint(-122.141944, 37.441944), 4);
21  
22// Creates a marker whose info window displays the letter corresponding to
23// the given index
24function createMarker(point, index) {
25// Create a lettered icon for this point using our icon class from above
26var letter = String.fromCharCode("A".charCodeAt(0) + index);
27var icon = new GIcon(baseIcon);
28icon.image = "http://www.google.com/mapfiles/marker" + letter + ".png";
29var marker = new GMarker(point, icon);
30  
31// Show this marker's index in the info window when it is clicked
32var html = "Marker <b>" + letter + "</b>";
33GEvent.addListener(marker, "click", function() {
34marker.openInfoWindowHtml(html);
35});
36  
37return marker;
38}
39  
40// Add 10 random markers in the map viewport
41var bounds = map.getBoundsLatLng();
42var width = bounds.maxX - bounds.minX;
43var height = bounds.maxY - bounds.minY;
44for (var i = 0; i < 10; i++) {
45var point = new GPoint(bounds.minX + width * Math.random(),
46bounds.minY + height * Math.random());
47var marker = createMarker(point, i);
48map.addOverlay(marker);
49}

 

view sourceprint?
01在地图上使用XML和异步RPC ("AJAX")
02  
03在这个范例中,我们下载一个静态文件("data.xml"),这个XML文件中包含一系列经/纬坐标,当下载完成后,读取这个XML文件并为每一个坐标在地图上创建一个标记.
04  
05  
06// Center the map on Palo Alto
07var map = new GMap(document.getElementById("map"));
08map.addControl(new GSmallMapControl());
09map.addControl(new GMapTypeControl());
10map.centerAndZoom(new GPoint(-122.141944, 37.441944), 4);
11  
12// Download the data in data.xml and load it on the map. The format we
13// expect is:
14// <markers>
15//   <marker lat="37.441" lng="-122.141"/>
16//   <marker lat="37.322" lng="-121.213"/>
17// </markers>
18var request = GXmlHttp.create();
19request.open("GET", "data.xml", true);
20request.onreadystatechange = function() {
21if (request.readyState == 4) {
22var xmlDoc = request.responseXML;
23var markers = xmlDoc.documentElement.getElementsByTagName("marker");
24for (var i = 0; i < markers.length; i++) {
25var point = new GPoint(parseFloat(markers[i].getAttribute("lng")),
26parseFloat(markers[i].getAttribute("lat")));
27var marker = new GMarker(point);
28map.addOverlay(marker);
29}
30}
31}
32request.send(null);

 

view sourceprint?
001API 概要
002  
003  
004GMap类
005  
006GMap的每一个实例表现为页面上的一个地图,可以创建这个类的多个实例 每个地图被包含在一个container之中,比如一个DIV标签,除非明确指定,地图将使用相应container的大小.
007  
008GMap类提供了操作地图点(中心和缩放度)和添加删除标记(比如GMarker和GPolyline实例)和方法. 同时也提供了一个打开"信息浮窗"的方法,地图上同时只能有一个信息浮窗.
009  
010更多信息请参看GMap类参考
011  
012  
013  
014事件
015  
016利用事件监视器,你可以在程序中加入动态的内容,每个实例提供一些指定的事件,你的程序可以利用静态方法GEvent.addListener或GEvent.bind监视这些事件. 例如,以下代码片断在每次用户点击地图的时候显示一个警告:
017  
018  
019var map = new GMap(document.getElementById("map"));
020GEvent.addListener(map, "click", function() {
021alert("You clicked the map");
022});
023GEvent.addListener使用一个函数作为第三个参数,这个函数作为事件处理器,在事件被触发时运行. 如果想绑定一个对象的方法到事件,可以使用GEvent.bind.例如:
024  
025  
026function MyApplication() {
027this.counter = 0;
028this.map = new GMap(document.getElementById("map"));
029GEvent.bind(this.map, "click", this, this.onMapClick);
030}
031  
032MyApplication.prototype.onMapClick() {
033this.counter++;
034alert("You have clicked the map " + this.counter +
035this.counter == 1 ?" time.":" times.");
036}
037  
038var application = new MyApplication();
039  
040  
041信息浮窗
042  
043Map类有一个信息浮窗,可以在地图上以浮动窗口模式在地图上显示HTML内容.
044  
045基本的浮动窗口方法是openInfoWindow,这个方法以一个点和一个HTML节点作为参数,这个HTML节点被添加到信息浮窗容器里面,并显示在相应点处.
046  
047openInfoWindowHtml差不多,但是它使用HTML字符串作为参数.openInfoWindowXslt则利用XML节点和XSLT文档的URL地址来生成信息浮窗内容,如果该XSLT文档还没有被下载,则会自动异步下载此文件.
048  
049如果需要在标记上显示信息浮窗,你可以传递第三个参数(可选)给出窗口顶端和给定点位置的像素差. 比如你的标记高度是10px,你可以使用GSize(0,-10)作第三个参数.
050  
051GMarker类还提供了openInfoWindow方法用来处理像素值内容,所以不用担心在程序中计算像素的问题.
052  
053  
054  
055标注
056  
057标注是一些绑定到地理坐标的对象,当移动、缩放地图或切换模式(比如从地图到卫星图)时,标注也会跟着变化.
058  
059Maps API提供两种标注:标记(地图上的图标)和折线(根据地理位置绘制的折线)
060  
061  
062图标和标记
063  
064TheGMarker构造函数使用一个图标和一个点作为参数,并提供一些类似"点击"的事件,看这个创建标记的例子
065  
066创建标记最困难的地方是指定图标,复杂在于一个图标需要几个不同的图片构成.
067  
068每一个图标至少都有一个前景图片和一个阴影图片,阴影必须是前景图的45度视角的形状,并且左下角和前景图的左下角重叠,还必须是24-bit PNG灰度图片,才能刚好使图标看起来像站在地图上一样.
069  
070  
071TheGIcon需要指定图标使用的图片文件的大小以便以合适的大小显示这些图片,一下是指定一个图标的最基本的代码:
072  
073  
074var icon = new GIcon();
075icon.image = "http://www.google.com/mapfiles/marker.png";
076icon.shadow = "http://www.google.com/mapfiles/shadow50.png";
077icon.iconSize = new GSize(20, 34);
078icon.shadowSize = new GSize(37, 34);
079TheGIcon类提供有超过7个的属性必须设置以保证图标在浏览器上的兼容性和功能. 比如imageMap属性指定图标不透明部分的形状,如果你没有设置这个属性,在Firefox/Mozilla浏览器上,整个图标(包括透明部分)都能被点击. 看这个GIcon类参考了解更多信息
080  
081  
082  
083折线
084  
085GPolyline构造函数使用一组地理点最为参数,你也能指定颜色、线宽和透明度 颜色采用老的HTML样式,比如"#ff0000".GPolyline不支持直接使用颜色名字. 例如以下代码会创建一个10像素宽的红色线段:
086  
087  
088var polyline = new GPolyline([new GPoint(-122.1419, 37.4419),
089new GPoint(-122.1519, 37.4519)],
090"#ff0000", 10);
091map.addOverlay(polyline);
092  
093在IE浏览器中,我们用VML来绘制折线,而在其他的浏览器之中,我们使用Google服务器上的图片,并在地图变化时重新刷新图片.
094  
095  
096  
097控件
098  
099addControl用来添加控件,Maps API可以让你在地图上使用如下控件:
100  
101  
102GLargeMapControl在Google Map中使用的大缩放/定位控件
103GSmallMapControl在Google Map中使用的小缩放/定位控件
104GSmallZoomControl一个小的缩放控件(不能定位),用在小窗口中显示驾驶方向
105GMapTypeControl地图类型切换控件(如:地图和卫星图)
106例如,要在地图上添加一个缩放/定位控件,你可以在地图初始化时使用如下代码:
107  
108  
109map.addControl(new GLargeMapControl());
110这样,控件就会被添加到地图的左上角
111  
112  
113  
114XML和RPC
115  
116Google Maps API提供了一个创建XmlHttpRequest对象的方法,当前可以在IE, Firefox, and Safari上运行正常,如下:
117  
118  
119var request = GXmlHttp.create();
120request.open('GET', "myfile.txt", true);
121request.onreadystatechange = function() {
122if (request.readyState == 4) {
123alert(request.responseText);
124}
125}
126request.send(null);
127你还可以使用静态方法GXml.parse来解析一个XML文档,使用XML字符串作为参数,这个方法对所有的浏览器兼容. 如果本地浏览器不支持XML解析,则会采用一个基于JavaScript的解析器,可是不能保证这个解析器一定能正常的解析.
128  
129注意Google Maps API不需要使用XML或XmlHttpRequest因为这是一个纯JavaScript/DHTML的API.

 

 

google: api

http://code.google.com/intl/zh-CN/apis/maps/index.html 

Google:demo

http://www.google.com/apis/maps/demo/

地理学习小游戏

五岳名山您一定听说过,但您还记得它们分别在哪里吗? 在这个小游戏中,您可以根据给出地理名词,将对应的标注拖拽到地图中恰当的位置上。当您完成后, 请点击“评判”,程序将自动判断您的回答是否正确,并给出成绩。同时,在查看答案的模式下, 点击标注还将弹出该景点的介绍。多练习几次,Google 地图 API 定能让您对它们的位置了如指掌!


多点测距尺

想知道地球上任意两个地点距离多远?想知道您上班走了多远的路?有了Google 地图 API,您可以 轻而易举地给地图添加标注和路径,并实现自己的“测距尺”。在这个例子中,您还可以随意地修改现有路径, 甚至将“测距尺”包装成自定义的 Google 地图 API控件,和别人分享。


神奇的放大镜

这个放大镜可不是简单地将地图的局部放大:透过它,您能够看到地图上更多的细节。事实上,这是通过 两个独立的、显示不同缩放级别的地图控件实现的。只有想不到,没有做不到。如果您熟悉 javascript, Google 地图 API 还有很多新奇的功能等待您的发现!

开发人员指南:

查看示例

 

http://code.google.com/intl/zh-CN/apis/maps/documentation/premier/guide.html#MapsJS

开始编写 hello world:

http://code.google.com/intl/zh-CN/apis/maps/documentation/javascript/tutorial.html

 

查看示例

 

查看示例

 

Google Maps JavaScript API V3 演示库

http://code.google.com/intl/zh-CN/apis/maps/documentation/javascript/demogallery.html

 

地图叠加层

http://code.google.com/intl/zh-CN/apis/maps/documentation/javascript/overlays.html

 

 

转载于:https://www.cnblogs.com/millen/archive/2011/04/19/2020500.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/261468.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

双栈共享存储空间(C++代码实现)

理论部分 理论来源&#xff1a;b站up主:跟懒猫老师快乐数据结构 C代码 #include<iostream> using namespace std; const int STACKSIZE 6; //两栈共享存储空间编程 //使用类模板编程 template<class DataType> class BothStack { private:DataType *data;//属性…

毕业三年

2013年6月&#xff0c;毕业整整3年了。曾经的同伴&#xff0c;有人创业了&#xff0c;有人升职加薪&#xff0c;也有人职场失利。而我&#xff0c;做了2年多的独立开发者。 在大学的时候我学的是.net&#xff0c;在毕业前还去考了微软的认证&#xff0c;考过了&#xff0c;但考…

Muduo 网络编程示例之五: 测量两台机器的网络延迟

Muduo 网络编程示例之五&#xff1a; 测量两台机器的网络延迟 陈硕 (giantchen_AT_gmail) Blog.csdn.net/Solstice t.sina.com.cn/giantchen 这是《Muduo 网络编程示例》系列的第五篇文章。 Muduo 全系列文章列表&#xff1a; http://blog.csdn.net/Solstice/category/779646.…

数据结构表达式求值(C++)

实验原理 代码思路 使用两个顺序栈编程&#xff0c;一个顺序栈用来存储操作数&#xff0c;一个顺序栈用来存储操作符 关键为表达式求值函数的编写 对该函数&#xff0c;循环结束条件为栈顶元素为’#’,且读入的字符也为’#’ 循环体 &#xff08;1&#xff09;判断是否为操作…

中国互联网大佬江湖拼什么?拼财力拼出身拼前景拼造势

创业者千千万&#xff0c;大佬的椅子却有限。 马云、李彦宏、马化腾、雷军、周鸿祎、丁磊、张朝阳……大浪淘沙之中&#xff0c;他们挺住了&#xff0c;前进了&#xff0c;成功了。纵观互联网大佬修炼过程&#xff0c;虽然有机缘巧合&#xff0c;背后仍然有道可依。 表面风平浪…

Javascript中正则表达式的全局匹配模式

先看一道JavaScript题目&#xff0c;据说是国内某知名互联网企业的JavaScript笔试题&#xff0c;如果对正则的全局匹配模式不了解的话可能会对下面的输出结果感到疑惑。 View Code varstr "123#abc";varre /abc/ig;console.log(re.test(str)); //输出tureconsole.lo…

捕捉所有异常_详解Java中异常的分类

下面介绍几种常见的异常类型&#xff0c;便于在出错时对程序进行查错&#xff1a;&#xff08;1&#xff09;Exception 各种异常的根类如果你不知道将发生的异常集体属于哪&#xff0c;而可以肯定种这个地方会出现异常时&#xff0c;可以把异常类型定义为Exception。&#xff0…

2ASK调制与解调(包含maltab代码)

实验原理 实验代码 信噪比为20db时代码: clear all; close all; %%%%%%% parameter settings %%%%% Rb 1000;%比特率 Rs 1000;%符号率 Fs 10000;%采样频率 N 100000;%原始消息信号的长度 UpSampleRate Fs/Rs; % 一个符号周期内采样点数 RollOff 0.25; Spa…

数据结构银行排队问题

实验任务 银行排队模拟程序功能 假设某银行有四个窗口对外接待客户,从早晨银行开门起不断有客户进入银行。由于每个窗口只能接待一个客户&#xff0c;因此在客户人数众多时需在每个窗口前顺次排队&#xff0c;对于刚进入银行的客户&#xff0c;如果某个窗口的业务员正在空闲&a…

通讯中断 pc_S7程序RFID 与PC连接区别FB 65/UDT65

同样是使用使用FB65但RFID与PC的连接DB用法有一定的区别:首先说一下什么是FB65:通过TCP和ISO on TCP使用两个通信伙伴都调用FB 65 "TCON"来设置和建立通信连接。在这些参数中&#xff0c;您要指定哪个伙伴是主动通信传输点、哪个伙伴是被动通信传输点。设置并建立连接…

JavaScript 设计模式之构造函数模式

一、构造函数模式概念解读 1.构造函数模式概念文字解读 构造函数用于创建特定类型的对象——不仅声明了使用的对象&#xff0c;构造函数还可以接受参数以便第一次创建对象的时候设置对象的成员值。你可以自定义自己的构造函数&#xff0c;然后在里面声明自定义类型对象的属性或…

列表异步线程加载图片

手机客户端以列表形式展示数据是非常常见的一种方式。然而列表中要显示图片&#xff08;比如&#xff1a;头像&#xff09;就要采用异步线程加载的方式&#xff0c;这样做是为了防止加载图片数据的时候&#xff0c;花费时间过长&#xff0c;阻塞UI线程&#xff0c;从而达到保持…

matlab连续卷积动画实现(gui编程)

一.代码运行结果 二.代码 function varargout tianqi(varargin) % TIANQI MATLAB code for tianqi.fig % TIANQI, by itself, creates a new TIANQI or raises the existing % singleton*. % % H TIANQI returns the handle to a new TIANQI or the handle t…

Ubuntu GNOME 15.10升级16.4LTS

为什么80%的码农都做不了架构师&#xff1f;>>> 当Ubuntu GNOME官方已经发送16.4后&#xff0c;执行以下命令 sudo do-release-upgrade 显示没有新系统更新 在网上找到另一种方法是执行以下命令&#xff1a; sudo ppa-purge ppa:gnome3-team/gnome3-staging sudo p…

matplotlib plot 分组_小白学 Python 数据分析(16):Matplotlib(一)坐标系

人生苦短&#xff0c;我用 Python前文传送门&#xff1a;小白学 Python 数据分析(1)&#xff1a;数据分析基础小白学 Python 数据分析(2)&#xff1a;Pandas (一)概述小白学 Python 数据分析(3)&#xff1a;Pandas (二)数据结构 Series小白学 Python 数据分析(4)&#xff1a;Pa…

2016-04-29 二分查找的面试题

为什么80%的码农都做不了架构师&#xff1f;>>> 1.面试题 例如&#xff1a; ip计算后的值&#xff1d;53文本内容&#xff1a;1,100,北京 101,1000,上海 1001,3001,广州 ...求ip53对应的省份2.代码如下&#xff1a; #!/usr/bin/python # coding: utf8def ip_find(i…

gettype拿不到值_王者荣耀:被低估的强势打野,就是这位拿大锤子的阿姨!

王者峡谷的小伙伴你们好&#xff0c;今天就为你们推荐一下这位野区女霸主钟无艳&#xff0c;不仅高伤害而且操作简单&#xff01;版本更新在5月14日版本更新中&#xff0c;钟无艳的三个技能都被加强了&#xff0c;所有的蓝耗都被固定&#xff0c;不再随技能等级的成长值&#x…

【笔记】MATLAB中的图形(2)

三维作图 1、mesh(z)语句 mesh(z)语句可以给出矩阵z元素的三维消隐图&#xff0c;网络表面由z坐标点定义&#xff0c;与前面叙述的x-y平面的线格相同&#xff0c;图形由临近的点连接而成。它可用来显示用其他方式难以输出的包含大量数据的大型矩阵&#xff0c;也可以用来绘制z变…

Kindeditor放置两个调用readonly错误

开始 需要调用Kindeditor中的readonly的方法&#xff0c;但是一直提示edit is undefined 而editor.readonly(true)又只对第一个对象有效 所以只能换换形式&#xff0c;干脆将下面的kindeditor拿上来 虽然是满足自己这个需求&#xff0c;但是真正的原因解决办法&#xff0c;还是…

acl在内核里的位置_Linux 进程在内核眼中是什么样子的?

本篇算是进程管理的的揭幕篇&#xff0c;简单介绍一个进程在内核眼里的来龙去脉&#xff0c;为接下来的进程创建&#xff0c;进程调度&#xff0c;进程管理等篇章做好学习准备。从程序到进程再到内核啥是程序&#xff0c;啥是进程&#xff0c;一张图可以给我们解释&#xff1a;…